Commit c786feec07a3e64222303da3183d16ff20903c21

Authored by zichun
1 parent a4154981

refactor: drop lite branding — rename lite-init/design/build-db → init/design/bu…

…ild-db, de-brand plugin meta/README/banners
Showing 29 changed files with 141 additions and 141 deletions
.claude-plugin/plugin.json
1 { 1 {
2 "name": "erp-workflow", 2 "name": "erp-workflow",
3 - "description": "ERP/全栈项目精简流程框架(lite):计划三段(一次性)+ 编码统一功能循环(后端模块 / 前端阶段共用),保留 TDD、需求可追溯、DB-as-SSoT + Flyway、本地里程碑 tag。",  
4 - "version": "0.1.0-lite", 3 + "description": "ERP/全栈项目全流程开发框架:计划三段(一次性)+ 编码统一功能循环(后端模块 / 前端阶段共用),保留 TDD、需求可追溯、DB-as-SSoT + Flyway、本地里程碑 tag。",
  4 + "version": "0.1.0",
5 "skills": ["./skills/plan", "./skills/coding", "./skills/crosscut"] 5 "skills": ["./skills/plan", "./skills/coding", "./skills/crosscut"]
6 } 6 }
README.md
1 -# erp-workflow(lite) 1 +# erp-workflow
2 2
3 -Claude Code æ’件:ERP / åŽç«¯ç®¡ç†ç³»ç»Ÿå…¨æµç¨‹å¼€å‘框架(精简版)。 3 +Claude Code æ’件:ERP / åŽç«¯ç®¡ç†ç³»ç»Ÿå…¨æµç¨‹å¼€å‘框架。
4 4
5 把"从零到 N 个åŽç«¯æ¨¡å—上线 + å‰ç«¯æ•´ä½“阶段"的整个æµç¨‹å›ºåŒ–æˆ **11 个 skill + 2 个 agent + 22 ä»½æ¨¡æ¿ + 3 个脚本**,让 CC 在 schema 演化用 Flyway migrationã€éœ€æ±‚å¯è¿½æº¯ã€çº¯æœ¬åœ° git çš„å‰æä¸‹æŽ¨è¿›ç¼–ç ã€‚åŽç«¯æŒ‰æ¨¡å—å¾ªçŽ¯ä¾æ¬¡æ‰“里程碑 tag,所有åŽç«¯æ¨¡å—打里程碑åŽè¿›å…¥å‰ç«¯æ•´ä½“阶段(以项目根 `prototype/` 陿€ HTML mockup ä¸ºé¡µé¢æƒå¨ï¼‰ã€‚两阶段共用åŒä¸€å¥—功能循环 skill,由 `phase` 傿•°åŒºåˆ†ã€‚ 5 把"从零到 N 个åŽç«¯æ¨¡å—上线 + å‰ç«¯æ•´ä½“阶段"的整个æµç¨‹å›ºåŒ–æˆ **11 个 skill + 2 个 agent + 22 ä»½æ¨¡æ¿ + 3 个脚本**,让 CC 在 schema 演化用 Flyway migrationã€éœ€æ±‚å¯è¿½æº¯ã€çº¯æœ¬åœ° git çš„å‰æä¸‹æŽ¨è¿›ç¼–ç ã€‚åŽç«¯æŒ‰æ¨¡å—å¾ªçŽ¯ä¾æ¬¡æ‰“里程碑 tag,所有åŽç«¯æ¨¡å—打里程碑åŽè¿›å…¥å‰ç«¯æ•´ä½“阶段(以项目根 `prototype/` 陿€ HTML mockup ä¸ºé¡µé¢æƒå¨ï¼‰ã€‚两阶段共用åŒä¸€å¥—功能循环 skill,由 `phase` 傿•°åŒºåˆ†ã€‚
6 6
@@ -8,12 +8,12 @@ Claude Code æ’件:ERP / åŽç«¯ç®¡ç†ç³»ç»Ÿå…¨æµç¨‹å¼€å‘æ¡†æž¶ï¼ˆç²¾ç®€ç‰ˆï¼ @@ -8,12 +8,12 @@ Claude Code æ’件:ERP / åŽç«¯ç®¡ç†ç³»ç»Ÿå…¨æµç¨‹å¼€å‘框架(精简版ï¼
8 8
9 ``` 9 ```
10 ┌────────────────────────────────────────────────────────┠10 ┌────────────────────────────────────────────────────────â”
11 -│ erp-workflow-lite │ 11 +│ erp-workflow │
12 │ │ 12 │ │
13 │ 计划(/plan-start,一次性,2 个审阅断点) │ 13 │ 计划(/plan-start,一次性,2 个审阅断点) │
14 -│ â‘  lite-init åˆå§‹åŒ– + REQ å¡ç‰‡ ⸠审阅 REQ │  
15 -│ â‘¡ lite-design 脚手架 + docs/03 ⸠审阅 schema │  
16 -│ â‘¢ lite-build-db V1+apply + docs/05/08 │ 14 +│ â‘  init åˆå§‹åŒ– + REQ å¡ç‰‡ ⸠审阅 REQ │
  15 +│ â‘¡ design 脚手架 + docs/03 ⸠审阅 schema │
  16 +│ â‘¢ build-db V1+apply + docs/05/08 │
17 │ │ 17 │ │
18 │ ç¼–ç ï¼ˆ/coding-start,统一功能循环) │ 18 │ ç¼–ç ï¼ˆ/coding-start,统一功能循环) │
19 │ åŽç«¯æ¨¡å—循环 ┠│ 19 │ åŽç«¯æ¨¡å—循环 ┠│
@@ -37,9 +37,9 @@ Claude Code æ’件:ERP / åŽç«¯ç®¡ç†ç³»ç»Ÿå…¨æµç¨‹å¼€å‘æ¡†æž¶ï¼ˆç²¾ç®€ç‰ˆï¼ @@ -37,9 +37,9 @@ Claude Code æ’件:ERP / åŽç«¯ç®¡ç†ç³»ç»Ÿå…¨æµç¨‹å¼€å‘框架(精简版ï¼
37 ``` 37 ```
38 Plan 阶段**三段å¼**执行,中间有两个人工审阅断点: 38 Plan 阶段**三段å¼**执行,中间有两个人工审阅断点:
39 39
40 - - **第一段(首次è¿è¡Œï¼‰**:执行 `lite-init`(ä¾èµ–检查 / git init / åˆå§‹åŒ– docs + CLAUDE.md / 引导填技术栈 + 需求索引 / ç”Ÿæˆ REQ å¡ç‰‡éª¨æž¶ï¼‰åŽ**åœä¸‹**,等你审阅并补全 `docs/01-需求清å•/<module>/REQ-*.md`(第一个人工关å£ï¼šä¸šåŠ¡èŒƒå›´ï¼‰  
41 - - **第二段(REQ å®¡é˜…å®Œé‡æ–°è¿è¡Œï¼‰**:执行 `lite-design`ï¼ˆç”Ÿæˆ docs/04 架构规范 / scripts / .env.local / 从 REQ æ­£å‘设计 `docs/03-æ•°æ®åº“设计文档.md`)åŽå†æ¬¡**åœä¸‹**,等你审阅 docs/03 的表 / 字段 / 索引 / 外键(第二个人工关å£ï¼šdatabase schema)  
42 - - **第三段(docs/03 å®¡é˜…å®Œé‡æ–°è¿è¡Œï¼‰**:执行 `lite-build-db`ï¼ˆè§£æž docs/03 → ç”Ÿæˆ V1 migration → DROP+CREATE 本地 schema å¹¶ apply → ç”Ÿæˆ docs/05 API 契约 + 追加 docs/08 § 二 æ¨¡å—æ¸…å•),Plan 完æˆåŽ**åœä¸‹** 40 + - **第一段(首次è¿è¡Œï¼‰**:执行 `init`(ä¾èµ–检查 / git init / åˆå§‹åŒ– docs + CLAUDE.md / 引导填技术栈 + 需求索引 / ç”Ÿæˆ REQ å¡ç‰‡éª¨æž¶ï¼‰åŽ**åœä¸‹**,等你审阅并补全 `docs/01-需求清å•/<module>/REQ-*.md`(第一个人工关å£ï¼šä¸šåŠ¡èŒƒå›´ï¼‰
  41 + - **第二段(REQ å®¡é˜…å®Œé‡æ–°è¿è¡Œï¼‰**:执行 `design`ï¼ˆç”Ÿæˆ docs/04 架构规范 / scripts / .env.local / 从 REQ æ­£å‘设计 `docs/03-æ•°æ®åº“设计文档.md`)åŽå†æ¬¡**åœä¸‹**,等你审阅 docs/03 的表 / 字段 / 索引 / 外键(第二个人工关å£ï¼šdatabase schema)
  42 + - **第三段(docs/03 å®¡é˜…å®Œé‡æ–°è¿è¡Œï¼‰**:执行 `build-db`ï¼ˆè§£æž docs/03 → ç”Ÿæˆ V1 migration → DROP+CREATE 本地 schema å¹¶ apply → ç”Ÿæˆ docs/05 API 契约 + 追加 docs/08 § 二 æ¨¡å—æ¸…å•),Plan 完æˆåŽ**åœä¸‹**
43 43
44 æ¯æ¬¡è¿è¡Œéƒ½ä¼šè‡ªåŠ¨æŽ¥ä¸Šæ¬¡åœä¸‹çš„地方继续。Plan 完æˆåŽ**ä¸ä¼šè‡ªåŠ¨è¿›å…¥ç¼–ç **,需è¦ä½ æ‰‹åЍè¿è¡Œ `/erp-workflow:coding-start`。 44 æ¯æ¬¡è¿è¡Œéƒ½ä¼šè‡ªåŠ¨æŽ¥ä¸Šæ¬¡åœä¸‹çš„地方继续。Plan 完æˆåŽ**ä¸ä¼šè‡ªåŠ¨è¿›å…¥ç¼–ç **,需è¦ä½ æ‰‹åЍè¿è¡Œ `/erp-workflow:coding-start`。
45 45
@@ -83,9 +83,9 @@ erp-workflow-plugin/ @@ -83,9 +83,9 @@ erp-workflow-plugin/
83 │ └── fe-code-reviewer.md # å‰ç«¯ä¸“用 reviewer(feature-review å‰ç«¯é˜¶æ®µè°ƒç”¨ï¼Œ7 ç»´ review) 83 │ └── fe-code-reviewer.md # å‰ç«¯ä¸“用 reviewer(feature-review å‰ç«¯é˜¶æ®µè°ƒç”¨ï¼Œ7 ç»´ review)
84 └── skills/ 84 └── skills/
85 ├── plan/ # 计划阶段:3 个一次性规划 skill 85 ├── plan/ # 计划阶段:3 个一次性规划 skill
86 - │ ├── lite-init/  
87 - │ ├── lite-design/  
88 - │ └── lite-build-db/ 86 + │ ├── init/
  87 + │ ├── design/
  88 + │ └── build-db/
89 ├── coding/ # ç¼–ç é˜¶æ®µï¼š5 个 skill(两阶段共用统一功能循环) 89 ├── coding/ # ç¼–ç é˜¶æ®µï¼š5 个 skill(两阶段共用统一功能循环)
90 │ ├── phase-driver/ 90 │ ├── phase-driver/
91 │ ├── feature-spec/ 91 │ ├── feature-spec/
@@ -100,7 +100,7 @@ erp-workflow-plugin/ @@ -100,7 +100,7 @@ erp-workflow-plugin/
100 100
101 ## Hook æ¸…å• 101 ## Hook 清å•
102 102
103 -lite 版本**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åŠ¨é¡»åœ¨ `milestone` å®ŒæˆæŠ¥å‘Šçš„ã€Œå离与å–èˆã€èŠ‚äººå·¥è®°å½•ã€‚ 103 +本æ’ä»¶**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åŠ¨é¡»åœ¨ `milestone` å®ŒæˆæŠ¥å‘Šçš„ã€Œå离与å–èˆã€èŠ‚äººå·¥è®°å½•ã€‚
104 104
105 ## Skill 清å•(11 个) 105 ## Skill 清å•(11 个)
106 106
@@ -116,9 +116,9 @@ lite 版本**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åЍ须 @@ -116,9 +116,9 @@ lite 版本**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åЍ须
116 116
117 | Skill | 作用 | æµç¨‹ä¸­è°è°ƒç”¨ | 117 | Skill | 作用 | æµç¨‹ä¸­è°è°ƒç”¨ |
118 |---|---|---| 118 |---|---|---|
119 -| `lite-init` | 计划 ①:ä¾èµ–检查 / git init / 创建 CLAUDE.md + docs/01/index.md + docs/04 § é›¶ + docs/08;引导填项目概述 / 技术栈 / 需求索引;按模å—ç”Ÿæˆ REQ å¡ç‰‡éª¨æž¶ï¼›**åœä¸‹**等人工审阅 REQ | `plan-start` |  
120 -| `lite-design` | 计划 â‘¡ï¼šç”Ÿæˆ docs/04 架构规范大纲 + scripts(test.sh / setup-test-db.sh)+ .env.local + .gitignore åˆå¹¶ï¼›ä»Ž docs/01 REQ æ­£å‘设计 `docs/03-æ•°æ®åº“设计文档.md`(schema SSoT);**åœä¸‹**等人工审阅 docs/03 | `plan-start` |  
121 -| `lite-build-db` | 计划 â‘¢ï¼šè§£æž docs/03 → `sql/migrations/V1__initial_schema.sql`(5 维度校验 DDL ↔ docs/03)→ DROP+CREATE 本地 schema å¹¶ apply V1ï¼›ç”Ÿæˆ docs/05 API 契约 + 回填 REQ ä¾èµ–接å£ï¼›è¿½åŠ æ¨¡å—æ¸…å•到 docs/08 § äºŒï¼›æ‰“å° Plan å®Œæˆæ¨ªå¹…å¹¶**åœä¸‹** | `plan-start` | 119 +| `init` | 计划 ①:ä¾èµ–检查 / git init / 创建 CLAUDE.md + docs/01/index.md + docs/04 § é›¶ + docs/08;引导填项目概述 / 技术栈 / 需求索引;按模å—ç”Ÿæˆ REQ å¡ç‰‡éª¨æž¶ï¼›**åœä¸‹**等人工审阅 REQ | `plan-start` |
  120 +| `design` | 计划 â‘¡ï¼šç”Ÿæˆ docs/04 架构规范大纲 + scripts(test.sh / setup-test-db.sh)+ .env.local + .gitignore åˆå¹¶ï¼›ä»Ž docs/01 REQ æ­£å‘设计 `docs/03-æ•°æ®åº“设计文档.md`(schema SSoT);**åœä¸‹**等人工审阅 docs/03 | `plan-start` |
  121 +| `build-db` | 计划 â‘¢ï¼šè§£æž docs/03 → `sql/migrations/V1__initial_schema.sql`(5 维度校验 DDL ↔ docs/03)→ DROP+CREATE 本地 schema å¹¶ apply V1ï¼›ç”Ÿæˆ docs/05 API 契约 + 回填 REQ ä¾èµ–接å£ï¼›è¿½åŠ æ¨¡å—æ¸…å•到 docs/08 § äºŒï¼›æ‰“å° Plan å®Œæˆæ¨ªå¹…å¹¶**åœä¸‹** | `plan-start` |
122 122
123 ### ç¼–ç é˜¶æ®µï¼ˆ`skills/coding/`) 123 ### ç¼–ç é˜¶æ®µï¼ˆ`skills/coding/`)
124 124
@@ -143,29 +143,29 @@ lite 版本**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åЍ须 @@ -143,29 +143,29 @@ lite 版本**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åЍ须
143 143
144 | 所属 Skill | Banner 文件 | 用途 | 144 | 所属 Skill | Banner 文件 | 用途 |
145 |---|---|---| 145 |---|---|---|
146 -| `plan-start` | `banners/flow-lite.txt` | 整体æµç¨‹å›¾ï¼ˆâ–¶ 标在 plan-start åˆ†å‘æ¨ªå¹…å‰ï¼‰ |  
147 -| `coding-start` | `banners/flow-lite.txt` | 整体æµç¨‹å›¾ï¼ˆâ–¶ 标在 coding-start åˆ†å‘æ¨ªå¹…å‰ï¼‰ | 146 +| `plan-start` | `banners/flow.txt` | 整体æµç¨‹å›¾ï¼ˆâ–¶ 标在 plan-start åˆ†å‘æ¨ªå¹…å‰ï¼‰ |
  147 +| `coding-start` | `banners/flow.txt` | 整体æµç¨‹å›¾ï¼ˆâ–¶ 标在 coding-start åˆ†å‘æ¨ªå¹…å‰ï¼‰ |
148 148
149 ## Templates 清å•(22 ä»½æ¨¡æ¿æ–‡ä»¶ï¼Œ21 个ä¸åŒå——`commit-message-template.md` ç”± feature-tdd / feature-review 儿Œä¸€ä»½ï¼‰ 149 ## Templates 清å•(22 ä»½æ¨¡æ¿æ–‡ä»¶ï¼Œ21 个ä¸åŒå——`commit-message-template.md` ç”± feature-tdd / feature-review 儿Œä¸€ä»½ï¼‰
150 150
151 | 所属 Skill | æ¨¡æ¿æ–‡ä»¶ | 用途 | 151 | 所属 Skill | æ¨¡æ¿æ–‡ä»¶ | 用途 |
152 |---|---|---| 152 |---|---|---|
153 -| `lite-init` | `CLAUDE-template.md` | 项目根的 CLAUDE.md(4 æ¡é€šç”¨å‡†åˆ™ + ERP 专属约定 + skill 索引) |  
154 -| `lite-init` | `docs-01-index-template.md` | 需求清å•索引骨架 |  
155 -| `lite-init` | `docs-08-initial-template.md` | 工作æµè¿›åº¦æ–‡ä»¶éª¨æž¶ï¼ˆPlan â‘ â‘¡â‘¢ checkbox) |  
156 -| `lite-init` | `docs-04-stack-template.md` | docs/04 § é›¶ 默认技术栈总览(零槽ä½ï¼Œcp å³å¯ï¼‰ |  
157 -| `lite-init` | `req-card-template.md` | å•å¼  REQ-XXX-NNN å¡ç‰‡éª¨æž¶ï¼ˆ6 个 `{{...}}` å ä½ç¬¦ç”± CC 替æ¢ï¼‰ |  
158 -| `lite-init` | `_module-template.md` | 模å—å­ç›®å½•çš„ `_module.md` 模å—头 |  
159 -| `lite-design` | `docs-04-skeleton-template.md` | docs/04 § 一+ ç¼–ç è§„范大纲 |  
160 -| `lite-design` | `docs-03-header-template.md` | docs/03 æ•°æ®åº“设计头部 |  
161 -| `lite-design` | `docs-03-table-template.md` | docs/03 å•表å°èŠ‚æ¨¡æ¿ |  
162 -| `lite-design` | `scripts-setup-test-db-template.sh` | drop + create 空库脚本(0 æ§½ä½ï¼‰ |  
163 -| `lite-design` | `scripts-test-template.sh` | test.sh 骨架(多个命令槽ä½ï¼Œç”± lite-design 按技术栈推断填充) |  
164 -| `lite-design` | `env-local-template` | 6 å­—æ®µå‡­æ®æ¨¡æ¿ï¼ˆDB_* + JWT_SECRET) |  
165 -| `lite-design` | `gitignore-append-template` | æ’件推è忽略项(`.env.local`ã€`.tmp/`ã€æž„建产物等) |  
166 -| `lite-build-db` | `docs-05-header-template.md` | docs/05 API 契约头部 |  
167 -| `lite-build-db` | `docs-05-endpoint-template.md` | docs/05 啿ޥå£å°èŠ‚ |  
168 -| `lite-build-db` | `docs-08-module-row-template.md` | docs/08 § 二 啿¨¡å— bullet 行 | 153 +| `init` | `CLAUDE-template.md` | 项目根的 CLAUDE.md(4 æ¡é€šç”¨å‡†åˆ™ + ERP 专属约定 + skill 索引) |
  154 +| `init` | `docs-01-index-template.md` | 需求清å•索引骨架 |
  155 +| `init` | `docs-08-initial-template.md` | 工作æµè¿›åº¦æ–‡ä»¶éª¨æž¶ï¼ˆPlan â‘ â‘¡â‘¢ checkbox) |
  156 +| `init` | `docs-04-stack-template.md` | docs/04 § é›¶ 默认技术栈总览(零槽ä½ï¼Œcp å³å¯ï¼‰ |
  157 +| `init` | `req-card-template.md` | å•å¼  REQ-XXX-NNN å¡ç‰‡éª¨æž¶ï¼ˆ6 个 `{{...}}` å ä½ç¬¦ç”± CC 替æ¢ï¼‰ |
  158 +| `init` | `_module-template.md` | 模å—å­ç›®å½•çš„ `_module.md` 模å—头 |
  159 +| `design` | `docs-04-skeleton-template.md` | docs/04 § 一+ ç¼–ç è§„范大纲 |
  160 +| `design` | `docs-03-header-template.md` | docs/03 æ•°æ®åº“设计头部 |
  161 +| `design` | `docs-03-table-template.md` | docs/03 å•表å°èŠ‚æ¨¡æ¿ |
  162 +| `design` | `scripts-setup-test-db-template.sh` | drop + create 空库脚本(0 æ§½ä½ï¼‰ |
  163 +| `design` | `scripts-test-template.sh` | test.sh 骨架(多个命令槽ä½ï¼Œç”± design 按技术栈推断填充) |
  164 +| `design` | `env-local-template` | 6 å­—æ®µå‡­æ®æ¨¡æ¿ï¼ˆDB_* + JWT_SECRET) |
  165 +| `design` | `gitignore-append-template` | æ’件推è忽略项(`.env.local`ã€`.tmp/`ã€æž„建产物等) |
  166 +| `build-db` | `docs-05-header-template.md` | docs/05 API 契约头部 |
  167 +| `build-db` | `docs-05-endpoint-template.md` | docs/05 啿ޥå£å°èŠ‚ |
  168 +| `build-db` | `docs-08-module-row-template.md` | docs/08 § 二 啿¨¡å— bullet 行 |
169 | `feature-spec` | `feature-spec-plan-template.md` | 功能规格 + 任务级计划åˆå¹¶æ–‡æ¡£ | 169 | `feature-spec` | `feature-spec-plan-template.md` | 功能规格 + 任务级计划åˆå¹¶æ–‡æ¡£ |
170 | `feature-review` | `feature-review-template.md` | 自审报告结构 | 170 | `feature-review` | `feature-review-template.md` | 自审报告结构 |
171 | `feature-review` | `commit-message-template.md` | review fix commit ä¿¡æ¯ | 171 | `feature-review` | `commit-message-template.md` | review fix commit ä¿¡æ¯ |
@@ -177,21 +177,21 @@ lite 版本**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åЍ须 @@ -177,21 +177,21 @@ lite 版本**æ—  Hook**â€”â€”è·¨æ¨¡å—æ”¹åŠ¨ç•™ç—•å·²ç§»é™¤ã€‚è·¨æ¨¡å—æ”¹åЍ须
177 177
178 | 所属 Skill | 脚本文件 | 用途 | 178 | 所属 Skill | 脚本文件 | 用途 |
179 |---|---|---| 179 |---|---|---|
180 -| `lite-init` | `scripts/render.sh` | 渲染å•个 `_module.md` 或 `REQ-*.md`ï¼ˆæ›¿æ¢ 6 个å ä½ç¬¦ï¼‰ |  
181 -| `lite-design` | `scripts/merge-gitignore.sh` | åˆå¹¶ .gitignore(é€è¡Œåˆ¤é‡ï¼‰ | 180 +| `init` | `scripts/render.sh` | 渲染å•个 `_module.md` 或 `REQ-*.md`ï¼ˆæ›¿æ¢ 6 个å ä½ç¬¦ï¼‰ |
  181 +| `design` | `scripts/merge-gitignore.sh` | åˆå¹¶ .gitignore(é€è¡Œåˆ¤é‡ï¼‰ |
182 182
183 **æµç¨‹ä½¿ç”¨æƒ…况**:所有模æ¿éƒ½è¢«å¯¹åº” skill çš„ `SKILL.md` 引用,没有孤儿模æ¿ã€‚ 183 **æµç¨‹ä½¿ç”¨æƒ…况**:所有模æ¿éƒ½è¢«å¯¹åº” skill çš„ `SKILL.md` 引用,没有孤儿模æ¿ã€‚
184 184
185 ## å‰ç½®ä¾èµ– 185 ## å‰ç½®ä¾èµ–
186 186
187 -- **MySQL 8.x** å®žä¾‹å·²å°±ç»ªï¼ˆæŽ¨èæœ¬åœ° / `*.local` hostï¼›`lite-build-db` çš„å®‰å…¨å®ˆæŠ¤è¦æ±‚ host 在白åå•且 schema åå« `test`/`dev`/`local`,é¿å…误删生产库)  
188 -- **`mysql` 命令行**:`lite-build-db` 验è¯è¿žæŽ¥ + 自动 `DROP+CREATE` schema åŽ apply V1ï¼›`scripts/setup-test-db.sh` 在测试闸门å‰åŽ drop+create 空库 187 +- **MySQL 8.x** å®žä¾‹å·²å°±ç»ªï¼ˆæŽ¨èæœ¬åœ° / `*.local` hostï¼›`build-db` çš„å®‰å…¨å®ˆæŠ¤è¦æ±‚ host 在白åå•且 schema åå« `test`/`dev`/`local`,é¿å…误删生产库)
  188 +- **`mysql` 命令行**:`build-db` 验è¯è¿žæŽ¥ + 自动 `DROP+CREATE` schema åŽ apply V1ï¼›`scripts/setup-test-db.sh` 在测试闸门å‰åŽ drop+create 空库
189 - **Spring Boot + Flyway**(**必需**):pom.xml 声明 `flyway-core` + `flyway-mysql`ï¼›Spring å¯åŠ¨æ—¶è‡ªåŠ¨ apply `sql/migrations/V*.sql`。本æ’件生æˆçš„ `setup-test-db.sh` åªæ¸…库,schema 必须由 Flyway 应用 189 - **Spring Boot + Flyway**(**必需**):pom.xml 声明 `flyway-core` + `flyway-mysql`ï¼›Spring å¯åŠ¨æ—¶è‡ªåŠ¨ apply `sql/migrations/V*.sql`。本æ’件生æˆçš„ `setup-test-db.sh` åªæ¸…库,schema 必须由 Flyway 应用
190 -- **本地 git 仓库**(纯本地,**无需远程 / push / GitLab**):`lite-init` 执行 `git init`;编ç é˜¶æ®µæ¯æ¨¡å—ç”± `milestone` 本地 `git merge --no-ff` 进默认分支并 `git tag -a milestone/<id>`,完æˆä¿¡å·ç”± `git tag -l` 判定  
191 -- **本地å¯è¿è¡Œ `mvn test` / `pnpm test`**:测试闸门 `scripts/test.sh` ç”± `lite-design` ç”Ÿæˆ 190 +- **本地 git 仓库**(纯本地,**无需远程 / push / GitLab**):`init` 执行 `git init`;编ç é˜¶æ®µæ¯æ¨¡å—ç”± `milestone` 本地 `git merge --no-ff` 进默认分支并 `git tag -a milestone/<id>`,完æˆä¿¡å·ç”± `git tag -l` 判定
  191 +- **本地å¯è¿è¡Œ `mvn test` / `pnpm test`**:测试闸门 `scripts/test.sh` ç”± `design` 生æˆ
192 192
193 ## 设计原则 193 ## 设计原则
194 194
195 -å‚è§ `lite-init/templates/CLAUDE-template.md` 末尾的「通用工作准则ã€4 æ¡ï¼šâ‘  Think Before Coding â‘¡ Simplicity First â‘¢ Surgical Changes â‘£ Goal-Driven Execution。 195 +å‚è§ `init/templates/CLAUDE-template.md` 末尾的「通用工作准则ã€4 æ¡ï¼šâ‘  Think Before Coding â‘¡ Simplicity First â‘¢ Surgical Changes â‘£ Goal-Driven Execution。
196 196
197 最关键的 1 æ¡ï¼š"**æ‰€æœ‰æµ‹è¯•ä¸ŽéªŒè¯æ´¾å‘到全新å­ä¼šè¯æ‰§è¡Œï¼Œä¸»ä¼šè¯åªæŽ¥æ”¶ç»“构化结论**"——é¿å…主会è¯è¢«æµ‹è¯•è¾“å‡ºæ±¡æŸ“ï¼Œå¹¶è®©æµ‹è¯•ç»“æžœä½œä¸ºç‹¬ç«‹è¯æ®å­˜æ¡£ã€‚ 197 最关键的 1 æ¡ï¼š"**æ‰€æœ‰æµ‹è¯•ä¸ŽéªŒè¯æ´¾å‘到全新å­ä¼šè¯æ‰§è¡Œï¼Œä¸»ä¼šè¯åªæŽ¥æ”¶ç»“构化结论**"——é¿å…主会è¯è¢«æµ‹è¯•è¾“å‡ºæ±¡æŸ“ï¼Œå¹¶è®©æµ‹è¯•ç»“æžœä½œä¸ºç‹¬ç«‹è¯æ®å­˜æ¡£ã€‚
skills/coding/milestone/SKILL.md
1 --- 1 ---
2 name: milestone 2 name: milestone
3 -description: 单元(后端模块 / 前端阶段)全部 approve 后的收尾闸门:子会话跑测试 → 写精简完成报告 → 本地 merge 进默认分支 + 打 milestone/<id> tag + 回写 docs/08 → 自动回调 coding-start。phase 由当前分支推断。 3 +description: 单元(后端模块 / 前端阶段)全部 approve 后的收尾闸门:子会话跑测试 → 写完成报告 → 本地 merge 进默认分支 + 打 milestone/<id> tag + 回写 docs/08 → 自动回调 coding-start。phase 由当前分支推断。
4 user-invocable: false 4 user-invocable: false
5 allowed-tools: Read Write Edit Skill Agent Bash(git *) 5 allowed-tools: Read Write Edit Skill Agent Bash(git *)
6 --- 6 ---
@@ -13,7 +13,7 @@ allowed-tools: Read Write Edit Skill Agent Bash(git *) @@ -13,7 +13,7 @@ allowed-tools: Read Write Edit Skill Agent Bash(git *)
13 13
14 1. **推断 phase**(分支名 → backend / frontend) 14 1. **推断 phase**(分支名 → backend / frontend)
15 2. **测试闸门**(子会话跑测试,绿才能继续) 15 2. **测试闸门**(子会话跑测试,绿才能继续)
16 -3. **精简完成报告**(6 节,commit 到当前分支) 16 +3. **完成报告**(6 节,commit 到当前分支)
17 4. **本地集成 + tag + 回写 docs/08 + 自动回调** 17 4. **本地集成 + tag + 回写 docs/08 + 自动回调**
18 18
19 ## 阶段 0:推断 phase 与关键变量 19 ## 阶段 0:推断 phase 与关键变量
@@ -76,7 +76,7 @@ allowed-tools: Read Write Edit Skill Agent Bash(git *) @@ -76,7 +76,7 @@ allowed-tools: Read Write Edit Skill Agent Bash(git *)
76 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 76 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
77 ``` 77 ```
78 78
79 -## 阶段 2:精简完成报告 79 +## 阶段 2:完成报告
80 80
81 > **核心约束:只收集 git 摘要,绝不把 diff 正文读入主会话上下文。** 81 > **核心约束:只收集 git 摘要,绝不把 diff 正文读入主会话上下文。**
82 82
@@ -200,6 +200,6 @@ coding-start 重新检查后端 / 前端完成性(按 `里程碑:` 字段 + `g @@ -200,6 +200,6 @@ coding-start 重新检查后端 / 前端完成性(按 `里程碑:` 字段 + `g
200 200
201 ## 参考 201 ## 参考
202 202
203 -- `${CLAUDE_SKILL_DIR}/templates/milestone-report-template.md`(6 节精简报告) 203 +- `${CLAUDE_SKILL_DIR}/templates/milestone-report-template.md`(6 节完成报告)
204 - 上游:`phase-driver`(后端所有 REQ / 前端所有 FE 全部 approve 后派发到此) 204 - 上游:`phase-driver`(后端所有 REQ / 前端所有 FE 全部 approve 后派发到此)
205 - 下游:`coding-start`(自治回调,由其路由下一阶段) 205 - 下游:`coding-start`(自治回调,由其路由下一阶段)
skills/crosscut/coding-start/SKILL.md
@@ -13,10 +13,10 @@ allowed-tools: Skill Read Glob Grep Bash(cat *) Bash(git tag *) @@ -13,10 +13,10 @@ allowed-tools: Skill Read Glob Grep Bash(cat *) Bash(git tag *)
13 13
14 ### 步骤 0:打印流程图 14 ### 步骤 0:打印流程图
15 15
16 -**第一件事**:打印 lite 整体流程图。 16 +**第一件事**:打印 整体流程图。
17 17
18 ```bash 18 ```bash
19 -cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/coding-start/banners/flow-lite.txt" 19 +cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/coding-start/banners/flow.txt"
20 ``` 20 ```
21 21
22 ### 步骤 1:确认 docs/08 存在 22 ### 步骤 1:确认 docs/08 存在
@@ -26,7 +26,7 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/coding-start/banners/flow-lite.txt&quot; @@ -26,7 +26,7 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/coding-start/banners/flow-lite.txt&quot;
26 26
27 ### 步骤 2:计划完成性检查 27 ### 步骤 2:计划完成性检查
28 28
29 -读取 `docs/08-模块任务管理.md § 一`,判断 ①②③ 三个 lite 计划阶段是否**全部勾选**(含各阶段子项)。 29 +读取 `docs/08-模块任务管理.md § 一`,判断 ①②③ 三个 计划阶段是否**全部勾选**(含各阶段子项)。
30 30
31 - 任一未勾选 → 提示用户先运行 `/erp-workflow:plan-start` 完成计划阶段,并停下。 31 - 任一未勾选 → 提示用户先运行 `/erp-workflow:plan-start` 完成计划阶段,并停下。
32 - 全部勾选 → 进入步骤 3。 32 - 全部勾选 → 进入步骤 3。
skills/crosscut/coding-start/banners/flow-lite.txt renamed to skills/crosscut/coding-start/banners/flow.txt
1 ┌────────────────────────────────────────────────────────┐ 1 ┌────────────────────────────────────────────────────────┐
2 -│ erp-workflow-lite 2 +│ erp-workflow
3 │ │ 3 │ │
4 │ 计划(/plan-start,一次性,2 个审阅断点) │ 4 │ 计划(/plan-start,一次性,2 个审阅断点) │
5 -│ ① lite-init 初始化 + REQ 卡片 ⏸ 审阅 REQ │  
6 -│ ② lite-design 脚手架 + docs/03 ⏸ 审阅 schema │  
7 -│ ③ lite-build-db V1+apply + docs/05/08 │ 5 +│ ① init 初始化 + REQ 卡片 ⏸ 审阅 REQ │
  6 +│ ② design 脚手架 + docs/03 ⏸ 审阅 schema │
  7 +│ ③ build-db V1+apply + docs/05/08 │
8 │ │ 8 │ │
9 │ 编码(/coding-start,统一功能循环) │ 9 │ 编码(/coding-start,统一功能循环) │
10 │ 后端模块循环 ┐ │ 10 │ 后端模块循环 ┐ │
skills/crosscut/plan-start/SKILL.md
1 --- 1 ---
2 name: plan-start 2 name: plan-start
3 -description: 计划阶段(Plan)入口与分发器。根据 docs/08 § 一 的 checkbox 状态派发到 ①②③ 对应的 lite 计划 skill。三阶段全部完成后打印提示让用户运行 /erp-workflow:coding-start 进入编码阶段。 3 +description: 计划阶段(Plan)入口与分发器。根据 docs/08 § 一 的 checkbox 状态派发到 ①②③ 对应的 计划 skill。三阶段全部完成后打印提示让用户运行 /erp-workflow:coding-start 进入编码阶段。
4 user-invocable: true 4 user-invocable: true
5 allowed-tools: Skill Read Glob Grep Bash(cat *) 5 allowed-tools: Skill Read Glob Grep Bash(cat *)
6 --- 6 ---
@@ -11,10 +11,10 @@ allowed-tools: Skill Read Glob Grep Bash(cat *) @@ -11,10 +11,10 @@ allowed-tools: Skill Read Glob Grep Bash(cat *)
11 11
12 ## 步骤 0:打印流程图 12 ## 步骤 0:打印流程图
13 13
14 -**第一件事**:打印 lite 整体流程图。 14 +**第一件事**:打印 整体流程图。
15 15
16 ```bash 16 ```bash
17 -cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt" 17 +cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow.txt"
18 ``` 18 ```
19 19
20 ## 步骤 1:读取 docs/08 + 决定分发目标 20 ## 步骤 1:读取 docs/08 + 决定分发目标
@@ -22,15 +22,15 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt&quot; @@ -22,15 +22,15 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt&quot;
22 docs/08 § 一 是**计划阶段进度追踪**(①②③ 的 checkbox)。 22 docs/08 § 一 是**计划阶段进度追踪**(①②③ 的 checkbox)。
23 23
24 用 `Glob` 检查 `docs/08-模块任务管理.md` 是否存在: 24 用 `Glob` 检查 `docs/08-模块任务管理.md` 是否存在:
25 -- 不存在 → 后续 = `lite-init`(对应阶段 ①) 25 +- 不存在 → 后续 = `init`(对应阶段 ①)
26 26
27 -若存在,读取 `docs/08-模块任务管理.md § 一`,找到**第一个未勾选(`- [ ]`)的 lite 计划阶段**: 27 +若存在,读取 `docs/08-模块任务管理.md § 一`,找到**第一个未勾选(`- [ ]`)的 计划阶段**:
28 28
29 | 进度 | 后续 | 29 | 进度 | 后续 |
30 |---|---| 30 |---|---|
31 -| 无 docs/08,或 ① 未勾选 | `lite-init` |  
32 -| ① 已勾、② 未勾选 | `lite-design` |  
33 -| ①② 已勾、③ 未勾选 | `lite-build-db` | 31 +| 无 docs/08,或 ① 未勾选 | `init` |
  32 +| ① 已勾、② 未勾选 | `design` |
  33 +| ①② 已勾、③ 未勾选 | `build-db` |
34 | ①②③ 全部勾选 | **无分发**(计划阶段结束) | 34 | ①②③ 全部勾选 | **无分发**(计划阶段结束) |
35 35
36 ## 步骤 2:分发通知 + 调用目标 skill 36 ## 步骤 2:分发通知 + 调用目标 skill
@@ -68,12 +68,12 @@ docs/08 § 一 是**计划阶段进度追踪**(①②③ 的 checkbox)。 @@ -68,12 +68,12 @@ docs/08 § 一 是**计划阶段进度追踪**(①②③ 的 checkbox)。
68 ``` 68 ```
69 69
70 立即用 `Skill` 工具调用 `后续`: 70 立即用 `Skill` 工具调用 `后续`:
71 -- ① → `Skill(lite-init)`  
72 -- ② → `Skill(lite-design)`  
73 -- ③ → `Skill(lite-build-db)` 71 +- ① → `Skill(init)`
  72 +- ② → `Skill(design)`
  73 +- ③ → `Skill(build-db)`
74 74
75 ## 参考 75 ## 参考
76 76
77 - `docs/08-模块任务管理.md § 一`(计划阶段进度追踪,①②③ checkbox) 77 - `docs/08-模块任务管理.md § 一`(计划阶段进度追踪,①②③ checkbox)
78 - `CLAUDE.md`(项目指令) 78 - `CLAUDE.md`(项目指令)
79 -- 后续 skills(通过 `Skill` 工具按名称调用):`lite-init`、`lite-design`、`lite-build-db` 79 +- 后续 skills(通过 `Skill` 工具按名称调用):`init`、`design`、`build-db`
skills/crosscut/plan-start/banners/flow-lite.txt renamed to skills/crosscut/plan-start/banners/flow.txt
1 ┌────────────────────────────────────────────────────────┐ 1 ┌────────────────────────────────────────────────────────┐
2 -│ erp-workflow-lite 2 +│ erp-workflow
3 │ │ 3 │ │
4 │ 计划(/plan-start,一次性,2 个审阅断点) │ 4 │ 计划(/plan-start,一次性,2 个审阅断点) │
5 -│ ① lite-init 初始化 + REQ 卡片 ⏸ 审阅 REQ │  
6 -│ ② lite-design 脚手架 + docs/03 ⏸ 审阅 schema │  
7 -│ ③ lite-build-db V1+apply + docs/05/08 │ 5 +│ ① init 初始化 + REQ 卡片 ⏸ 审阅 REQ │
  6 +│ ② design 脚手架 + docs/03 ⏸ 审阅 schema │
  7 +│ ③ build-db V1+apply + docs/05/08 │
8 │ │ 8 │ │
9 │ 编码(/coding-start,统一功能循环) │ 9 │ 编码(/coding-start,统一功能循环) │
10 │ 后端模块循环 ┐ │ 10 │ 后端模块循环 ┐ │
skills/plan/lite-build-db/SKILL.md renamed to skills/plan/build-db/SKILL.md
1 --- 1 ---
2 -name: lite-build-db 2 +name: build-db
3 description: 计划第 3 段——解析 docs/03 → V1 migration + validate.sh 校验 + apply 到本地 MySQL;生成 docs/05 API 契约 + 回填 REQ 依赖接口;计算模块/REQ 依赖顺序写入 docs/08 § 二(排序权威);最终占位符扫描后停下(计划完成)。 3 description: 计划第 3 段——解析 docs/03 → V1 migration + validate.sh 校验 + apply 到本地 MySQL;生成 docs/05 API 契约 + 回填 REQ 依赖接口;计算模块/REQ 依赖顺序写入 docs/08 § 二(排序权威);最终占位符扫描后停下(计划完成)。
4 user-invocable: false 4 user-invocable: false
5 allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bash(mysql *) Bash(set *) Bash(. .env.local) Bash(grep *) Bash(bash *) Bash(./scripts/setup-test-db.sh) Bash(cat *) Bash(cp *) 5 allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bash(mysql *) Bash(set *) Bash(. .env.local) Bash(grep *) Bash(bash *) Bash(./scripts/setup-test-db.sh) Bash(cat *) Bash(cp *)
@@ -7,7 +7,7 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas @@ -7,7 +7,7 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas
7 7
8 **所有输出必须使用中文。** 8 **所有输出必须使用中文。**
9 9
10 -# lite-build-db 10 +# build-db
11 11
12 ## 执行步骤 12 ## 执行步骤
13 13
@@ -16,10 +16,10 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas @@ -16,10 +16,10 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas
16 用 `Bash` 执行以下命令(文件不存在时静默忽略,不报错): 16 用 `Bash` 执行以下命令(文件不存在时静默忽略,不报错):
17 17
18 ```bash 18 ```bash
19 -cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt" 2>/dev/null || true 19 +cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow.txt" 2>/dev/null || true
20 ``` 20 ```
21 21
22 -打印横幅:`▶ 计划阶段 ③ — lite-build-db`。 22 +打印横幅:`▶ 计划阶段 ③ — build-db`。
23 23
24 ### A. DDL 生成(不依赖数据库连接) 24 ### A. DDL 生成(不依赖数据库连接)
25 25
@@ -46,7 +46,7 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt&quot; 2&gt;/ @@ -46,7 +46,7 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt&quot; 2&gt;/
46 1. **头部注释**(6 行 SQL 注释): 46 1. **头部注释**(6 行 SQL 注释):
47 - `-- Flyway migration V1 — initial schema for <project_name>`(从 `CLAUDE.md § 🎯 项目概述` 读) 47 - `-- Flyway migration V1 — initial schema for <project_name>`(从 `CLAUDE.md § 🎯 项目概述` 读)
48 - `-- Generated: <YYYY-MM-DDTHH:MM:SSZ>`(UTC ISO 8601 时间戳) 48 - `-- Generated: <YYYY-MM-DDTHH:MM:SSZ>`(UTC ISO 8601 时间戳)
49 - - `-- Source: 由计划 ③ lite-build-db 从 docs/03-数据库设计文档.md 翻译生成(schema SSoT 是 docs/03)` 49 + - `-- Source: 由计划 ③ build-db 从 docs/03-数据库设计文档.md 翻译生成(schema SSoT 是 docs/03)`
50 - `-- This is the FIRST migration; subsequent schema changes must be written as new files sql/migrations/V2__<desc>.sql, V3__... etc.` 50 - `-- This is the FIRST migration; subsequent schema changes must be written as new files sql/migrations/V2__<desc>.sql, V3__... etc.`
51 - `-- Apply: Flyway runs this automatically at Spring Boot startup.` 51 - `-- Apply: Flyway runs this automatically at Spring Boot startup.`
52 - `-- Do not hand-edit this file after it is committed; write a new migration instead.` 52 - `-- Do not hand-edit this file after it is committed; write a new migration instead.`
@@ -78,7 +78,7 @@ bash &quot;${CLAUDE_SKILL_DIR}/scripts/validate.sh&quot; \ @@ -78,7 +78,7 @@ bash &quot;${CLAUDE_SKILL_DIR}/scripts/validate.sh&quot; \
78 78
79 #### B.1 检查 .env.local 凭据 79 #### B.1 检查 .env.local 凭据
80 80
81 -用 `Glob` 检查 `.env.local` 是否存在;不存在 → 提示用户重新运行计划 ② `lite-design` 重建并停下。 81 +用 `Glob` 检查 `.env.local` 是否存在;不存在 → 提示用户重新运行计划 ② `design` 重建并停下。
82 82
83 用 `Bash` 加载并校验 5 个必填字段非空: 83 用 `Bash` 加载并校验 5 个必填字段非空:
84 84
@@ -147,10 +147,10 @@ EXPECTED=$(grep -c &#39;^## `&#39; docs/03-数据库设计文档.md) @@ -147,10 +147,10 @@ EXPECTED=$(grep -c &#39;^## `&#39; docs/03-数据库设计文档.md)
147 147
148 #### D.2 回填模块头 + REQ 卡片的 TBD 字段 148 #### D.2 回填模块头 + REQ 卡片的 TBD 字段
149 149
150 -1. 在 `docs/01-需求清单/*/_module.md`(模块头)和 `docs/01-需求清单/*/REQ-*.md`(REQ 卡片)中搜索 `TBD(lite-build-db 自动补)` 并回填。**不动** `TBD(lite-design 自动补)`(应已由 lite-design 回填完毕)。 150 +1. 在 `docs/01-需求清单/*/_module.md`(模块头)和 `docs/01-需求清单/*/REQ-*.md`(REQ 卡片)中搜索 `TBD(build-db 自动补)` 并回填。**不动** `TBD(design 自动补)`(应已由 design 回填完毕)。
151 - `_module.md` 的 `依赖模块` 字段:填入该模块所依赖的其他模块 ID(逗号分隔,无则填 `—`) 151 - `_module.md` 的 `依赖模块` 字段:填入该模块所依赖的其他模块 ID(逗号分隔,无则填 `—`)
152 - `REQ-*.md` 的 `依赖接口` 字段:填入该 REQ 依赖的接口路径(逗号分隔,无则填 `—`) 152 - `REQ-*.md` 的 `依赖接口` 字段:填入该 REQ 依赖的接口路径(逗号分隔,无则填 `—`)
153 -2. 打印回填统计:`lite-build-db 回填 <M> 处模块"依赖模块" + <N> 处 REQ"依赖接口"`。 153 +2. 打印回填统计:`build-db 回填 <M> 处模块"依赖模块" + <N> 处 REQ"依赖接口"`。
154 154
155 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: 155 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选:
156 - ` - [ ] docs/05 API 契约已生成 + 回填 REQ 依赖接口` 156 - ` - [ ] docs/05 API 契约已生成 + 回填 REQ 依赖接口`
@@ -205,7 +205,7 @@ EXPECTED=$(grep -c &#39;^## `&#39; docs/03-数据库设计文档.md) @@ -205,7 +205,7 @@ EXPECTED=$(grep -c &#39;^## `&#39; docs/03-数据库设计文档.md)
205 205
206 #### F.2 最终占位符扫描 206 #### F.2 最终占位符扫描
207 207
208 -a. **`TBD` → 自动补齐**:Grep 搜索 `TBD(lite-design 自动补)` 和 `TBD(lite-build-db 自动补)`。有命中则就地补填(lite-design 残留 → 查 docs/03 填 `依赖表`;lite-build-db 残留 → 查 docs/05 按 REQ-ID 填 `依赖接口`),再 Grep 确认 0 命中;仍残留报错停下。 208 +a. **`TBD` → 自动补齐**:Grep 搜索 `TBD(design 自动补)` 和 `TBD(build-db 自动补)`。有命中则就地补填(design 残留 → 查 docs/03 填 `依赖表`;build-db 残留 → 查 docs/05 按 REQ-ID 填 `依赖接口`),再 Grep 确认 0 命中;仍残留报错停下。
209 209
210 b. **`【人工填写:...】` → QA 循环等用户补**: 210 b. **`【人工填写:...】` → QA 循环等用户补**:
211 211
@@ -218,13 +218,13 @@ b. **`【人工填写:...】` → QA 循环等用户补**: @@ -218,13 +218,13 @@ b. **`【人工填写:...】` → QA 循环等用户补**:
218 #### F.3 勾选 § 一 ③ 顶层 + 打印计划完成横幅 218 #### F.3 勾选 § 一 ③ 顶层 + 打印计划完成横幅
219 219
220 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选 ③ 顶层: 220 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选 ③ 顶层:
221 -- `- [ ] 计划 ③ DB 初始化 + 下游文档 — lite-build-db` 221 +- `- [ ] 计划 ③ DB 初始化 + 下游文档 — build-db`
222 222
223 打印计划阶段终止横幅并**停下**(不自动进入 coding 阶段): 223 打印计划阶段终止横幅并**停下**(不自动进入 coding 阶段):
224 224
225 ``` 225 ```
226 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 226 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
227 - [lite-build-db] ✅ 计划阶段(①②③)全部完成 227 + [build-db] ✅ 计划阶段(①②③)全部完成
228 228
229 所有规划文档已就绪,docs/08 § 一 全部勾选。 229 所有规划文档已就绪,docs/08 § 一 全部勾选。
230 230
skills/plan/lite-build-db/scripts/validate.sh renamed to skills/plan/build-db/scripts/validate.sh
skills/plan/lite-build-db/templates/docs-05-endpoint-template.md renamed to skills/plan/build-db/templates/docs-05-endpoint-template.md
skills/plan/lite-build-db/templates/docs-05-header-template.md renamed to skills/plan/build-db/templates/docs-05-header-template.md
@@ -27,4 +27,4 @@ BasePath: `{{base_path}}` @@ -27,4 +27,4 @@ BasePath: `{{base_path}}`
27 {{pagination_note}} 27 {{pagination_note}}
28 28
29 ## 接口清单 29 ## 接口清单
30 -(各模块接口段落见下方,由 `lite-build-db` 按 REQ 填入) 30 +(各模块接口段落见下方,由 `build-db` 按 REQ 填入)
skills/plan/lite-build-db/templates/docs-08-module-row-template.md renamed to skills/plan/build-db/templates/docs-08-module-row-template.md
skills/plan/lite-design/SKILL.md renamed to skills/plan/design/SKILL.md
1 --- 1 ---
2 -name: lite-design 2 +name: design
3 description: 计划第 2 段——生成架构文档(docs/04 § 一+,含前端 Design Tokens + 环境配置)+ 工具脚本 + .env.local + sql/migrations/,然后从 REQ 正向设计 docs/03 并回填 REQ 依赖表,停下等人工审阅 docs/03。 3 description: 计划第 2 段——生成架构文档(docs/04 § 一+,含前端 Design Tokens + 环境配置)+ 工具脚本 + .env.local + sql/migrations/,然后从 REQ 正向设计 docs/03 并回填 REQ 依赖表,停下等人工审阅 docs/03。
4 user-invocable: false 4 user-invocable: false
5 allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bash(cp *) Bash(cat *) Bash(bash *) 5 allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bash(cp *) Bash(cat *) Bash(bash *)
@@ -7,7 +7,7 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas @@ -7,7 +7,7 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas
7 7
8 **所有输出必须使用中文。** 8 **所有输出必须使用中文。**
9 9
10 -# lite-design 10 +# design
11 11
12 ## 执行步骤 12 ## 执行步骤
13 13
@@ -16,10 +16,10 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas @@ -16,10 +16,10 @@ allowed-tools: Read Write Edit Glob Grep Skill AskUserQuestion Bash(mkdir *) Bas
16 用 `Bash` 执行以下命令(文件不存在时静默忽略,不报错): 16 用 `Bash` 执行以下命令(文件不存在时静默忽略,不报错):
17 17
18 ```bash 18 ```bash
19 -cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt" 2>/dev/null || true 19 +cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow.txt" 2>/dev/null || true
20 ``` 20 ```
21 21
22 -打印横幅:`▶ 计划阶段 ② — lite-design`。 22 +打印横幅:`▶ 计划阶段 ② — design`。
23 23
24 ### A. 读取锁定的输入 24 ### A. 读取锁定的输入
25 25
@@ -32,9 +32,9 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt&quot; 2&gt;/ @@ -32,9 +32,9 @@ cat &quot;${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt&quot; 2&gt;/
32 32
33 ### B. 生成 docs/04 § 一+(保留 § 零 不覆盖) 33 ### B. 生成 docs/04 § 一+(保留 § 零 不覆盖)
34 34
35 -docs/04 已由 lite-init 写入 § 零。本步骤追加 § 一 ~ 五。 35 +docs/04 已由 init 写入 § 零。本步骤追加 § 一 ~ 五。
36 36
37 -lite 版的 docs/04 承担三类内容(不再生成独立的前端规范文件或环境配置文件): 37 +docs/04 承担三类内容(不再生成独立的前端规范文件或环境配置文件):
38 - § 一~三:后端/前端/共同编码规范 38 - § 一~三:后端/前端/共同编码规范
39 - § 四:前端 Design Tokens + 交互约定 39 - § 四:前端 Design Tokens + 交互约定
40 - § 五:环境配置 40 - § 五:环境配置
@@ -58,7 +58,7 @@ cp &quot;${CLAUDE_SKILL_DIR}/templates/env-local-template&quot; .env.local @@ -58,7 +58,7 @@ cp &quot;${CLAUDE_SKILL_DIR}/templates/env-local-template&quot; .env.local
58 cp "${CLAUDE_SKILL_DIR}/templates/scripts-setup-test-db-template.sh" scripts/setup-test-db.sh 58 cp "${CLAUDE_SKILL_DIR}/templates/scripts-setup-test-db-template.sh" scripts/setup-test-db.sh
59 ``` 59 ```
60 60
61 -注意:lite 版不生成 `src/styles/tokens.css`(前端 token 骨架由前端阶段处理)。 61 +注意:本阶段不生成 `src/styles/tokens.css`(前端 token 骨架由前端阶段处理)。
62 62
63 #### C.2 渲染 scripts/test.sh 63 #### C.2 渲染 scripts/test.sh
64 64
@@ -116,21 +116,21 @@ bash &quot;${CLAUDE_SKILL_DIR}/scripts/merge-gitignore.sh&quot; &quot;${CLAUDE_SKILL_DIR}/templ @@ -116,21 +116,21 @@ bash &quot;${CLAUDE_SKILL_DIR}/scripts/merge-gitignore.sh&quot; &quot;${CLAUDE_SKILL_DIR}/templ
116 ### F. 回填模块头 + REQ 卡片的 TBD 字段 116 ### F. 回填模块头 + REQ 卡片的 TBD 字段
117 117
118 1. 列出 `docs/01-需求清单/*/_module.md`(模块头)和 `docs/01-需求清单/*/REQ-*.md`(REQ 卡片)。 118 1. 列出 `docs/01-需求清单/*/_module.md`(模块头)和 `docs/01-需求清单/*/REQ-*.md`(REQ 卡片)。
119 -2. 在这些文件中搜索 `TBD(lite-design 自动补)` 并回填为实际表名。**不动** `TBD(lite-build-db 自动补)`。 119 +2. 在这些文件中搜索 `TBD(design 自动补)` 并回填为实际表名。**不动** `TBD(build-db 自动补)`。
120 - `_module.md` 的 `涉及表` 字段:填入该模块涉及的所有表名(逗号分隔) 120 - `_module.md` 的 `涉及表` 字段:填入该模块涉及的所有表名(逗号分隔)
121 - `REQ-*.md` 的 `依赖表` 字段:填入该 REQ 操作的表名(逗号分隔) 121 - `REQ-*.md` 的 `依赖表` 字段:填入该 REQ 操作的表名(逗号分隔)
122 -3. 打印回填统计:`lite-design 回填 <M> 处模块"涉及表" + <N> 处 REQ"依赖表"`。 122 +3. 打印回填统计:`design 回填 <M> 处模块"涉及表" + <N> 处 REQ"依赖表"`。
123 123
124 ### G. 勾选 § 一 ② 顶层 + 停下等人工审阅 124 ### G. 勾选 § 一 ② 顶层 + 停下等人工审阅
125 125
126 1. 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选 ② 顶层: 126 1. 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选 ② 顶层:
127 - - `- [ ] 计划 ② 脚手架 + 数据库设计 — lite-design` 127 + - `- [ ] 计划 ② 脚手架 + 数据库设计 — design`
128 128
129 2. 打印停下横幅并**停下**: 129 2. 打印停下横幅并**停下**:
130 130
131 ``` 131 ```
132 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 132 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
133 - [lite-design] ✅ 计划 ② 完成 133 + [design] ✅ 计划 ② 完成
134 134
135 产出: 135 产出:
136 ✓ docs/04-技术规范.md(§ 一+ | § 四 Design Tokens | § 五 环境配置) 136 ✓ docs/04-技术规范.md(§ 一+ | § 四 Design Tokens | § 五 环境配置)
skills/plan/lite-design/scripts/merge-gitignore.sh renamed to skills/plan/design/scripts/merge-gitignore.sh
@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 # - 若已存在 → 逐行判重,只追加模板里缺失的规则行(跳过注释/空行) 5 # - 若已存在 → 逐行判重,只追加模板里缺失的规则行(跳过注释/空行)
6 # 6 #
7 # 用法:merge-gitignore.sh <template_path> [<target_gitignore_path>] 7 # 用法:merge-gitignore.sh <template_path> [<target_gitignore_path>]
8 -# template_path 模板文件绝对路径(由 lite-design skill 传入) 8 +# template_path 模板文件绝对路径(由 design skill 传入)
9 # target_gitignore_path 目标 .gitignore 路径,默认为当前工作目录下的 .gitignore 9 # target_gitignore_path 目标 .gitignore 路径,默认为当前工作目录下的 .gitignore
10 # 10 #
11 # 判重:grep -xF 整行精确匹配 + 字面字符串(非正则),避免 .env 误匹配 .env.local, 11 # 判重:grep -xF 整行精确匹配 + 字面字符串(非正则),避免 .env 误匹配 .env.local,
skills/plan/lite-design/templates/docs-03-header-template.md renamed to skills/plan/design/templates/docs-03-header-template.md
@@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@
2 2
3 - **Schema**: `{{schema_name}}` 3 - **Schema**: `{{schema_name}}`
4 - **Migration 清单**: `sql/migrations/V*.sql`(由 Flyway 顺序 apply) 4 - **Migration 清单**: `sql/migrations/V*.sql`(由 Flyway 顺序 apply)
5 -- **生成方式**: 由计划 ② `lite-design` 基于 `docs/01-需求清单/<module>/REQ-*.md` REQ 卡片正向设计生成(schema SSoT)。 5 +- **生成方式**: 由计划 ② `design` 基于 `docs/01-需求清单/<module>/REQ-*.md` REQ 卡片正向设计生成(schema SSoT)。
6 6
7 ## 项目标准列约定 7 ## 项目标准列约定
8 8
skills/plan/lite-design/templates/docs-03-table-template.md renamed to skills/plan/design/templates/docs-03-table-template.md
skills/plan/lite-design/templates/docs-04-skeleton-template.md renamed to skills/plan/design/templates/docs-04-skeleton-template.md
1 <!-- 1 <!--
2 -本文件是 docs/04-技术规范.md 的 § 一+ 大纲(lite 版)。  
3 -lite-design 读取 docs/04 § 零(技术栈表)和 docs/01-需求清单/index.md(模块索引), 2 +本文件是 docs/04-技术规范.md 的 § 一+ 大纲。
  3 +design 读取 docs/04 § 零(技术栈表)和 docs/01-需求清单/index.md(模块索引),
4 按下述大纲生成本项目专属的规范内容。LLM 不要原样拷贝提示文字,只保留 section 标题。 4 按下述大纲生成本项目专属的规范内容。LLM 不要原样拷贝提示文字,只保留 section 标题。
5 -lite 版将前端 Design Tokens + 环境配置内容折叠到本文件 § 四 + § 五, 5 +将前端 Design Tokens + 环境配置内容折叠到本文件 § 四 + § 五,
6 不再生成独立的前端规范文件或环境配置文件。 6 不再生成独立的前端规范文件或环境配置文件。
7 --> 7 -->
8 8
9 ## 一、后端规范 9 ## 一、后端规范
10 10
11 ### 1.1 规则 11 ### 1.1 规则
12 -<!-- 后端通用约定:保留下方占位符不要代填,由人工在 lite-design § E 填写;每条一个 bullet,按需复制本行新增更多。 --> 12 +<!-- 后端通用约定:保留下方占位符不要代填,由人工在 design § E 填写;每条一个 bullet,按需复制本行新增更多。 -->
13 - 【人工填写:一条后端通用约定,按需复制本行新增更多;无则填「无」】 13 - 【人工填写:一条后端通用约定,按需复制本行新增更多;无则填「无」】
14 14
15 ### 1.2 分层结构 15 ### 1.2 分层结构
@@ -47,7 +47,7 @@ lite 版将前端 Design Tokens + 环境配置内容折叠到本文件 § 四 + @@ -47,7 +47,7 @@ lite 版将前端 Design Tokens + 环境配置内容折叠到本文件 § 四 +
47 ### 2.5 样式与主题 47 ### 2.5 样式与主题
48 <!-- 基于 § 零 UI 库给出 CSS 变量约定: 48 <!-- 基于 § 零 UI 库给出 CSS 变量约定:
49 - 命名格式 `--color-<scope>-<role>-<state>`(scope=form/table-row/...,role=bg/fg/border,state=edit/readonly/hover/selected) 49 - 命名格式 `--color-<scope>-<role>-<state>`(scope=form/table-row/...,role=bg/fg/border,state=edit/readonly/hover/selected)
50 - - 文件位置 `src/styles/tokens.css`(前端阶段处理,lite-design 不生成);色值由 § 四锁定后在前端阶段填入 50 + - 文件位置 `src/styles/tokens.css`(前端阶段处理,design 不生成);色值由 § 四锁定后在前端阶段填入
51 - 组件样式中只用 var(--color-xxx),禁止硬编码 hex/rgba 51 - 组件样式中只用 var(--color-xxx),禁止硬编码 hex/rgba
52 - 与 UI 库主题对接(如 Ant Design ConfigProvider.theme.token)的映射方式 52 - 与 UI 库主题对接(如 Ant Design ConfigProvider.theme.token)的映射方式
53 具体 token 表见 § 四。 --> 53 具体 token 表见 § 四。 -->
skills/plan/lite-design/templates/env-local-template renamed to skills/plan/design/templates/env-local-template
skills/plan/lite-design/templates/gitignore-append-template renamed to skills/plan/design/templates/gitignore-append-template
1 -# ==== ERP 插件推荐忽略项(lite-design 追加) ==== 1 +# ==== ERP 插件推荐忽略项(design 追加) ====
2 # 本地运行时配置(含真实凭据,严禁入库) 2 # 本地运行时配置(含真实凭据,严禁入库)
3 .env.local 3 .env.local
4 .env.*.local 4 .env.*.local
skills/plan/lite-design/templates/scripts-setup-test-db-template.sh renamed to skills/plan/design/templates/scripts-setup-test-db-template.sh
skills/plan/lite-design/templates/scripts-test-template.sh renamed to skills/plan/design/templates/scripts-test-template.sh
skills/plan/lite-init/SKILL.md renamed to skills/plan/init/SKILL.md
1 --- 1 ---
2 -name: lite-init 2 +name: init
3 description: 计划第 1 段——项目初始化 + 范围锁定。复制 CLAUDE.md/docs(01/04/08) 模板、依赖检查、git init,引导项目概述+技术栈+需求索引,生成 REQ 卡片骨架,停下等人工审阅 REQ。 3 description: 计划第 1 段——项目初始化 + 范围锁定。复制 CLAUDE.md/docs(01/04/08) 模板、依赖检查、git init,引导项目概述+技术栈+需求索引,生成 REQ 卡片骨架,停下等人工审阅 REQ。
4 user-invocable: false 4 user-invocable: false
5 allowed-tools: Glob Read Edit Grep Skill AskUserQuestion Bash(mkdir *) Bash(cp *) Bash(sed *) Bash(bash *) Bash(cat *) Bash(git init) Bash(command -v *) Bash(uname *) Bash(brew *) Bash(apt *) Bash(apt-get *) Bash(yum *) Bash(apk *) Bash(export PATH=*) Bash(echo *) 5 allowed-tools: Glob Read Edit Grep Skill AskUserQuestion Bash(mkdir *) Bash(cp *) Bash(sed *) Bash(bash *) Bash(cat *) Bash(git init) Bash(command -v *) Bash(uname *) Bash(brew *) Bash(apt *) Bash(apt-get *) Bash(yum *) Bash(apk *) Bash(export PATH=*) Bash(echo *)
@@ -13,19 +13,19 @@ allowed-tools: Glob Read Edit Grep Skill AskUserQuestion Bash(mkdir *) Bash(cp * @@ -13,19 +13,19 @@ allowed-tools: Glob Read Edit Grep Skill AskUserQuestion Bash(mkdir *) Bash(cp *
13 13
14 ### 步骤 0:打印计划流程图 14 ### 步骤 0:打印计划流程图
15 15
16 -用 `Bash` 向用户展示 lite 流程图(▶ 位于"计划 ①"): 16 +用 `Bash` 向用户展示整体流程图(▶ 位于"计划 ①"):
17 17
18 ```bash 18 ```bash
19 -cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow-lite.txt" 2>/dev/null || true 19 +cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/plan-start/banners/flow.txt" 2>/dev/null || true
20 ``` 20 ```
21 21
22 -> 注:`flow-lite.txt` 由 Task 7 创建,当前若文件不存在,命令静默忽略,不影响后续执行。 22 +> 注:`flow.txt` 由 Task 7 创建,当前若文件不存在,命令静默忽略,不影响后续执行。
23 23
24 打印分发横幅: 24 打印分发横幅:
25 25
26 ``` 26 ```
27 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
28 - [lite-init] 计划 ① 初始化 + 范围锁定 28 + [init] 计划 ① 初始化 + 范围锁定
29 ▶ 当前位置:计划 ① / 共 ③ 29 ▶ 当前位置:计划 ① / 共 ③
30 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 30 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
31 ``` 31 ```
@@ -54,7 +54,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -54,7 +54,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
54 全部通过后打印单行汇总再进入步骤 C: 54 全部通过后打印单行汇总再进入步骤 C:
55 55
56 ``` 56 ```
57 -[lite-init] 依赖检查: git ✓ mysql ✓ 57 +[init] 依赖检查: git ✓ mysql ✓
58 ``` 58 ```
59 59
60 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选: 60 完成后,用 `Edit` 在 `docs/08-模块任务管理.md` 中勾选:
@@ -73,7 +73,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -73,7 +73,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
73 73
74 ``` 74 ```
75 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 75 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
76 - [lite-init] 项目初始化完成 76 + [init] 项目初始化完成
77 77
78 已创建: 78 已创建:
79 ✓ CLAUDE.md(从插件模板复制) 79 ✓ CLAUDE.md(从插件模板复制)
@@ -92,7 +92,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -92,7 +92,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
92 92
93 ``` 93 ```
94 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 94 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
95 - [lite-init] 请填写项目概述 95 + [init] 请填写项目概述
96 96
97 📄 文件位置: ./CLAUDE.md 97 📄 文件位置: ./CLAUDE.md
98 📌 编辑位置: § 🎯 项目概述 98 📌 编辑位置: § 🎯 项目概述
@@ -122,7 +122,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -122,7 +122,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
122 122
123 ``` 123 ```
124 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 124 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
125 - [lite-init] 技术栈已保存 125 + [init] 技术栈已保存
126 126
127 📄 文件位置: ./docs/04-技术规范.md(由模板生成) 127 📄 文件位置: ./docs/04-技术规范.md(由模板生成)
128 📌 编辑位置: § 零、技术栈总览 128 📌 编辑位置: § 零、技术栈总览
@@ -151,7 +151,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -151,7 +151,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
151 151
152 ``` 152 ```
153 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 153 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
154 - [lite-init] 请填写需求清单模块索引 154 + [init] 请填写需求清单模块索引
155 155
156 📄 文件位置: ./docs/01-需求清单/index.md 156 📄 文件位置: ./docs/01-需求清单/index.md
157 📌 编辑位置: § 模块索引(表格) 157 📌 编辑位置: § 模块索引(表格)
@@ -192,13 +192,13 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -192,13 +192,13 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
192 192
193 4. 用 `Edit` 在 `docs/08-模块任务管理.md` 勾选(计划 ① 子项 + ① 顶层): 193 4. 用 `Edit` 在 `docs/08-模块任务管理.md` 勾选(计划 ① 子项 + ① 顶层):
194 - ` - [ ] REQ 卡片骨架已生成(docs/01-需求清单/<module>/REQ-*.md)` 194 - ` - [ ] REQ 卡片骨架已生成(docs/01-需求清单/<module>/REQ-*.md)`
195 - - `- [ ] 计划 ① 初始化 + 范围锁定 — lite-init` 195 + - `- [ ] 计划 ① 初始化 + 范围锁定 — init`
196 196
197 -5. 打印停下横幅并**停止**,不自动派发 lite-design: 197 +5. 打印停下横幅并**停止**,不自动派发 design:
198 198
199 ``` 199 ```
200 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 200 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
201 - [lite-init] ✅ 计划 ① 完成 201 + [init] ✅ 计划 ① 完成
202 202
203 产出: 203 产出:
204 ✓ CLAUDE.md § 🎯 项目概述 204 ✓ CLAUDE.md § 🎯 项目概述
@@ -219,7 +219,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -219,7 +219,7 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
219 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 219 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
220 ``` 220 ```
221 221
222 -> **STOP**:此处是人工审阅 REQ 的闸门。停止执行,等待用户运行 `/erp-workflow:plan-start` 后由 plan-start 派发 lite-design。 222 +> **STOP**:此处是人工审阅 REQ 的闸门。停止执行,等待用户运行 `/erp-workflow:plan-start` 后由 plan-start 派发 design。
223 223
224 ## 参考 224 ## 参考
225 225
@@ -230,4 +230,4 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块 @@ -230,4 +230,4 @@ cp -n &quot;${CLAUDE_SKILL_DIR}/templates/docs-08-initial-template.md&quot; docs/08-模块
230 - `${CLAUDE_SKILL_DIR}/templates/req-card-template.md`(REQ 卡片模板) 230 - `${CLAUDE_SKILL_DIR}/templates/req-card-template.md`(REQ 卡片模板)
231 - `${CLAUDE_SKILL_DIR}/templates/_module-template.md`(模块头模板) 231 - `${CLAUDE_SKILL_DIR}/templates/_module-template.md`(模块头模板)
232 - `${CLAUDE_SKILL_DIR}/scripts/render.sh`(步骤 G 渲染助手,dispatch `module` / `req` 两种模式) 232 - `${CLAUDE_SKILL_DIR}/scripts/render.sh`(步骤 G 渲染助手,dispatch `module` / `req` 两种模式)
233 -- 下游:人工审阅 REQ 后运行 `/erp-workflow:plan-start`,由 plan-start 派发 `lite-design`(计划 ②) 233 +- 下游:人工审阅 REQ 后运行 `/erp-workflow:plan-start`,由 plan-start 派发 `design`(计划 ②)
skills/plan/lite-init/scripts/render.sh renamed to skills/plan/init/scripts/render.sh
1 #!/usr/bin/env bash 1 #!/usr/bin/env bash
2 -# render.sh — lite-init 渲染单个 _module.md 或 REQ-*.md 2 +# render.sh — init 渲染单个 _module.md 或 REQ-*.md
3 # 3 #
4 # 用法: 4 # 用法:
5 # bash render.sh module <out_path> <module_code> <module_name> <module_brief> 5 # bash render.sh module <out_path> <module_code> <module_name> <module_brief>
skills/plan/lite-init/templates/CLAUDE-template.md renamed to skills/plan/init/templates/CLAUDE-template.md
@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
15 15
16 ## 🔄 编码开发流程(两阶段 + 统一功能循环) 16 ## 🔄 编码开发流程(两阶段 + 统一功能循环)
17 17
18 -编码阶段入口:`/erp-workflow:coding-start`。lite 保留**后端模块阶段**与**前端整体阶段**两段,但两段共用**同一套功能循环 skill**(`feature-spec → feature-tdd → feature-review`),由 `phase` 参数区分。 18 +编码阶段入口:`/erp-workflow:coding-start`。本插件保留**后端模块阶段**与**前端整体阶段**两段,但两段共用**同一套功能循环 skill**(`feature-spec → feature-tdd → feature-review`),由 `phase` 参数区分。
19 19
20 ### 阶段路由(coding-start 内,只做分发) 20 ### 阶段路由(coding-start 内,只做分发)
21 21
@@ -88,7 +88,7 @@ @@ -88,7 +88,7 @@
88 | 格式 | 谁填 | 使用阶段 | 说明 | 88 | 格式 | 谁填 | 使用阶段 | 说明 |
89 |------|-----|---------|------| 89 |------|-----|---------|------|
90 | `【人工填写:<简短说明>】` | 人 | 仅计划阶段文档 | 密钥 / 账密 / 包名 / 命名约定 / 小版本号等人工才能决定的值;编码阶段 plan/spec 禁止出现,查不到真值时用 `AskUserQuestion` 问用户 | 90 | `【人工填写:<简短说明>】` | 人 | 仅计划阶段文档 | 密钥 / 账密 / 包名 / 命名约定 / 小版本号等人工才能决定的值;编码阶段 plan/spec 禁止出现,查不到真值时用 `AskUserQuestion` 问用户 |
91 -| `TBD(<责任人>)` | CC 自动 | 计划或编码 | 后缀附带责任方(如 `TBD(lite-design 自动补)` / `TBD(lite-build-db 自动补)`);由对应 skill 就地补填 | 91 +| `TBD(<责任人>)` | CC 自动 | 计划或编码 | 后缀附带责任方(如 `TBD(design 自动补)` / `TBD(build-db 自动补)`);由对应 skill 就地补填 |
92 92
93 **HTML 注释 `<!-- ... -->`**:提示占位,是**插件内部大纲模板**里给 LLM 的**填空提示 / 章节引导**,指引 LLM 按结构填实际内容。skill 生成时会**剥除**这些注释,最终产物里注释不会保留。 93 **HTML 注释 `<!-- ... -->`**:提示占位,是**插件内部大纲模板**里给 LLM 的**填空提示 / 章节引导**,指引 LLM 按结构填实际内容。skill 生成时会**剥除**这些注释,最终产物里注释不会保留。
94 94
@@ -116,7 +116,7 @@ @@ -116,7 +116,7 @@
116 3. **Apply 方式**:Spring Boot 启动 / 测试启动时 Flyway 自动 apply(项目必须在 `pom.xml` 声明 `flyway-core` + `flyway-mysql` 依赖)。`scripts/setup-test-db.sh` 只负责清空库,不做 apply 116 3. **Apply 方式**:Spring Boot 启动 / 测试启动时 Flyway 自动 apply(项目必须在 `pom.xml` 声明 `flyway-core` + `flyway-mysql` 依赖)。`scripts/setup-test-db.sh` 只负责清空库,不做 apply
117 4. **已合并的 migration 永不修改**:发现错了写一个补救 migration(如 `V7__fix_V5_index_name.sql`),旧 `V_n.sql` 不动 117 4. **已合并的 migration 永不修改**:发现错了写一个补救 migration(如 `V7__fix_V5_index_name.sql`),旧 `V_n.sql` 不动
118 5. **临时调试 DDL**:临时在本地试字段/索引可手动 `mysql -e`,但不写 migration;下次 `setup-test-db.sh` 会 drop+create 清掉 118 5. **临时调试 DDL**:临时在本地试字段/索引可手动 `mysql -e`,但不写 migration;下次 `setup-test-db.sh` 会 drop+create 清掉
119 -6. **计划 ③ 生成的 V1**:`V1__initial_schema.sql` 是计划阶段由 `lite-build-db` 从 `docs/03-数据库设计文档.md`(lite-design 正向设计的 schema SSoT)翻译生成的初始版本;后续 V2/V3/... 由编码阶段每个 REQ 按需写入,**同时**反向同步更新 docs/03 对应表小节以保持 SSoT 一致 119 +6. **计划 ③ 生成的 V1**:`V1__initial_schema.sql` 是计划阶段由 `build-db` 从 `docs/03-数据库设计文档.md`(design 正向设计的 schema SSoT)翻译生成的初始版本;后续 V2/V3/... 由编码阶段每个 REQ 按需写入,**同时**反向同步更新 docs/03 对应表小节以保持 SSoT 一致
120 120
121 --- 121 ---
122 122
@@ -172,7 +172,7 @@ @@ -172,7 +172,7 @@
172 | # | 软规则 | 允许动作 | 强制后续 | 172 | # | 软规则 | 允许动作 | 强制后续 |
173 | - | ----- | ------- | ------- | 173 | - | ----- | ------- | ------- |
174 | S1 | **技术栈外组件引入** | 用 `AskUserQuestion` 给用户三选一:接受引入 / 换方案 / 拒绝 | ① **接受** → 同会话直接在 `docs/04 § 零` 追加一行 → 继续流程 ② **换方案 / 拒绝** → 视为常规歧义澄清,继续 Q&A 收敛 ③ 不写 Blocker、不中断流程 | 174 | S1 | **技术栈外组件引入** | 用 `AskUserQuestion` 给用户三选一:接受引入 / 换方案 / 拒绝 | ① **接受** → 同会话直接在 `docs/04 § 零` 追加一行 → 继续流程 ② **换方案 / 拒绝** → 视为常规歧义澄清,继续 Q&A 收敛 ③ 不写 Blocker、不中断流程 |
175 -| S2 | **跨模块改动** | **默认不改**,仅为当前模块实现所必需时允许修改 | 在该模块 `milestone` 完成报告的「⑤ 偏离与取舍」节如实记录改了哪个非当前模块的文件 + 原因(lite 无自动留痕 hook,靠报告人工记录) | 175 +| S2 | **跨模块改动** | **默认不改**,仅为当前模块实现所必需时允许修改 | 在该模块 `milestone` 完成报告的「⑤ 偏离与取舍」节如实记录改了哪个非当前模块的文件 + 原因(本插件无自动留痕 hook,靠报告人工记录) |
176 176
177 --- 177 ---
178 178
@@ -236,7 +236,7 @@ Strong success criteria let you loop independently. Weak criteria (&quot;make it work @@ -236,7 +236,7 @@ Strong success criteria let you loop independently. Weak criteria (&quot;make it work
236 236
237 --- 237 ---
238 238
239 -## 🗺️ Skill 索引(erp-workflow-lite,共 11 个) 239 +## 🗺️ Skill 索引(erp-workflow,共 11 个)
240 240
241 ### 入口 241 ### 入口
242 242
@@ -249,9 +249,9 @@ Strong success criteria let you loop independently. Weak criteria (&quot;make it work @@ -249,9 +249,9 @@ Strong success criteria let you loop independently. Weak criteria (&quot;make it work
249 249
250 | Skill | 描述 | 250 | Skill | 描述 |
251 |-------|------| 251 |-------|------|
252 -| `lite-init` | 计划 ①——项目初始化 + 范围锁定(模板复制、依赖检查、git init、项目概述+技术栈+需求索引、REQ 卡片生成,停下等人工审阅) |  
253 -| `lite-design` | 计划 ②——脚手架 + 数据库设计(docs/04 § 一+、scripts、.env.local、docs/03 DB 设计,停下等人工审阅) |  
254 -| `lite-build-db` | 计划 ③——DB 初始化 + 下游文档(V1 migration apply、docs/05 API 契约、docs/08 § 二模块清单,计划阶段结束) | 252 +| `init` | 计划 ①——项目初始化 + 范围锁定(模板复制、依赖检查、git init、项目概述+技术栈+需求索引、REQ 卡片生成,停下等人工审阅) |
  253 +| `design` | 计划 ②——脚手架 + 数据库设计(docs/04 § 一+、scripts、.env.local、docs/03 DB 设计,停下等人工审阅) |
  254 +| `build-db` | 计划 ③——DB 初始化 + 下游文档(V1 migration apply、docs/05 API 契约、docs/08 § 二模块清单,计划阶段结束) |
255 255
256 ### 编码阶段 256 ### 编码阶段
257 257
@@ -274,7 +274,7 @@ Strong success criteria let you loop independently. Weak criteria (&quot;make it work @@ -274,7 +274,7 @@ Strong success criteria let you loop independently. Weak criteria (&quot;make it work
274 | 文档 | 职责 | 274 | 文档 | 职责 |
275 |------|------| 275 |------|------|
276 | `docs/01-需求清单/` | REQ 卡片目录(模块子目录 + index.md) | 276 | `docs/01-需求清单/` | REQ 卡片目录(模块子目录 + index.md) |
277 -| `docs/03-数据库设计文档.md` | 表/字段/索引/外键 SSoT(lite-design 生成,编码阶段同步更新) |  
278 -| `docs/04-技术规范.md` | 技术栈总览(§ 零)+ 架构规范 + 前端 Design Tokens / 交互约定 + 环境变量说明(含 .env.local 密钥字段)——lite 把原 UI 规范与环境配置并入此文件 |  
279 -| `docs/05-API接口契约.md` | 所有后端接口契约(lite-build-db 生成,feature-spec 按需追加) | 277 +| `docs/03-数据库设计文档.md` | 表/字段/索引/外键 SSoT(design 生成,编码阶段同步更新) |
  278 +| `docs/04-技术规范.md` | 技术栈总览(§ 零)+ 架构规范 + 前端 Design Tokens / 交互约定 + 环境变量说明(含 .env.local 密钥字段)——已把原 UI 规范与环境配置并入此文件 |
  279 +| `docs/05-API接口契约.md` | 所有后端接口契约(build-db 生成,feature-spec 按需追加) |
280 | `docs/08-模块任务管理.md` | 全流程进度跟踪(§ 一计划 / § 二后端模块 / § 三前端整体) | 280 | `docs/08-模块任务管理.md` | 全流程进度跟踪(§ 一计划 / § 二后端模块 / § 三前端整体) |
skills/plan/lite-init/templates/_module-template.md renamed to skills/plan/init/templates/_module-template.md
1 # {{module_code}}-{{module_name}} 1 # {{module_code}}-{{module_name}}
2 2
3 - **模块简述**: {{module_brief}} 3 - **模块简述**: {{module_brief}}
4 -- **依赖模块**: TBD(lite-build-db 自动补)  
5 -- **涉及表**: TBD(lite-design 自动补) 4 +- **依赖模块**: TBD(build-db 自动补)
  5 +- **涉及表**: TBD(design 自动补)
skills/plan/lite-init/templates/docs-01-index-template.md renamed to skills/plan/init/templates/docs-01-index-template.md
skills/plan/lite-init/templates/docs-04-stack-template.md renamed to skills/plan/init/templates/docs-04-stack-template.md
@@ -29,4 +29,4 @@ @@ -29,4 +29,4 @@
29 | 对象映射工具 | MapStruct | 最新稳定版 | DTO / VO / Entity 转换 | 29 | 对象映射工具 | MapStruct | 最新稳定版 | DTO / VO / Entity 转换 |
30 | 工具类库 | Hutool / Apache Commons | 最新稳定版 | 常用工具方法支持 | 30 | 工具类库 | Hutool / Apache Commons | 最新稳定版 | 常用工具方法支持 |
31 31
32 -> 本表由 lite-init 锁定。后续所有规范基于此表推导。 32 +> 本表由 init 锁定。后续所有规范基于此表推导。
skills/plan/lite-init/templates/docs-08-initial-template.md renamed to skills/plan/init/templates/docs-08-initial-template.md
@@ -2,12 +2,12 @@ @@ -2,12 +2,12 @@
2 2
3 > 全流程进度跟踪。CC 每完成一项产出就勾选一项。 3 > 全流程进度跟踪。CC 每完成一项产出就勾选一项。
4 > - **§ 一 计划阶段**:`plan-start` 找第一个未勾的计划段(①②③)分发到对应 skill 4 > - **§ 一 计划阶段**:`plan-start` 找第一个未勾的计划段(①②③)分发到对应 skill
5 -> - **§ 二 Coding(后端模块)**:`coding-start` 扫描 docs/08 § 二 的 `里程碑:` 字段 + 本地 `git tag -l 'milestone/<id>'`,找第一个未打里程碑模块,派发 `phase-driver`(phase=backend)。本 § 二 行序即 REQ 开发顺序(lite-build-db 按依赖拓扑写入),是 phase-driver 的排序权威 5 +> - **§ 二 Coding(后端模块)**:`coding-start` 扫描 docs/08 § 二 的 `里程碑:` 字段 + 本地 `git tag -l 'milestone/<id>'`,找第一个未打里程碑模块,派发 `phase-driver`(phase=backend)。本 § 二 行序即 REQ 开发顺序(build-db 按依赖拓扑写入),是 phase-driver 的排序权威
6 > - **§ 三 Coding(前端整体)**:后端全部打里程碑后,`coding-start` 读 § 三 `整体里程碑:` + `git tag -l 'milestone/frontend-phase'`,未完成则派发 `phase-driver`(phase=frontend) 6 > - **§ 三 Coding(前端整体)**:后端全部打里程碑后,`coding-start` 读 § 三 `整体里程碑:` + `git tag -l 'milestone/frontend-phase'`,未完成则派发 `phase-driver`(phase=frontend)
7 7
8 ## 一、计划阶段进度 8 ## 一、计划阶段进度
9 9
10 -- [ ] 计划 ① 初始化 + 范围锁定 — lite-init 10 +- [ ] 计划 ① 初始化 + 范围锁定 — init
11 - [ ] 项目文件骨架已创建(CLAUDE.md + docs/01 index + docs/04 + docs/08) 11 - [ ] 项目文件骨架已创建(CLAUDE.md + docs/01 index + docs/04 + docs/08)
12 - [ ] 依赖检查通过(git / mysql) 12 - [ ] 依赖检查通过(git / mysql)
13 - [ ] Git 已初始化 13 - [ ] Git 已初始化
@@ -15,19 +15,19 @@ @@ -15,19 +15,19 @@
15 - [ ] 技术栈已确认(docs/04 § 零) 15 - [ ] 技术栈已确认(docs/04 § 零)
16 - [ ] 需求清单索引已填写(docs/01-需求清单/index.md) 16 - [ ] 需求清单索引已填写(docs/01-需求清单/index.md)
17 - [ ] REQ 卡片骨架已生成(docs/01-需求清单/<module>/REQ-*.md) 17 - [ ] REQ 卡片骨架已生成(docs/01-需求清单/<module>/REQ-*.md)
18 -- [ ] 计划 ② 脚手架 + 数据库设计 — lite-design 18 +- [ ] 计划 ② 脚手架 + 数据库设计 — design
19 - [ ] 架构文档已生成(docs/04 § 一+ | scripts/*.sh | .env.local | sql/migrations/) 19 - [ ] 架构文档已生成(docs/04 § 一+ | scripts/*.sh | .env.local | sql/migrations/)
20 - [ ] docs/03 数据库设计已生成(REQ → 表/字段/索引/外键,回填 REQ 依赖表) 20 - [ ] docs/03 数据库设计已生成(REQ → 表/字段/索引/外键,回填 REQ 依赖表)
21 -- [ ] 计划 ③ DB 初始化 + 下游文档 — lite-build-db 21 +- [ ] 计划 ③ DB 初始化 + 下游文档 — build-db
22 - [ ] V1 migration 已生成并校验 + apply 到本地 MySQL 22 - [ ] V1 migration 已生成并校验 + apply 到本地 MySQL
23 - [ ] docs/05 API 契约已生成 + 回填 REQ 依赖接口 23 - [ ] docs/05 API 契约已生成 + 回填 REQ 依赖接口
24 - [ ] docs/08 § 二 模块清单(含 REQ 顺序)已生成 24 - [ ] docs/08 § 二 模块清单(含 REQ 顺序)已生成
25 25
26 ## 二、Coding 阶段(模块循环) 26 ## 二、Coding 阶段(模块循环)
27 27
28 -(lite-build-db 填入后,每行一个后端模块。每个模块的 `里程碑:` 字段在 `—` 和 `milestone/<id>` 之间变化,完成由本地 `git tag -l` 判定。`coding-start` 每次扫每模块的里程碑 tag 决定派发。所有模块打里程碑后整体完成。) 28 +(build-db 填入后,每行一个后端模块。每个模块的 `里程碑:` 字段在 `—` 和 `milestone/<id>` 之间变化,完成由本地 `git tag -l` 判定。`coding-start` 每次扫每模块的里程碑 tag 决定派发。所有模块打里程碑后整体完成。)
29 29
30 -<!-- 模块格式示例(由 lite-build-db 追加;功能子项由 feature-review 在 approve 时勾选): 30 +<!-- 模块格式示例(由 build-db 追加;功能子项由 feature-review 在 approve 时勾选):
31 - module_0 系统管理 31 - module_0 系统管理
32 - 依赖: — 32 - 依赖: —
33 - 路径: backend/module/sys/ 33 - 路径: backend/module/sys/
skills/plan/lite-init/templates/req-card-template.md renamed to skills/plan/init/templates/req-card-template.md
1 <!-- 1 <!--
2 req-card-template:单张 REQ 卡片骨架。每张卡片是 docs/01-需求清单/<module>/REQ-XXX-NNN.md 一个独立文件。 2 req-card-template:单张 REQ 卡片骨架。每张卡片是 docs/01-需求清单/<module>/REQ-XXX-NNN.md 一个独立文件。
3 渲染约定: 3 渲染约定:
4 -1) lite-init 渲染时**只替换 6 个占位符**:{{req_id}} / {{title}} / {{goal}} / {{rules}} / {{constraints}} / {{acceptance}} 4 +1) init 渲染时**只替换 6 个占位符**:{{req_id}} / {{title}} / {{goal}} / {{rules}} / {{constraints}} / {{acceptance}}
5 这 6 项由 CC 根据 docs/01-需求清单/index.md 的「核心功能点」推断起草: 5 这 6 项由 CC 根据 docs/01-需求清单/index.md 的「核心功能点」推断起草:
6 - req_id / title:从核心功能点拆分命名得来 6 - req_id / title:从核心功能点拆分命名得来
7 - goal:用一句话展开 title 7 - goal:用一句话展开 title
@@ -10,7 +10,7 @@ req-card-template:单张 REQ 卡片骨架。每张卡片是 docs/01-需求清 @@ -10,7 +10,7 @@ req-card-template:单张 REQ 卡片骨架。每张卡片是 docs/01-需求清
10 - `输入` 的表:8 列(字段 / 类型 / 必填 / 输入方式 / 显示来源 / 预加载 / 默认值 / 业务规则),其中 `预加载` 取值为 `页面加载时` / `用户操作时` / `—`;模板内含示例数据(表1 6 行、表2 3 行) 10 - `输入` 的表:8 列(字段 / 类型 / 必填 / 输入方式 / 显示来源 / 预加载 / 默认值 / 业务规则),其中 `预加载` 取值为 `页面加载时` / `用户操作时` / `—`;模板内含示例数据(表1 6 行、表2 3 行)
11 - `输出` 的表:3 列(字段 / 类型 / 显示来源),模板内含示例数据(表1 / 表2 各 3 行) 11 - `输出` 的表:3 列(字段 / 类型 / 显示来源),模板内含示例数据(表1 / 表2 各 3 行)
12 - 表的数量是可变的:人工拿到卡片后按 REQ 实际情况增删表(删多余的 `表N` 整段 / 复制为 `表3 / 表4 / ...`)和编辑字段 12 - 表的数量是可变的:人工拿到卡片后按 REQ 实际情况增删表(删多余的 `表N` 整段 / 复制为 `表3 / 表4 / ...`)和编辑字段
13 -3) `**依赖表**: TBD(lite-design 自动补)` 和 `**依赖接口**: TBD(lite-build-db 自动补)` 是后续 skill 自动回填的占位,渲染时**保持原样**,不要替换为 `-` 也不要替换为 `{{...}}` 13 +3) `**依赖表**: TBD(design 自动补)` 和 `**依赖接口**: TBD(build-db 自动补)` 是后续 skill 自动回填的占位,渲染时**保持原样**,不要替换为 `-` 也不要替换为 `{{...}}`
14 4) 渲染后这段 HTML 注释要**剥掉**,不进入最终卡片 14 4) 渲染后这段 HTML 注释要**剥掉**,不进入最终卡片
15 --> 15 -->
16 ### {{req_id}} {{title}} 16 ### {{req_id}} {{title}}
@@ -59,5 +59,5 @@ req-card-template:单张 REQ 卡片骨架。每张卡片是 docs/01-需求清 @@ -59,5 +59,5 @@ req-card-template:单张 REQ 卡片骨架。每张卡片是 docs/01-需求清
59 - **跨字段规则**: {{rules}} 59 - **跨字段规则**: {{rules}}
60 - **边界**: {{constraints}} 60 - **边界**: {{constraints}}
61 - **验收**: {{acceptance}} 61 - **验收**: {{acceptance}}
62 -- **依赖表**: TBD(lite-design 自动补)  
63 -- **依赖接口**: TBD(lite-build-db 自动补) 62 +- **依赖表**: TBD(design 自动补)
  63 +- **依赖接口**: TBD(build-db 自动补)