feat: Bug 闭环能力通过角色技能定义扩展(测试→bug→修复→复测→关闭)

按「能力通过技能定义扩展」原则,代码只补工具原语,闭环行为全在技能里:
- 新增 bug-confirm 能力技能(capability: bug_confirm_capability + confirm/reject/reopen/list_bugs)
- PM 角色技能:capability 加 bug_confirm_capability + 职责「审核 test 通过后查 open bug,零散→confirm+派发修复任务,系统→rollback;修复通过后派发复测任务」
- develop 角色技能:职责「修复 Bug 任务 → start_fix + fix_bug」
- test 角色技能:职责「复测任务 → verify + close / reopen」
- bug-test 能力补 reopen_bug 工具

LLM 读技能后自主驱动闭环,代码不写死「查 bug→派任务」逻辑。
This commit is contained in:
yumoqing 2026-08-23 10:32:28 +08:00
parent 6863f73728
commit 2ac7702c39
5 changed files with 37 additions and 4 deletions

View File

@ -0,0 +1,25 @@
---
name: bug-confirm
description: 确认/驳回/重开 Bug 能力——confirm_bug/reject_bug/reopen_bug/list_bugs 工具集agent.pm 用)。审核 test 交付时据此处理 open bug。完整状态机见 bug 技能。
capability: bug_confirm_capability
tools: [confirm_bug, reject_bug, reopen_bug, list_bugs]
---
# 确认 Bug 能力agent.pm
## 职责
- `confirm_bug`open → confirmed确认缺陷有效准备派发修复
- `reject_bug`open/confirmed → rejected驳回误报/重复/非缺陷)
- `reopen_bug`closed/rejected → open重开重新处理
- `list_bugs`:查 Bug 清单(可按 status 过滤)
## 状态机
完整流转见 `bug` 技能open → confirmed → fixing → fixed → verified → closed
## 闭环触发(审核 test 交付通过时)
审核 test 任务通过后,`list_bugs` 查该迭代 `status=open` 的 Bug分类处理
- **零散 Bug**(单点缺陷,不影响整体)→ 逐个 `confirm_bug` 确认,然后 `create_tasks` 派发一个「修复 Bug」任务给 developdescription 列出 bug id + 标题 + 描述),让 develop 逐个修复。Bug 闭环不打断任务链。
- **系统性缺陷**Bug 多/严重、设计有缺陷、需求理解错、部署有问题)→ `review_rollback` 回退到 develop/deploy_test/design不逐个 confirm。
## 审核 develop「修复 Bug」任务通过时
修复任务通过后,`list_bugs` 查该迭代 `status=fixed` 的 Bug`create_tasks` 派发一个「复测」任务给 testdescription 列出已修复 bug 清单),让 test 验证后关闭。

View File

@ -1,8 +1,8 @@
---
name: bug-test
description: 测试 Bug 能力——report_bug/verify_bug/close_bug/list_bugs 工具集agent.test 用)。完整状态机见 bug 技能。
description: 测试 Bug 能力——report_bug/verify_bug/close_bug/reopen_bug/list_bugs 工具集agent.test 用)。完整状态机见 bug 技能。
capability: bug_test_capability
tools: [report_bug, verify_bug, close_bug, list_bugs]
tools: [report_bug, verify_bug, close_bug, reopen_bug, list_bugs]
---
# 测试 Bug 能力agent.test
@ -11,6 +11,7 @@ tools: [report_bug, verify_bug, close_bug, list_bugs]
- `report_bug`:用例 fail 后上报 Bug落库 sd_bugsstatus=open
- `verify_bug`fixed → verified验证修复生效
- `close_bug`verified → closed关闭
- `reopen_bug`closed/rejected → open复测未通过时重开重新走闭环
- `list_bugs`:查 Bug 清单
## 状态机

View File

@ -18,6 +18,11 @@ capability: feature_dev_capability, bug_fix_capability
- 模块是 Python 包(无独立 app.py/端口/Dockerfile通过 `load_{模块}()` 挂到应用;取库名用 `ServerEnv().get_module_dbname('模块名')`,禁止硬编码 DBNAME
- 基础模块apppublic / sqlor / ahserver / accounting / appbase / rbac已存在直接复用不重新开发
### 修复 Bug 任务PM 派发的「修复 Bug」任务
- 任务 description 带 bug 清单bug id + 标题 + 描述),逐个修复
- 修复流程:`list_bugs` 查 bug → `start_fix`confirmed→fixing→ 改代码 → `fix_bug`fixing→fixed附 fix_description + fix_commit
- 状态迁移只用工具start_fix/fix_bug不直接改 sd_bugs 库
## 应遵守的规范(开发前先 load_skill 加载对应全文,不要凭记忆瞎写)
- `module-development-spec`模块目录结构Python 包目录=模块名、非 src、init.py 三处同步注册、pyproject.toml、scripts/load_path.py
- `database-table-definition-spec`表定义四段式格式summary/fields/indexes/codes、抽象类型

View File

@ -1,7 +1,7 @@
---
name: role
description: 项目经理角色定义。审核/派发任务时先 load_skill 加载本技能——本技能规定该加载project-directory-spec交付件落点路径、sdlc-repo-standard交付件格式与审核要点。不先加载会按错误路径检查交付件、漏检实际产出。
capability: task_capability
description: 项目经理角色定义。审核/派发任务时先 load_skill 加载本技能——本技能规定该加载project-directory-spec交付件落点路径、sdlc-repo-standard交付件格式与审核要点、bug-confirm审核 test 后走 Bug 闭环)。不先加载会按错误路径检查交付件、漏检实际产出、漏处理 Bug
capability: task_capability, bug_confirm_capability
---
# 项目经理pm角色定义
@ -10,6 +10,7 @@ capability: task_capability
- 项目计划、任务分配、任务验收
- 按 design 阶段设计师的模块清单派发 develop 任务(一个模块一个任务,无依赖并行、有依赖串行 depends_on
- 默认自动推进项目(审核通过→自动创建后续任务→自动分解派发),无需用户指令,暂停才需指令
- **Bug 闭环**(审核 test 通过后执行,工具见 bug-confirm 能力):`list_bugs` 查该迭代 `status=open` 的 Bug —— 零散 Bug → 逐个 `confirm_bug` + `create_tasks` 派发一个「修复 Bug」任务给 developdescription 列出 bug id+标题+描述);系统性缺陷 → `review_rollback` 回退 deploy_test/develop/design。审核「修复 Bug」任务通过后`list_bugs``status=fixed` 的 Bug → 派发「复测」任务给 test。
## 应遵守的规范(审核/派发前先 load_skill 加载对应全文,不要凭记忆瞎写)
- `project-directory-spec`:各阶段交付件落点路径(检查交付件是否在正确位置)

View File

@ -12,6 +12,7 @@ capability: test_plan_capability, test_case_capability, bug_test_capability
- **建测试用例**:用 `create_case` 落库 sd_test_cases状态 pending每个功能点都要有用例覆盖
- **真实执行用例**:用 `pass_case` / `fail_case` / `skip_case` / `block_case` 记录执行结果selftest.py 必须是真实断言(非占位符),附真实执行输出
- **失败建 Bug**:用例 fail 后用 `report_bug` 建 Bug 落库 sd_bugs让缺陷走闭环
- **复测已修复 BugPM 派发的「复测」任务)**:任务 description 带已修复 bug 清单,逐个回归验证——通过 → `verify_bug`fixed→verified+ `close_bug`verified→closed未通过 → `reopen_bug`→open重新走闭环
- 产出测试文档test-plan.md / test-cases.md / test-report.md**文档里的用例数/执行数/Bug 数必须与落库数据一致**
## 应遵守的规范(执行前先 load_skill 加载对应全文,不要凭记忆瞎写)