sillyspec 3.20.2 → 3.20.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/.claude/skills/sillyspec-archive/SKILL.md +1 -5
  2. package/.claude/skills/sillyspec-auto/SKILL.md +2 -8
  3. package/.claude/skills/sillyspec-brainstorm/SKILL.md +1 -28
  4. package/.claude/skills/sillyspec-commit/SKILL.md +3 -4
  5. package/.claude/skills/sillyspec-continue/SKILL.md +4 -5
  6. package/.claude/skills/sillyspec-doctor/SKILL.md +3 -12
  7. package/.claude/skills/sillyspec-execute/SKILL.md +2 -15
  8. package/.claude/skills/sillyspec-explore/SKILL.md +1 -14
  9. package/.claude/skills/sillyspec-plan/SKILL.md +36 -5
  10. package/.claude/skills/sillyspec-propose/SKILL.md +0 -4
  11. package/.claude/skills/sillyspec-quick/SKILL.md +1 -5
  12. package/.claude/skills/sillyspec-resume/SKILL.md +66 -23
  13. package/.claude/skills/sillyspec-scan/SKILL.md +1 -5
  14. package/.claude/skills/sillyspec-state/SKILL.md +8 -8
  15. package/.claude/skills/sillyspec-status/SKILL.md +1 -5
  16. package/.claude/skills/sillyspec-verify/SKILL.md +1 -5
  17. package/.claude/skills/sillyspec-workspace/SKILL.md +3 -11
  18. package/.sillyspec/changes/archive/2026-04-08-derive-state/design.md +97 -0
  19. package/.sillyspec/changes/archive/2026-04-08-derive-state/plan.md +51 -0
  20. package/.sillyspec/changes/archive/2026-04-08-derive-state/proposal.md +29 -0
  21. package/.sillyspec/changes/archive/2026-04-08-derive-state/requirements.md +34 -0
  22. package/.sillyspec/changes/archive/2026-04-08-derive-state/tasks.md +13 -0
  23. package/.sillyspec/changes/archive/2026-04-08-derive-state/verify-result.md +43 -0
  24. package/.sillyspec/changes/auto-mode/design.md +50 -0
  25. package/.sillyspec/changes/auto-mode/proposal.md +19 -0
  26. package/.sillyspec/changes/auto-mode/requirements.md +21 -0
  27. package/.sillyspec/changes/auto-mode/tasks.md +7 -0
  28. package/.sillyspec/changes/brainstorm-archive/2026-04-05-dashboard-design.md +206 -0
  29. package/.sillyspec/changes/brainstorm-archive/2026-04-05-unified-docs-design.md +199 -0
  30. package/.sillyspec/changes/dashboard/design.md +219 -0
  31. package/.sillyspec/changes/dashboard/design.md.braindraft +206 -0
  32. package/.sillyspec/changes/run-command-design/design.md +1230 -0
  33. package/.sillyspec/changes/unified-docs-design/design.md +199 -0
  34. package/.sillyspec/docs/sillyspec/scan/.gitkeep +0 -0
  35. package/.sillyspec/knowledge/INDEX.md +8 -0
  36. package/.sillyspec/knowledge/uncategorized.md +3 -0
  37. package/.sillyspec/plans/2026-04-05-dashboard.md +737 -0
  38. package/.sillyspec/projects/sillyspec.yaml +3 -0
  39. package/README.md +11 -13
  40. package/SKILL.md +40 -44
  41. package/dist/steps/brainstorm/01-load-context.md +30 -0
  42. package/dist/steps/brainstorm/02-reuse-check.md +6 -0
  43. package/dist/steps/brainstorm/03-prototype-analysis.md +11 -0
  44. package/dist/steps/brainstorm/04-module-split.md +23 -0
  45. package/dist/steps/brainstorm/05-dialog-explore.md +8 -0
  46. package/dist/steps/brainstorm/06-propose-approaches.md +3 -0
  47. package/dist/steps/brainstorm/07-present-design.md +3 -0
  48. package/dist/steps/brainstorm/08-write-design.md +21 -0
  49. package/dist/steps/brainstorm/09-self-review.md +15 -0
  50. package/dist/steps/brainstorm/10-user-confirm.md +3 -0
  51. package/dist/steps/brainstorm/11-output-spec.md +7 -0
  52. package/dist/steps/brainstorm/manifest.yaml +26 -0
  53. package/dist/steps/execute/01-load-context.md +41 -0
  54. package/dist/steps/execute/02-scan-conventions.md +47 -0
  55. package/dist/steps/execute/03-skill-mcp.md +19 -0
  56. package/dist/steps/execute/04-assign-task.md +22 -0
  57. package/dist/steps/execute/04b-prompt-template.md +54 -0
  58. package/dist/steps/execute/05-write-test.md +7 -0
  59. package/dist/steps/execute/06-write-code.md +8 -0
  60. package/dist/steps/execute/07-run-test.md +26 -0
  61. package/dist/steps/execute/08-fix-issues.md +28 -0
  62. package/dist/steps/execute/09-next-task.md +33 -0
  63. package/dist/steps/execute/manifest.yaml +28 -0
  64. package/dist/steps/plan/01-load-context.md +22 -0
  65. package/dist/steps/plan/02-anchor-confirm.md +1 -0
  66. package/dist/steps/plan/03-expand-tasks.md +33 -0
  67. package/dist/steps/plan/04-mark-order.md +15 -0
  68. package/dist/steps/plan/05-e2e-planning.md +17 -0
  69. package/dist/steps/plan/06-self-check.md +16 -0
  70. package/dist/steps/plan/07-save.md +1 -0
  71. package/dist/steps/plan/manifest.yaml +18 -0
  72. package/dist/steps/scan/01-env-detect.md +51 -0
  73. package/dist/steps/scan/02-tech-stack.md +16 -0
  74. package/dist/steps/scan/03-conventions.md +16 -0
  75. package/dist/steps/scan/04-structure.md +19 -0
  76. package/dist/steps/scan/05-quality.md +18 -0
  77. package/dist/steps/scan/06-complete.md +49 -0
  78. package/dist/steps/scan/manifest.yaml +16 -0
  79. package/dist/steps/verify/01-load-specs.md +28 -0
  80. package/dist/steps/verify/02-check-tasks.md +1 -0
  81. package/dist/steps/verify/03-check-design.md +6 -0
  82. package/dist/steps/verify/04-run-tests.md +7 -0
  83. package/dist/steps/verify/05-e2e-tests.md +27 -0
  84. package/dist/steps/verify/05b-e2e-fix.md +33 -0
  85. package/dist/steps/verify/06-code-quality.md +25 -0
  86. package/dist/steps/verify/07-lint-check.md +27 -0
  87. package/dist/steps/verify/08-output-report.md +14 -0
  88. package/dist/steps/verify/manifest.yaml +22 -0
  89. package/package.json +1 -7
  90. package/packages/dashboard/dist/assets/{index-Bq_Z2hne.js → index-D1EVTLmc.js} +1264 -1264
  91. package/packages/dashboard/dist/assets/index-DGe8CqeP.css +1 -0
  92. package/packages/dashboard/dist/index.html +2 -2
  93. package/packages/dashboard/package-lock.json +6 -6
  94. package/packages/dashboard/server/executor.js +1 -1
  95. package/packages/dashboard/server/index.js +18 -98
  96. package/packages/dashboard/server/parser.js +71 -139
  97. package/packages/dashboard/server/watcher.js +6 -14
  98. package/packages/dashboard/src/App.vue +185 -418
  99. package/packages/dashboard/src/components/ActionBar.vue +1 -10
  100. package/packages/dashboard/src/components/CommandPalette.vue +1 -5
  101. package/packages/dashboard/src/components/DocPreview.vue +8 -105
  102. package/packages/dashboard/src/components/DocTree.vue +19 -75
  103. package/packages/dashboard/src/components/PipelineStage.vue +2 -22
  104. package/packages/dashboard/src/components/PipelineView.vue +5 -32
  105. package/packages/dashboard/src/components/ProjectOverview.vue +139 -113
  106. package/packages/dashboard/src/components/StageBadge.vue +3 -17
  107. package/packages/dashboard/src/components/StepCard.vue +2 -7
  108. package/packages/dashboard/src/composables/useDashboard.js +0 -28
  109. package/src/derive.js +147 -0
  110. package/src/index.js +40 -688
  111. package/src/init.js +63 -119
  112. package/src/migrate.js +7 -7
  113. package/src/progress.js +248 -1474
  114. package/src/run.js +302 -3008
  115. package/src/setup.js +64 -2
  116. package/src/stages/archive.js +17 -123
  117. package/src/stages/brainstorm.js +48 -454
  118. package/src/stages/doctor.js +46 -99
  119. package/src/stages/execute.js +59 -420
  120. package/src/stages/index.js +18 -12
  121. package/src/stages/plan.js +189 -492
  122. package/src/stages/propose.js +11 -70
  123. package/src/stages/quick.js +13 -52
  124. package/src/stages/scan.js +68 -485
  125. package/src/stages/status.js +1 -1
  126. package/src/stages/verify.js +16 -203
  127. package/src/step.js +543 -0
  128. package/.claude/skills/sillyspec-knowledge/SKILL.md +0 -270
  129. package/.husky/pre-push +0 -13
  130. package/CLAUDE.md +0 -18
  131. package/docs/brainstorm-plan-contract.md +0 -64
  132. package/docs/plan-execute-contract.md +0 -123
  133. package/docs/platform-scan-protocol.md +0 -298
  134. package/docs/revision-mode.md +0 -115
  135. package/docs/sillyspec/file-lifecycle/known-implementation-gaps.md +0 -99
  136. package/docs/sillyspec/file-lifecycle/platform-workflows-sync.md +0 -218
  137. package/docs/sillyspec/file-lifecycle/stage-artifacts.md +0 -167
  138. package/docs/sillyspec/file-lifecycle/storage-and-state.md +0 -148
  139. package/docs/sillyspec/file-lifecycle/worktree-and-guard.md +0 -193
  140. package/docs/sillyspec/file-lifecycle.md +0 -125
  141. package/docs/workflow-contract-regression.md +0 -106
  142. package/docs/worktree-isolation.md +0 -252
  143. package/packages/dashboard/dist/assets/index-O2W5RV4z.css +0 -1
  144. package/packages/dashboard/dist/prototype-dashboard.html +0 -836
  145. package/packages/dashboard/dist/prototype-overview.html +0 -256
  146. package/packages/dashboard/public/prototype-dashboard.html +0 -836
  147. package/packages/dashboard/public/prototype-overview.html +0 -256
  148. package/packages/dashboard/src/components/HResizeHandle.vue +0 -48
  149. package/packages/dashboard/src/components/ProjectCard.vue +0 -187
  150. package/packages/dashboard/src/components/VResizeHandle.vue +0 -61
  151. package/packages/dashboard/src/composables/useLayout.js +0 -131
  152. package/src/brainstorm-postcheck.js +0 -158
  153. package/src/change-list.js +0 -52
  154. package/src/change-risk-profile.js +0 -352
  155. package/src/classify-change.js +0 -73
  156. package/src/constants.js +0 -70
  157. package/src/contract-matrix.js +0 -278
  158. package/src/db.js +0 -201
  159. package/src/endpoint-extractor.js +0 -315
  160. package/src/hooks/claude-pre-tool-use.cjs +0 -125
  161. package/src/hooks/worktree-guard.js +0 -761
  162. package/src/knowledge-match.js +0 -130
  163. package/src/modules.js +0 -482
  164. package/src/scan-postcheck.js +0 -383
  165. package/src/stage-contract.js +0 -700
  166. package/src/stages/brainstorm-auto.js +0 -229
  167. package/src/stages/explore.js +0 -34
  168. package/src/stages/knowledge.js +0 -498
  169. package/src/stages/plan-postcheck.js +0 -513
  170. package/src/sync.js +0 -497
  171. package/src/task-review.js +0 -346
  172. package/src/workflow.js +0 -785
  173. package/src/worktree-apply.js +0 -549
  174. package/src/worktree.js +0 -932
  175. package/templates/workflows/archive-impact.yaml +0 -79
  176. package/templates/workflows/scan-docs.yaml +0 -132
  177. package/test/brainstorm-plan-contract.test.mjs +0 -273
  178. package/test/check-syntax.mjs +0 -26
  179. package/test/cli-top-level-aliases.test.mjs +0 -174
  180. package/test/contract-artifacts.test.mjs +0 -323
  181. package/test/decision-supersede.test.mjs +0 -277
  182. package/test/knowledge-match.test.mjs +0 -231
  183. package/test/plan-execute-contract.test.mjs +0 -330
  184. package/test/plan-optimization.test.mjs +0 -572
  185. package/test/platform-artifacts.test.mjs +0 -190
  186. package/test/platform-failure-samples.test.mjs +0 -199
  187. package/test/platform-recovery-chain.test.mjs +0 -179
  188. package/test/platform-recovery.test.mjs +0 -167
  189. package/test/platform-scan-p0.test.mjs +0 -175
  190. package/test/revision-v1.test.mjs +0 -1145
  191. package/test/run-sanitize-project-name.test.mjs +0 -51
  192. package/test/run-scan-postcheck-fail.test.mjs +0 -64
  193. package/test/run-scan-project-parse.test.mjs +0 -200
  194. package/test/run-tests.mjs +0 -48
  195. package/test/scan-docs-yaml-placeholders.test.mjs +0 -84
  196. package/test/scan-knowledge.test.mjs +0 -175
  197. package/test/scan-paths.test.mjs +0 -68
  198. package/test/scan-postcheck-project-priority.test.mjs +0 -85
  199. package/test/scan-postcheck.test.mjs +0 -197
  200. package/test/scan-workflow-anyfailed-block.test.mjs +0 -52
  201. package/test/spec-dir.test.mjs +0 -206
  202. package/test/stage-contract-failed-post-check.test.mjs +0 -102
  203. package/test/stage-contract.test.mjs +0 -299
  204. package/test/stage-definitions.test.mjs +0 -39
  205. package/test/wait-gates.test.mjs +0 -501
  206. package/test/workflow-spec-base.test.mjs +0 -142
  207. package/test/worktree-guard.test.mjs +0 -136
  208. package/test/worktree-native-overlay.test.mjs +0 -188
@@ -1,8 +1,3 @@
1
- /**
2
- * @deprecated propose 阶段已移除入口(2026-06-14)。
3
- * brainstorm 现在拥有四件套(design/proposal/requirements/tasks)的生成职责。
4
- * 本文件保留以备未来需要恢复,但未注册到 stageRegistry。
5
- */
6
1
  export const definition = {
7
2
  name: 'propose',
8
3
  title: '方案设计',
@@ -31,14 +26,8 @@ export const definition = {
31
26
  2. 读取最新设计文档、需求文档、代码库约定
32
27
  3. 如果是子阶段变更,读取 MASTER.md 和前序阶段设计
33
28
 
34
- ### 模块文档加载
35
- 4. 读取 \`.sillyspec/docs/<project>/modules/_module-map.yaml\`(不存在则跳过以下步骤)
36
- 5. 根据当前提案初步判断涉及的模块(匹配提案中的文件路径到 _module-map.yaml 的 paths)
37
- 6. 读取匹配到的 \`.sillyspec/docs/<project>/modules/<module>.md\`
38
- 7. 如果发现提案中的变更范围与某个模块文档描述的当前设计存在潜在冲突,在后续提案中明确标注并说明处理方案
39
-
40
29
  ### 输出
41
- 已加载的文件列表(含模块文档)`,
30
+ 已加载的文件列表`,
42
31
  outputHint: '文件列表',
43
32
  optional: false
44
33
  },
@@ -74,63 +63,19 @@ export const definition = {
74
63
  },
75
64
  {
76
65
  name: '生成规范文件',
77
- prompt: `在 \`.sillyspec/changes/<change-name>/\` 下生成四个文件。
78
-
79
- **⚠️ 路径注意:<change-name> 是变更目录名(如 \`2026-05-28-agent-log-streaming\`),直接放在 \`.sillyspec/changes/\` 下,不要加额外的子目录层级。正确路径示例:\`.sillyspec/changes/2026-05-28-agent-log-streaming/proposal.md\`**
80
-
81
- ### proposal.md 格式要求
82
- - **动机**:为什么做、解决什么核心问题
83
- - **关键问题**:为什么现有方案不够(展开 2-3 个具体痛点)
84
- - **变更范围**:本次做什么
85
- - **不在范围内**(显式清单):不做 X、不做 Y
86
- - **成功标准**(可验证条件):旧配置默认行为不变、新功能配置后可用
87
-
88
- ### requirements.md 格式要求
89
- - **角色表**:涉及的角色和说明
90
- - **FR 编号需求**:FR-01、FR-02 ... 每条需求用 Given/When/Then 格式
91
- - **每个边界条件**独立 GWT 块
92
- - **非功能需求**:兼容性、可回退、可测试、可扩展
93
-
94
- ### design.md 格式要求
95
-
96
- **必须包含的章节:**
97
- 1. **背景**:为什么做、解决什么问题
98
- 2. **设计目标**:要达成什么
99
- 3. **非目标**:明确不做的事(防止 scope creep)
100
- 4. **总体方案**:技术方案(分 Phase/Wave)
101
- 5. **文件变更清单**(必填):
102
-
103
- | 操作 | 文件路径 | 说明 |
104
- |---|---|---|
105
- | 新增 | src/xxx/NewFile.java | ... |
106
- | 修改 | src/xxx/ExistingFile.java | 新增 xx 方法 |
107
-
108
- 6. **接口定义**:方法签名、数据结构(代码类任务必填)
109
- 7. **数据模型**(如涉及):表结构/字段变更
110
- 8. **兼容策略**(brownfield 必填):未配置新功能时行为不变、新旧逻辑的回退路径
111
- 9. **风险登记**:
112
-
113
- | 编号 | 风险 | 等级 | 应对策略 |
114
- |---|---|---|---|
115
- | R-01 | ... | P0/P1/P2 | ... |
116
-
117
- 10. **自审**:需求覆盖、约束一致性、真实性、YAGNI、验收标准、非目标清晰、兼容策略、风险识别
118
-
119
- ### tasks.md 格式要求
120
- - 任务列表(只列名称,不展开步骤)
121
- - 每个 task 附文件路径
66
+ prompt: `在 \`.sillyspec/changes/<变更名>/\` 下生成四个文件。
122
67
 
123
68
  ### 操作
124
- 1. 生成 proposal.md
125
- 2. 生成 requirements.md
126
- 3. 生成 design.md
127
- 4. 生成 tasks.md
69
+ 1. 生成 proposal.md:动机、变更范围、不在范围内、成功标准
70
+ 2. 生成 requirements.md:功能需求、用户场景(Given/When/Then)、非功能需求
71
+ 3. 生成 design.md:架构决策、文件变更清单、数据模型、API 设计、代码风格参照
72
+ 4. 生成 tasks.md:任务列表(只列名称,不展开步骤)
128
73
 
129
74
  ### 输出
130
75
  四个文件路径
131
76
 
132
77
  ### 注意
133
- - 表名/字段名/类名必须来自真实代码或标注"新增"
78
+ - 表名/字段名必须来自真实 schema 或标注"新增"
134
79
  - 用户场景必须用 Given/When/Then 格式
135
80
  - tasks.md 只列任务名,细节在 plan 阶段展开`,
136
81
  outputHint: '四个文件路径',
@@ -142,21 +87,17 @@ export const definition = {
142
87
 
143
88
  ### 操作
144
89
  检查以下各项:
145
- - [ ] proposal.md 有动机、关键问题、变更范围、不在范围内、成功标准
146
- - [ ] design.md 有背景、设计目标、非目标
90
+ - [ ] proposal.md 有动机、变更范围、不在范围内、成功标准
147
91
  - [ ] design.md 有文件变更清单表格
148
- - [ ] design.md 有兼容策略(brownfield 时)
149
- - [ ] design.md 有风险登记表格
150
- - [ ] design.md 有自审
151
- - [ ] requirements.md 有角色表
152
- - [ ] requirements.md 有 FR 编号和 Given/When/Then 用户场景
92
+ - [ ] requirements.md Given/When/Then 用户场景
153
93
  - [ ] tasks.md 每个 task 有文件路径
154
94
 
155
95
  任何不通过 → 修正后重新检查。
156
96
 
157
97
  ### 输出
158
98
  自检通过/不通过`,
159
-
99
+ outputHint: '自检结果',
100
+ optional: false
160
101
  },
161
102
  {
162
103
  name: '展示并更新进度',
@@ -14,42 +14,17 @@ export const definition = {
14
14
  3. 加载项目信息:\`cat .sillyspec/projects/*.yaml 2>/dev/null\`(了解项目结构和技术栈)
15
15
  4. 加载上下文:\`cat .sillyspec/docs/<project>/scan/CONVENTIONS.md 2>/dev/null\`
16
16
  5. 加载本地配置:\`cat .sillyspec/local.yaml 2>/dev/null\`(构建命令、测试命令、环境变量等)
17
- 6. 如有 \`--change\`,加载设计文档:\`cat .sillyspec/changes/<change-name>/design.md 2>/dev/null\`(理解设计意图)
17
+ 6. 如有 \`--change\`,加载设计文档:\`cat .sillyspec/changes/<变更名>/design.md 2>/dev/null\`(理解设计意图)
18
18
  7. 如有需要,查询知识库:\`cat .sillyspec/knowledge/INDEX.md 2>/dev/null\`
19
19
 
20
- ### 模块文档加载
21
- 8. 读取 \`.sillyspec/docs/<project>/modules/_module-map.yaml\`(不存在则跳过以下步骤)
22
- 9. 根据任务描述初步判断可能涉及的模块
23
- 10. 读取匹配到的 \`.sillyspec/docs/<project>/modules/<module>.md\`
24
-
25
- ### 创建任务记录(⛔ 此步骤不能跳过,没有 quicklog 记录 = 未完成)
26
- 理解完任务后,**必须**立即创建记录文件,再输出任何其他内容:
27
- 1. 使用预注入的 git 用户名:\`<git-user>\`
28
- 2. 无 \`--change\`:创建 .sillyspec/quicklog/QUICKLOG-\`<git-user>\`.md\`(已存在则追加),写入:
29
- \`\`\`
30
- ## ql-<YYYYMMDD>-<NNN>-<XXXX> | <now-datetime> | <一句话任务描述>
31
- 状态:进行中
32
- 文件:<预估要改的文件>
33
- \`\`\`
34
- - ID 格式:\`ql-YYYYMMDD-NNN-XXXX\`
35
- - \`XXXX\` 是 4 位随机十六进制字符(如 a3f2、b7c1、00ef),**不是描述词缩写**
36
- - 追加前扫描文件中已有的 \`ql-<当天日期>-\` 前缀的最大序号,+1 作为新序号
37
- - 每天从 001 开始,跨日重新计数
38
- - 此 ID 可被 design.md / plan.md / archive / module 变更索引引用
39
- 3. 有 \`--change\`:在 \`.sillyspec/changes/<change-name>/tasks.md\` 追加未勾选的 task
40
-
41
- 这样 Gate 检测到 .sillyspec/\` 下有变更,就不会拦截后续的代码修改。
42
-
43
20
  ### 输出
44
- quicklog 已创建(必须放在输出的第一行确认)+ 任务理解 + 上下文摘要
45
-
46
- ⚠️ **先创建 quicklog,再输出任务理解。** 如果 quicklog 未创建,CLI post-check 会报 warning。`,
21
+ 任务理解 + 上下文摘要`,
47
22
  outputHint: '任务理解',
48
23
  optional: false
49
24
  },
50
25
  {
51
26
  name: '实现并验证',
52
- prompt: `直接在主工作区实现任务。
27
+ prompt: `实现任务。
53
28
 
54
29
  ### 操作
55
30
  1. 先读后写:调用已有方法前 \`cat\` 源文件确认签名,\`grep\` 确认方法存在
@@ -68,34 +43,20 @@ quicklog 已创建(必须放在输出的第一行确认)+ 任务理解 + 上
68
43
  optional: false
69
44
  },
70
45
  {
71
- name: '暂存和更新记录',
72
- prompt: `Git 暂存并更新任务记录。
46
+ name: '暂存和记录',
47
+ prompt: `Git 暂存并记录任务。
73
48
 
74
49
  ### 操作
75
- 1. 查看 \`git status --porcelain\`,确认只包含本次 quick 相关文件
76
- 2. 使用 \`git add -- <file...>\` 暂存本次 quick 实际修改的文件(不要 commit,由用户通过统一提交工具处理)
77
- - 禁止使用 \`git add -A\`
78
- - 不要暂存 quick 开始前就已存在的无关改动
79
- 3. 更新 Step 1 创建的记录:
80
- - \`--change\`:找到对应 ql-ID 的条目,将「状态:进行中」改为「状态:已完成」,补充实际改动文件和结果摘要
81
- - 有 \`--change\`:勾选 tasks.md 中对应的 task checkbox
82
- 4. QUICKLOG 轮转:超过 500 行则重命名为 \`QUICKLOG-<USER>-YYYY-MM-DD.md\`(日期取最后一条记录的日期)。新文件从空开始,ql-ID 需扫描同目录所有 QUICKLOG 文件中当天最大序号 +1
83
- 5. 如果发现项目特有的坑,追加到 \`.sillyspec/knowledge/uncategorized.md\`
84
- 6. 任务比预期复杂 → 建议用完整流程
85
-
86
- ### 模块文档同步
87
- 7. 读取 \`.sillyspec/docs/<project>/modules/_module-map.yaml\`(不存在则跳过以下步骤)
88
- 8. 对比本次修改的文件(\`git diff --name-only HEAD\`)与模块映射
89
- 9. 如果命中模块 → 直接同步模块文档:
90
- - 读取对应的 \`.sillyspec/docs/<project>/modules/<module>.md\`(如不存在则新建)
91
- - 根据本次改动内容更新模块文档(正文描述当前状态,底部变更索引追加本次 ql-ID)
92
- - 变更索引格式:\`- ql-YYYYMMDD-NNN-XXXX | <一句话描述>\`
93
- - 写入模块文档
94
- - 使用 \`git add -- <module-doc>\` 暂存更新的模块文件
95
- 10. 未命中任何模块 → 跳过,不做额外操作
50
+ 1. \`git add -A\` **不要 commit**,由用户通过统一提交
51
+ 2. 记录:
52
+ - \`--change\`:在 \`.sillyspec/changes/<变更名>/tasks.md\` 追加 task 并勾选,记录精确到秒的时间戳
53
+ - \`--change\`:记录到 \`.sillyspec/quicklog/QUICKLOG-<git用户名>.md\`(按 git 用户名隔离)
54
+ 3. QUICKLOG 轮转:超过 500 行则重命名为 \`QUICKLOG-<USER>-YYYY-MM-DD.md\`
55
+ 4. 如果发现项目特有的坑,追加到 \`.sillyspec/knowledge/uncategorized.md\`
56
+ 5. 任务比预期复杂 建议用完整流程
96
57
 
97
58
  ### 输出
98
- 暂存确认 + 记录路径 + 模块文档同步结果(如有)`,
59
+ 暂存确认 + 记录路径`,
99
60
  outputHint: '暂存和记录确认',
100
61
  optional: false
101
62
  }