# R3.2 任务报告 ## 结果 [AgentRun PR #308](https://github.com/pikasTech/agentrun/pull/308) 已增加正式 `POST /api/v1/queue/tasks/:id/retry`: - retry 保持原 task identity、payload、session 和资源合同不变; - 每次真实 retry 分配新的 attempt、run、command 和 runner Job identity; - 同一 retry idempotency key 在状态检查前解析,重复请求返回同一结果; - 只接受 Queue 已处于 `failed` 或 `blocked`,`completed`、`cancelled` 及其他状态 fail closed; - `--dry-run` 执行与真实请求相同的服务端校验,但不修改 task/version,也不创建 attempt、run、command 或 runner Job; - runner Job 创建失败会落到预留 attempt,允许使用同一 key 恢复; - public dispatch 拒绝调用方注入 `runnerJobId`,只有服务端 retry 内部可以使用预留 identity; - terminal run 上同 key、同 payload 的 command 重放返回原 command,不重复 event 或 Kafka outbox。 ## 验证 case `00/21/22/35/78` 共 75 个命名测试通过;独立审查结论为 APPROVE。残余边界是 retry 不会主动刷新 Core:若 Queue 摘要尚未进入 `failed/blocked`,先通过正式 task/attempt 读取刷新权威状态,这一行为已写入长期参考,未引入隐式写入或第二状态投影。