sdd.md 1.23 KB

The planner workflow (graphlemon Work Node) completed. It took the approved PRD ("修复 /#/skills 页面点击某个 skill 后不显示真实内容的 bug") and produced a full SDD for a single Development Unit:

  • Root cause: src/skill_query.py only reads DB tables (skill, skill_iteration); nothing reads the real skills/<skill_id>/SKILL.md files on disk that a recent migration created.
  • Fix scope: add get_skill_content() to skill_query.py (with SkillContentMissingError and two-layer path-traversal protection reusing skill_update._skill_file_path()), a new GET /api/skills/:skill_id/content endpoint in backend_server.py, and a new "Skill 内容" panel in frontend/app.js's skill audit page — plain <pre class="code"> text, no Markdown/highlighting deps.
  • Tests: 7 new cases across test_skill_query.py and test_backend_server.py, including two path-traversal sub-cases; full python3 -m unittest discover -s src suite must stay green.
  • Explicitly out of scope: no changes to skill_update.py, no schema/migration changes, no single-file preview of support files.

This SDD artifact is ready to hand off to the Coder node for implementation. No further action was taken since this is the planner-stage deliverable.