From c2e1bfb0327e95f833aff971c132335e25b32d71 Mon Sep 17 00:00:00 2001 From: yourname Date: Sun, 12 Apr 2026 06:10:38 +0000 Subject: [PATCH] =?UTF-8?q?sync:=20d8d-iterate=20Phase=205=20=E6=97=85?= =?UTF-8?q?=E7=A8=8B=E9=AA=8C=E8=AF=81=E9=98=B2=E8=B7=B3=E8=BF=87=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=20=E2=80=94=20=E8=B7=AF=E5=BE=84=E5=AE=9A=E4=B9=89+St?= =?UTF-8?q?ep=E7=BA=A7=E8=BF=9B=E5=BA=A6+=E6=81=A2=E5=A4=8D=E5=8D=8F?= =?UTF-8?q?=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../skills/d8d-iterate/phase-01-analyze.md | 17 +++++++++-------- .claude/skills/d8d-iterate/phase-05-verify.md | 19 ++++++++++++++++++- .claude/skills/d8d-iterate/workflow.md | 19 ++++++++++++++++++- 3 files changed, 45 insertions(+), 10 deletions(-) diff --git a/.claude/skills/d8d-iterate/phase-01-analyze.md b/.claude/skills/d8d-iterate/phase-01-analyze.md index 57e8632..00a8c78 100644 --- a/.claude/skills/d8d-iterate/phase-01-analyze.md +++ b/.claude/skills/d8d-iterate/phase-01-analyze.md @@ -130,42 +130,43 @@ greenfield: feature (low risk, 无新 UI 页面): → Phase 2: edit-prd + update arch/ux + new epic → Phase 4: d8d-dev --epic {new-epic} - → Phase 5: d8d-dev --regression + → Phase 5: d8d-dev --regression → d8d-dev --journey feature (low risk, 有新 UI 页面): → Phase 2: edit-prd + update arch/ux + new epic → Phase 3: d8d-prototype --incremental [P] 或 [A](⛔ 铁律六 MANDATORY) → Phase 4: d8d-dev --epic {new-epic} - → Phase 5: d8d-dev --regression + → Phase 5: d8d-dev --regression → d8d-dev --journey feature (medium/high risk): → Phase 2: edit-prd + correct-course + update docs + new epic → Phase 3: d8d-prototype --incremental(⛔ 如有新 UI 则 MANDATORY,铁律六) → Phase 4: d8d-dev --epic {new-epic} - → Phase 5: d8d-dev --regression + → Phase 5: d8d-dev --regression → d8d-dev --journey bugfix (single file): → Phase 4: 直接修复 + d8d-dev --story {story-id} - → Phase 5: d8d-dev --regression (可选) + → Phase 5: d8d-dev --regression (可选) → d8d-dev --journey (可选,依赖回归执行) bugfix (multi file): → Phase 2: 如果需要更新文档 → Phase 4: d8d-dev --story {story-id} - → Phase 5: d8d-dev --regression + → Phase 5: d8d-dev --regression → d8d-dev --journey refactor: → Phase 2: correct-course + update docs → Phase 4: d8d-dev --epic {affected-epic} - → Phase 5: d8d-dev --regression + → Phase 5: d8d-dev --regression → d8d-dev --journey regression: - → Phase 5 only: d8d-dev --regression + → Phase 5: d8d-dev --regression → d8d-dev --journey + (Phase 5 包含回归验证和旅程验证两步,回归 PASS 后必须继续旅程验证) design: → Phase 2.5: 设计工具适配层重新提取设计变量(⭐ 如 design_file_changed=true 则必须) → Phase 3: d8d-prototype --incremental(使用最新设计截图作为基准) → Phase 4: d8d-dev --story {affected-stories} - → Phase 5: d8d-dev --regression (可选) + → Phase 5: d8d-dev --regression (可选) → d8d-dev --journey (可选,依赖回归执行) ``` ## 输出 diff --git a/.claude/skills/d8d-iterate/phase-05-verify.md b/.claude/skills/d8d-iterate/phase-05-verify.md index 83b37a2..64540fe 100644 --- a/.claude/skills/d8d-iterate/phase-05-verify.md +++ b/.claude/skills/d8d-iterate/phase-05-verify.md @@ -4,6 +4,15 @@ **验证顺序**(与 d8d-dev 铁律一致):回归验证 → 旅程验证,不得跳过回归直接旅程。 +## ⛔ Phase 5 入口检查(每次进入或恢复本文件时执行) + +1. 读取 `iterate-progress.md` +2. 根据 Phase 5 Step 状态定位恢复点: + - `step-51-regression` 不存在 → 从 Step 5.0 开始 + - `step-51-regression: completed` + `step-51-result: PASS` + `step-52-journey: pending` → **直接跳到 Step 5.2**(跳过已完成的构建和回归) + - `step-51-regression: completed` + `step-51-result: FAIL` → **跳到 Step 5.3**(跳过旅程) + - `step-52-journey: completed` → **跳到 Step 5.3**(生成报告) + ## 执行步骤 ### Step 5.0: 生产构建与外网验证 @@ -69,7 +78,10 @@ IF 变更类型 == feature 且 risk == low: **⛔ 结果判定**(Skill 调用返回后立即判断): -- 全部 PASS → 零暂停,自动继续 Step 5.2 旅程验证 +- 全部 PASS → ⛔ 立即执行以下三步(零暂停,不输出汇总,不询问用户): + 1. 更新 `iterate-progress.md`: `step-51-regression: completed, step-51-result: PASS, step-52-journey: pending` + 2. 读取 `iterate-progress.md` 确认状态 + 3. 调用 Skill tool 执行 Step 5.2 旅程验证 - 有 FAIL → **⛔ 自动修复流程**: 1. 分析失败原因,定位 bug 2. 使用 Edit tool 修复 @@ -96,6 +108,11 @@ skill: "d8d-dev" args: "--journey 旅程验证。验证所有用户旅程,包括已有旅程和新增功能的旅程。" ``` +**⛔ Step 5.2 返回后三步协议**: +1. 写入进度:`step-52-journey: completed, step-52-result: PASS/FAIL` +2. 读取 `iterate-progress.md` 确认状态 +3. 零暂停继续 Step 5.3 生成变更报告 + **铁律**: - 回归验证 PASS 后才能执行旅程验证 - 功能不存在时测旅程无意义(⛔ 不得跳过回归直接旅程) diff --git a/.claude/skills/d8d-iterate/workflow.md b/.claude/skills/d8d-iterate/workflow.md index 3e53480..7d61b2a 100644 --- a/.claude/skills/d8d-iterate/workflow.md +++ b/.claude/skills/d8d-iterate/workflow.md @@ -123,7 +123,13 @@ phase-01-analyze: completed | skipped | failed phase-02-docs: completed | skipped | failed phase-03-prototype: completed | skipped | failed phase-04-dev: completed | skipped | failed -phase-05-verify: completed | skipped | failed +phase-05-verify: + step-50-build: completed | skipped | failed + step-51-regression: completed | skipped | failed + step-51-result: PASS | FAIL | SKIPPED + step-52-journey: pending | completed | skipped | failed + step-52-result: PASS | FAIL | SKIPPED + step-53-report: pending | completed ``` ## 执行流程 @@ -203,3 +209,14 @@ Phase 5 — 旅程验证: 4. **错误恢复**:Phase 失败时记录状态,支持从断点恢复 5. **复用子技能**:通过 Skill tool 调用 d8d-requirements/d8d-prototype/d8d-dev,不重新实现 6. **自动提交推送**:每个 Phase 产生代码变更后立即 git commit + git push,不询问用户。包括 bug 修复、文档更新、状态文件变更 — 全部自动提交推送 + +### ⛔ Phase 内 Step 过渡守卫 + +Phase 内含多个 Step 且 Step 间有 Skill 调用时,Skill 返回后执行**"写-读-继续"三步**: + +1. **写**:立即将当前 Step 结果写入 `iterate-progress.md` +2. **读**:读取 `iterate-progress.md` 确认当前进度 +3. **继续**:找到下一个 pending 的 Step 执行(不询问、不停顿) + +进度文件是跨 Skill 调用的"外部记忆",确保上下文丢失或压缩后仍可恢复。 +任何 Step 完成后,必须检查进度文件中是否还有 pending 的 Step,而非直接结束 Phase。