From 31c05c8ceb090c58b963d8d57818b305f268d3c1 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 19 Aug 2026 07:29:10 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=BB=E5=8A=A1=E6=9C=80=E5=A4=A7?= =?UTF-8?q?=E9=87=8D=E5=A4=8D=E6=95=B0(task=5Fmax=5Fretry)=E2=80=94?= =?UTF-8?q?=E2=80=94=E8=B6=85=E9=99=90=E6=9A=82=E5=81=9C=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E9=93=BE+=E6=8A=9B=E6=95=85=E9=9A=9C=E7=BB=99=E4=BA=BA?= =?UTF-8?q?=E5=B7=A5=EF=BC=8C=E4=BA=BA=E5=B7=A5=E5=A4=84=E7=90=86=E5=90=8E?= =?UTF-8?q?reset=5Ftask=5Fretry=E6=B8=85=E9=9B=B6=E9=87=8D=E6=89=A7?= =?UTF-8?q?=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pipelines/sdlc_general/common/task/SKILL.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) 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 兜底)。 ## 八、分层覆盖