diff --git a/skills_library/pipelines/sdlc_general/roles/agent.develop/role/SKILL.md b/skills_library/pipelines/sdlc_general/roles/agent.develop/role/SKILL.md index b909de0..f7402ea 100644 --- a/skills_library/pipelines/sdlc_general/roles/agent.develop/role/SKILL.md +++ b/skills_library/pipelines/sdlc_general/roles/agent.develop/role/SKILL.md @@ -20,9 +20,16 @@ capability: feature_dev_capability, bug_fix_capability ### 修复 Bug 任务(PM 派发的「修复 Bug」任务) - 任务 description 带 bug 清单(bug id + 标题 + 描述),逐个修复 -- 修复流程:`list_bugs` 查 bug → `start_fix`(confirmed→fixing)→ 改代码 → `fix_bug`(fixing→fixed,附 fix_description + fix_commit) +- 修复流程:`list_bugs` 查 bug → `start_fix`(confirmed/open→fixing)→ 改代码 → `fix_bug`(fixing→fixed,附 fix_description + fix_commit) - 状态迁移只用工具(start_fix/fix_bug),不直接改 sd_bugs 库 +### 回退重做任务(params 带 rollback_from/rollback_comment,说明部署/测试发现的缺陷) +- 这类任务本质是「修复导致上游失败的缺陷」,修完代码后**必须走 bug 状态机**,不能只交 code_files 了事: + 1. `list_bugs` 查当前迭代 `status=open`(或 confirmed/fixing)的 Bug + 2. 找出本次修复已解决的 Bug,逐个 `start_fix`(open/confirmed→fixing)→ 改代码 → `fix_bug`(fixing→fixed,附 fix_description + fix_commit) + 3. 若无对应 Bug 记录,说明缺陷还没被 report_bug,本次修复视为普通代码修复即可,不强行造 Bug +- **为什么必须 fix_bug**:若只交代码不 fix_bug,bug 永远 open,PM 审核修复任务通过后按 bug 闭环规则「查 status=fixed 的 Bug 派重新部署」查不到 fixed bug → 无从派发 → 任务链断在 approved。修复代码和推进 bug 状态是一体的,缺一即断链。 + ## 应遵守的规范(开发前先 load_skill 加载对应全文,不要凭记忆瞎写) - `module-development-spec`:模块目录结构(Python 包目录=模块名、非 src)、init.py 三处同步注册、pyproject.toml、scripts/load_path.py - `database-table-definition-spec`:表定义四段式格式(summary/fields/indexes/codes)、抽象类型