diff --git a/skills-req/req-plugin/skills/SKILL.md b/skills-req/req-plugin/skills/SKILL.md index ce35816..d5ad512 100644 --- a/skills-req/req-plugin/skills/SKILL.md +++ b/skills-req/req-plugin/skills/SKILL.md @@ -92,7 +92,8 @@ Gate 4: 完整性检查 ── 三段式完整 + 验收标准 ≥ 2 条 + PRD 5. /req review pass → 评审通过 (approved, delivery_stage=analysis) 6. /req next → 推进到 design/dev 阶段 7. /req dev → 启动开发(创建【开发】任务, delivery_stage=dev) -8. /req next → 推进到 review 阶段 +7.5 /req ci → CI 质量门禁检查与自动修复(PR 提交后执行) +8. /req next → 推进到 review(需 quality_gate 证据) 9. /req cr → 代码评审 + 约定检查 + bug约定建议(⭐ harness 自动) 10. /req next → 推进到 testing 阶段 11. /req test → 测试验收(Gate 0B 约定检查 ⭐ + Gate 1-5) @@ -307,6 +308,10 @@ Deploy Gate 3: 证据完整 ── 验收任务有文档,含检查项表格 + 5. 自动创建目标阶段建议任务 6. 展示:「✅ 已创建: #XXXX {任务名}。如需撤销请说明」 +**dev → review 门禁**: +- `pr_created`: PR 已创建 +- `quality_gate`: CI 质量门禁通过记录(质量门禁未通过时提示:「CI 质量门禁未通过,请先运行 `/req ci`」) + **阶段顺序**:`analysis → design → dev → review → testing → [待部署池] → released` **`/req resume [REQ-ID]`** — 会话断点恢复:`ai-proj req get --id ` 获取 delivery_stage + 任务状态 + 建议操作 @@ -337,6 +342,34 @@ Deploy Gate 3: 证据完整 ── 验收任务有文档,含检查项表格 + 9. 展示发现摘要,AskUserQuestion 确认是否创建 bug 修复任务 10. 若有 High/Critical 发现 → `ai-proj task create` 创建关联修复任务 +**`/req ci [REQ-ID]`** — CI 质量门禁检查与自动修复: +1. `check-ci-status.sh` 检查当前分支 CI 状态 + - 通过 → 写入 `quality_gate` 门禁证据(`gate-callback.sh`)→ 完成 + - 运行中 → `--wait` 等待最多 5 分钟 + - 失败 → 进入自动修复循环 +2. 自动修复循环(最多 3 轮): + a. `fetch-ci-logs.sh --failed-only` 获取失败 job 日志 + b. AI 诊断根因(见错误模式目录) + c. 自动修复代码 + d. 本地验证(`go vet ./...` / `npx tsc --noEmit`) + e. `git commit && git push` + f. `check-ci-status.sh --trigger --wait` 等待新 CI + g. 通过 → 写入门禁证据 → 完成 + h. 仍失败 → 下一轮(超过 3 轮 → AskUserQuestion 是否继续) +- 参数:`--trigger` 手动触发 CI,`--wait` 等待完成,`--no-fix` 仅诊断不修复 + +**错误模式目录**: + +| 失败 Job | 错误模式 | 修复策略 | +|----------|---------|---------| +| architecture-gate | 架构 ratchet 违规 | 读取违规文件,用 service 层替代直接 database import | +| backend-lint (go vet) | `file.go:42: unreachable code` | 读取文件,修复具体问题 | +| backend-lint (gofmt) | `Files need gofmt:` | 运行 `gofmt -s -w` | +| backend-lint (go test) | `--- FAIL: TestXxx` | 读取测试和实现,修复根因 | +| frontend-lint (ESLint) | `warnings N > 4600` | 对比 main,只修复新增警告 | +| frontend-lint (Prettier) | `unformatted N > 1000` | `npx prettier --write` 变更文件 | +| frontend-lint (TS) | `errors N > 60` | 对比 main,只修复新增类型错误 | + **`/req test [REQ-ID]`** — 测试(前置:代码评审通过),遵循 dev-test 技能的 5-Gate 流程 **`/req deploy [--project ] [--env production]`** — 项目级批量部署(Staging 已自动化,push develop 即触发): diff --git a/skills-req/req-workflow-plugin/skills/SKILL.md b/skills-req/req-workflow-plugin/skills/SKILL.md index 72f1fad..7025d60 100644 --- a/skills-req/req-workflow-plugin/skills/SKILL.md +++ b/skills-req/req-workflow-plugin/skills/SKILL.md @@ -18,7 +18,8 @@ description: 需求完整工作流。用于从创建到归档的完整流程、H 5. /req next → 推进到 design/dev 阶段 6. /req dev → 启动开发(创建【开发】任务, delivery_stage=dev) 7. req-dev 技能 → 编写开发文档 -8. /req next → 推进到 review 阶段 +7.5 /req ci → CI 质量门禁检查与自动修复(PR 提交后执行) +8. /req next → 推进到 review(需 quality_gate 门禁证据) 9. /req cr → 代码评审(创建【代码评审】任务, delivery_stage=review) 10. /req next → 推进到 testing 阶段 11. /req test → 测试验收(创建【测试】任务, delivery_stage=testing)