diff --git a/skills_library/pipelines/sdlc_general/common/task/SKILL.md b/skills_library/pipelines/sdlc_general/common/task/SKILL.md index 023c1de..9734015 100644 --- a/skills_library/pipelines/sdlc_general/common/task/SKILL.md +++ b/skills_library/pipelines/sdlc_general/common/task/SKILL.md @@ -2,7 +2,7 @@ name: task description: SDLC 产线默认任务状态机规范——定义任务状态、合法流转、角色→操作权限、门禁、人拍板点。agent 处理任务时据此操作,LLM 读本 skill 判断流转合法性。项目可同名 skill 覆盖。触发:认领/提交/审核/退回/完成/重试任务。 capability: task_capability -tools: [claim_task, submit_task, approve_task, reject_task, complete_task, mark_failed, retry_task, suspend_task, revive_task, set_task_state] +tools: [claim_task, submit_task, approve_task, reject_task, complete_task, mark_failed, retry_task, reset_task_retry, suspend_task, revive_task, set_task_state] --- # 任务状态机规范(SDLC 产线默认) @@ -76,6 +76,13 @@ submitted ──claim──▶ running ──submit──▶ review ──approv 3. **暂停才需指令**:仅当用户明确指令「暂停 / 停止推进」时,项目置为 paused(会话 agent 调 pause_project)。paused 时 PM 不认领审核任务、不推进;恢复推进(resume_project)后自动继续。 4. 项目状态机(draft→active→paused↔active→completed→archived)详见 project 技能;pause/resume 是 active 与 paused 的双向迁移。 +### 任务重复上限与任务链暂停(最大重复数) + +1. **最大重复数**:每个任务有最大重复数(`task_max_retry`,appbase params 表,默认 3)。任务失败自动重试(瞬时错误),`retry_count` 递增。 +2. **超限暂停任务链**:`retry_count` 达到上限(或判定为永久错误)→ 系统自动 `pause_project` 暂停项目推进(任务链暂停)+ 抛 `fault_report` 故障问题(first_handler=main_agent),任务置 waiting 等人工介入。 +3. **人工处理恢复**:故障冒泡给用户(ask_user/answer_question),用户处理完毕 → 主 agent 调 `reset_task_retry`:任务 `retry_count` 归零、waiting/failed → submitted 重新执行,并 `resume_project` 恢复项目推进。 +4. 区分:瞬时错误(timeout/网络/限流/5xx)走 `retry_task` 自动重试;永久错误或超限走人工 `fault_report` → `reset_task_retry`。 + ### 任务分解与编排(先评估,再拆解) PM 派发任务时先评估复杂度,复杂任务自动分解并编排执行顺序(能并行并行、不能并行串行),同时记录父子关系。 @@ -103,7 +110,7 @@ problem_type 用 approval/confirm)。人答复后由 agent 再执行状态迁 ## 七、配套能力(task 能力工具) `claim_task` / `submit_task` / `approve_task` / `reject_task` / `complete_task` / -`mark_failed` / `retry_task` / `suspend_task` / `revive_task` / `set_task_state`(通用 CAS 兜底)。 +`mark_failed` / `retry_task` / `reset_task_retry` / `suspend_task` / `revive_task` / `set_task_state`(通用 CAS 兜底)。 ## 八、分层覆盖