Commit 87ba268f624988d5c3ddc4e0dbab5b4364b89285
1 parent
5d67162b
skill(plan A3-A5): hoist 'tick docs/08 after step' boilerplate to a single global note
Showing
3 changed files
with
20 additions
and
26 deletions
skills/plan/db-design-gen/SKILL.md
| ... | ... | @@ -9,6 +9,8 @@ allowed-tools: Read Write Edit Grep Glob AskUserQuestion |
| 9 | 9 | |
| 10 | 10 | # db-design-gen |
| 11 | 11 | |
| 12 | +每步骤完成后用 `Edit` 在 `docs/08-模块任务管理.md` § 一 勾选对应子项。 | |
| 13 | + | |
| 12 | 14 | ## 执行步骤 |
| 13 | 15 | |
| 14 | 16 | ### 步骤 A0:确认 ERP schema 约定(一次性) |
| ... | ... | @@ -49,8 +51,7 @@ allowed-tools: Read Write Edit Grep Glob AskUserQuestion |
| 49 | 51 | 2. 渲染「表清单」:对每张表:读取并填充 `${CLAUDE_SKILL_DIR}/templates/docs-03-table-template.md`,其中标准列区块用步骤 A0 确认的 `{{PK_CONVENTION}}` / `{{TENANT_COLS}}` 展开(`TENANT_COLS` = 「无」时不输出租户列行)。 |
| 50 | 52 | 3. 写入 `docs/03-数据库设计文档.md`。 |
| 51 | 53 | |
| 52 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 53 | -- ` - [ ] docs/03-数据库设计文档.md 已生成` | |
| 54 | +勾选:` - [ ] docs/03-数据库设计文档.md 已生成` | |
| 54 | 55 | |
| 55 | 56 | ### D. 回填模块头 + REQ 卡片的 TBD 字段 |
| 56 | 57 | |
| ... | ... | @@ -58,13 +59,11 @@ allowed-tools: Read Write Edit Grep Glob AskUserQuestion |
| 58 | 59 | 2. 在这些文件中搜索 `TBD(A3 自动补)` 的并回填。 不动 `TBD(A5 自动补)` |
| 59 | 60 | 3. 打印回填统计:`A3 回填 <M> 处模块"涉及表" + <N> 处 REQ"依赖表"`。 |
| 60 | 61 | |
| 61 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 62 | -- ` - [ ] docs/01 各 REQ 卡片"依赖表" + 模块头"涉及表" 已回填` | |
| 62 | +勾选:` - [ ] docs/01 各 REQ 卡片"依赖表" + 模块头"涉及表" 已回填` | |
| 63 | 63 | |
| 64 | 64 | ### E. 勾选 A3 顶层 + 停下等人工审阅 |
| 65 | 65 | |
| 66 | -1. 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选 A3 顶层(A3 两个子项已在 C / D 步骤分别勾选): | |
| 67 | - - `- [ ] A3 DB 设计 + REQ 回填 — db-design-gen` | |
| 66 | +1. 勾选 A3 顶层(A3 两个子项已在 C / D 步骤分别勾选):`- [ ] A3 DB 设计 + REQ 回填 — db-design-gen` | |
| 68 | 67 | |
| 69 | 68 | 2. 打印停下横幅并**停下**,不调用任何下游 skill: |
| 70 | 69 | ... | ... |
skills/plan/db-init/SKILL.md
| ... | ... | @@ -9,6 +9,8 @@ allowed-tools: Read Write Edit Glob Skill Bash(node *) Bash(mysql *) |
| 9 | 9 | |
| 10 | 10 | # db-init |
| 11 | 11 | |
| 12 | +每步骤完成后用 `Edit` 在 `docs/08-模块任务管理.md` § 一 勾选对应子项。 | |
| 13 | + | |
| 12 | 14 | ## 执行步骤 |
| 13 | 15 | |
| 14 | 16 | ### A. DDL 生成(不依赖数据库连接) |
| ... | ... | @@ -48,7 +50,7 @@ node "${CLAUDE_PLUGIN_ROOT}/lib/validate-ddl.mjs" \ |
| 48 | 50 | 3. 退出 0 → 进入 B;退出 1 且本轮 < 3 → 回步骤 1;本轮 ≥ 3 仍失败 → 停下,打印最终残留差异 + 已尝试的 3 轮修正摘要,让用户介入 |
| 49 | 51 | - `2` → 用法错(docs/03 / V1 路径找不到),打印路径并停下 |
| 50 | 52 | |
| 51 | -完成后(V1 写入并通过 `validate-ddl.mjs` 校验),用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 53 | +完成后(V1 写入并通过 `validate-ddl.mjs` 校验),勾选: | |
| 52 | 54 | - ` - [ ] sql/migrations/V1__initial_schema.sql 已生成` |
| 53 | 55 | - ` - [ ] DDL 与 docs/03 全量一致` |
| 54 | 56 | |
| ... | ... | @@ -64,8 +66,7 @@ mysql -h<DB_HOST> -P<DB_PORT> -u<DB_USER> -p<DB_PASSWORD> -e "SELECT 1;" |
| 64 | 66 | |
| 65 | 67 | 成功 → 进入步骤 C;失败 → 打印具体错误(认证 / 主机不可达 / 端口拒接)并停下。 |
| 66 | 68 | |
| 67 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 68 | -- ` - [ ] .env.local 凭据已验证(mysql -e "SELECT 1" OK)` | |
| 69 | +勾选:` - [ ] .env.local 凭据已验证(mysql -e "SELECT 1" OK)` | |
| 69 | 70 | |
| 70 | 71 | ### C. 自动导入 MySQL |
| 71 | 72 | |
| ... | ... | @@ -88,12 +89,11 @@ node "${CLAUDE_PLUGIN_ROOT}/lib/apply-ddl.mjs" .env.local sql/migrations/V1__ini |
| 88 | 89 | - `1` → 失败:打印 stderr 并停下 |
| 89 | 90 | - `2` → 用法错(路径找不到),打印路径并停下 |
| 90 | 91 | |
| 91 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 92 | -- ` - [ ] setup-test-db.mjs 防护通过 + DROP+CREATE + apply V1 已执行` | |
| 92 | +勾选:` - [ ] setup-test-db.mjs 防护通过 + DROP+CREATE + apply V1 已执行` | |
| 93 | 93 | |
| 94 | 94 | ### D. 勾选 docs/08 进度 + 进入 A5 |
| 95 | 95 | |
| 96 | -1. 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选(A4 子项 + A4 顶层;DDL ↔ docs/03 5 维一致已由 A.3 校验过,V1 文件自此未变): | |
| 96 | +1. 勾选(A4 子项 + A4 顶层;DDL ↔ docs/03 5 维一致已由 A.3 校验过,V1 文件自此未变): | |
| 97 | 97 | - ` - [ ] DDL ↔ docs/03 apply 后 5 维一致(validate-ddl.mjs)` |
| 98 | 98 | - `- [ ] A4 DB 初始化 — db-init` |
| 99 | 99 | ... | ... |
skills/plan/downstream-gen/SKILL.md
| ... | ... | @@ -9,6 +9,8 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion |
| 9 | 9 | |
| 10 | 10 | # downstream-gen |
| 11 | 11 | |
| 12 | +每步骤完成后用 `Edit` 在 `docs/08-模块任务管理.md` § 一 勾选对应子项。 | |
| 13 | + | |
| 12 | 14 | ## 执行步骤 |
| 13 | 15 | |
| 14 | 16 | ### A. docs/02 — 开发计划(含 REQ 级开发顺序清单) |
| ... | ... | @@ -19,45 +21,39 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion |
| 19 | 21 | 2. 为每项生成 `index`(从 1)/ `req_id` / `module_id` / `rationale`(依赖驱动短描述)/ `note`。 |
| 20 | 22 | 3. 读取并填充 `${CLAUDE_SKILL_DIR}/templates/docs-02-template.md`,写入 `docs/02-开发计划.md`。 |
| 21 | 23 | |
| 22 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 23 | -- ` - [ ] docs/02 开发计划已生成` | |
| 24 | +勾选:` - [ ] docs/02 开发计划已生成` | |
| 24 | 25 | |
| 25 | 26 | ### B. docs/05 — API 接口契约 |
| 26 | 27 | |
| 27 | 28 | 1. 读取 `${CLAUDE_SKILL_DIR}/templates/docs-05-header-template.md`,写入 `docs/05-API接口契约.md` 头部。 |
| 28 | 29 | 2. 对所有模块的每个 REQ:读取并推断 `${CLAUDE_SKILL_DIR}/templates/docs-05-endpoint-template.md`,追加到 docs/05。 |
| 29 | 30 | |
| 30 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 31 | -- ` - [ ] docs/05 API 契约已生成` | |
| 31 | +勾选:` - [ ] docs/05 API 契约已生成` | |
| 32 | 32 | |
| 33 | 33 | ### B2. 回填模块头 + REQ 卡片的 TBD(A5) 字段 |
| 34 | 34 | |
| 35 | 35 | 1. 在`docs/01-需求清单/*/_module.md`(模块头)和 `docs/01-需求清单/*/REQ-*.md`(REQ 卡片)中搜索并回填 `TBD(A5 自动补)` |
| 36 | 36 | 2. 打印回填统计:`A5 回填 <M> 处模块"依赖模块" + <N> 处 REQ"依赖接口"`。 |
| 37 | 37 | |
| 38 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 39 | -- ` - [ ] REQ 卡片依赖接口已回填` | |
| 38 | +勾选:` - [ ] REQ 卡片依赖接口已回填` | |
| 40 | 39 | |
| 41 | 40 | ### C. docs/06 — 页面清单 |
| 42 | 41 | |
| 43 | 42 | 对每个有前端页面的模块:读取并填充 `${CLAUDE_SKILL_DIR}/templates/docs-06-module-pagelist-template.md`,追加到 `docs/06-UI交互规范.md` § 三。 |
| 44 | 43 | |
| 45 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 46 | -- ` - [ ] docs/06 § 三 页面清单已填入` | |
| 44 | +勾选:` - [ ] docs/06 § 三 页面清单已填入` | |
| 47 | 45 | |
| 48 | 46 | ### D. docs/08 — 追加模块清单 |
| 49 | 47 | |
| 50 | 48 | 读 `${CLAUDE_SKILL_DIR}/templates/docs-08-module-row-template.md`,按 `module_id` 字母序为每个模块渲染 bullet(模块元数据 + REQ 子项清单,REQ 序保持步骤 A 模块内顺序),追加到 docs/08。 |
| 51 | 49 | |
| 52 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 53 | -- ` - [ ] 下方模块列表已填入` | |
| 50 | +勾选:` - [ ] 下方模块列表已填入` | |
| 54 | 51 | |
| 55 | 52 | ### E. docs/10 — 验收清单(项目级 SOP) |
| 56 | 53 | |
| 57 | 54 | 用 `Read` 读取 `${CLAUDE_SKILL_DIR}/templates/docs-10-header-template.md`,用 `Write` 原样写到 `docs/10-验收检查清单.md`(跨平台,不用 `cp`)。 |
| 58 | 55 | |
| 59 | -完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: | |
| 60 | -- ` - [ ] docs/10 验收清单已生成` | |
| 56 | +勾选:` - [ ] docs/10 验收清单已生成` | |
| 61 | 57 | |
| 62 | 58 | ### F. 验证 + 勾选 docs/08 进度 + 结束 Plan |
| 63 | 59 | |
| ... | ... | @@ -71,8 +67,7 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion |
| 71 | 67 | |
| 72 | 68 | 2. **docs/05 + docs/02 人工评审闸**(未确认不得勾选 A5):摘要展示 docs/05 全部端点(`METHOD PATH — REQ-ID`,标注「由 A5 自动推断」的项)+ docs/02 `req_order[]`(特别标 `note ≠ —` 的环依赖打破项)。`AskUserQuestion` 多问题表单同时问两项:「docs/05 端点/字段无误」+「docs/02 构建顺序可接受」,各二选一 `确认` / `需要修改`。任一需修改 → 收集修改点就地修订并重跑本闸,直到两项均 `确认`;否则禁止勾选 A5、禁止打印横幅。 |
| 73 | 69 | |
| 74 | -3. 用 `Edit` 在 `docs/08-模块任务管理.md` 勾选 A5 父项: | |
| 75 | - - `- [ ] A5 下游文档生成 — downstream-gen` | |
| 70 | +3. 勾选 A5 父项:`- [ ] A5 下游文档生成 — downstream-gen` | |
| 76 | 71 | |
| 77 | 72 | 4. 打印 A5 完成横幅并**停下**: |
| 78 | 73 | ... | ... |