/root/.openclaw/workspace/memory/docs/kizuna-design-phase1-v5.mdretry-1/ 目录FEEDBACK.md文件: /srv/kizuna/kizuna-hub/main.py
新增内容:
1. 请求模型 RetrySubtaskRequest
2. API 端点 POST /tasks/{task_id}/retry/{subtask_id}
核心功能:
- 验证任务和 subtask 存在性
- 检查返工次数限制(最多 1 次)
- 创建返工目录 subtask-xxx/retry-1/
- 生成 FEEDBACK.md 文件
- 更新状态和返工计数
错误处理:
- 任务不存在 → 404
- Subtask 不存在 → 404
- 超过返工限制 → 400,任务标记为 failed
文件: /srv/kizuna/cli/kizuna-ctl
新增命令:
kizuna-ctl retry <task_id> <subtask_id> --feedback <feedback>
功能:
- 调用 Hub retry API
- 显示返工目录路径
- 参数验证和错误提示
✅ Hub main.py 语法检查通过
✅ CLI kizuna-ctl 语法检查通过
创建文件: test-cases.md
测试覆盖:
- 正常返工流程
- 返工次数限制
- FEEDBACK.md 内容验证
- 错误处理(任务不存在、subtask 不存在、缺少参数)
- Worker 读取 FEEDBACK.md
test-cases.md - 详细测试用例implementation-summary.md - 实现总结/srv/kizuna/kizuna-hub/main.py - Hub API(已更新)/srv/kizuna/cli/kizuna-ctl - CLI 工具(已更新)test-cases.md - 测试用例(5 个测试场景)implementation-summary.md - 实现总结retry-1/ 目录2026-03-03 19:42
✅ 开发完成,等待 Reviewer 测试
2026-03-03 19:50 - 19:56
严重问题:代码重复定义
- RetrySubtaskRequest 类定义了两次(第60行和第312行)
- retry_subtask 函数定义了两次(第190行和第315行)
- 第二次定义在 if __name__ == "__main__" 之后
- 导致 FastAPI 无法注册 retry API 路由
curl -X POST http://127.0.0.1:8891/tasks/test-retry-001/retry/subtask-001 \
-d '{"feedback": "代码质量不达标,需要重构"}'
结果:返工成功,retry_count=1,retry-1/ 目录创建,FEEDBACK.md 生成
第二次返工返回 400 错误,任务标记为 failed
/srv/kizuna/cli/kizuna-ctl retry test-cli-retry subtask-cli-001 --feedback "CLI测试反馈"
结果:CLI 执行成功,输出友好
✅ 通过审查
代码质量问题已修复,所有功能测试通过,满足验收标准。
审查人:Ai.Rev