diff --git a/.graphlemon/runs/773a7a08-b295-4ba3-b506-196a21403d8b/sdd.md b/.graphlemon/runs/773a7a08-b295-4ba3-b506-196a21403d8b/sdd.md
new file mode 100644
index 0000000..f1dfcfd
--- /dev/null
+++ b/.graphlemon/runs/773a7a08-b295-4ba3-b506-196a21403d8b/sdd.md
@@ -0,0 +1,10 @@
+The graphlemon Work Node (planner) workflow completed. It produced an SDD for fixing the "Planner 产出总览" panel bug in frontend/app.js: clicking a doc/code artifact list item currently does nothing because renderArtifactSummaryList() renders bare
elements with no data-* attributes or click handlers.
+
+Design (reuses the existing, working v_artifact_browser / c_artifact_get mechanism, no new preview logic):
+1. Add data-artifact-id to each , wire a click handler in mountArtifactsOverviewPanel() to navigate to #/artifacts/.
+2. Add one new route regex ARTIFACT_DETAIL_RE (#/artifacts/:id), matching the existing TASK_DETAIL_RE/SKILL_AUDIT_RE pattern.
+3. Give mountArtifactBrowser() an optional initialArtifactId param, feeding the existing selectedArtifactId fallback logic (which already handles invalid/missing ids gracefully).
+
+Explicitly out of scope: backend changes, generic query-string routing, changes to "查看全部" links, filter presets.
+
+Scoped as a single Development Unit (DU-1) since the three edits only have value together. Test plan: a stdlib Python structural-assertion test against frontend/app.js text (repo has no JS test framework/build step) plus a manual browser walkthrough for actual click behavior. The planner's self-review found no blocking unknowns — ready to hand off to the Coder stage.
\ No newline at end of file