feat: improve goal mode and Codex App resilience
This commit is contained in:
5
.trellis/tasks/08-18-codexapp-retry-resume/check.jsonl
Normal file
5
.trellis/tasks/08-18-codexapp-retry-resume/check.jsonl
Normal file
@@ -0,0 +1,5 @@
|
||||
{"file":".trellis/spec/backend/error-handling.md","reason":"核验错误分类、重试上限与最终失败行为"}
|
||||
{"file":".trellis/spec/backend/quality-guidelines.md","reason":"核验后端测试与代码质量"}
|
||||
{"file":".trellis/spec/frontend/state-management.md","reason":"核验重连状态、计数和任务终态一致性"}
|
||||
{"file":".trellis/spec/frontend/quality-guidelines.md","reason":"核验前端测试与代码质量"}
|
||||
{"file":".trellis/spec/guides/cross-layer-thinking-guide.md","reason":"核验跨层事件契约和恢复后的数据流"}
|
||||
@@ -0,0 +1,5 @@
|
||||
{"file":".trellis/spec/backend/error-handling.md","reason":"约束临时服务错误、终态错误和重试边界的处理方式"}
|
||||
{"file":".trellis/spec/backend/quality-guidelines.md","reason":"约束后端实现与回归测试质量"}
|
||||
{"file":".trellis/spec/frontend/state-management.md","reason":"约束重连计数和运行终态的前端状态管理"}
|
||||
{"file":".trellis/spec/frontend/quality-guidelines.md","reason":"约束前端实现与测试质量"}
|
||||
{"file":".trellis/spec/guides/cross-layer-thinking-guide.md","reason":"重试链路跨越 app-server、SSE/WebSocket 与前端状态机,需要校验边界契约"}
|
||||
27
.trellis/tasks/08-18-codexapp-retry-resume/prd.md
Normal file
27
.trellis/tasks/08-18-codexapp-retry-resume/prd.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# 修复 Codex App 重试中断
|
||||
|
||||
## 问题
|
||||
|
||||
Codex App 遇到临时 503 或网络错误时,界面虽然连续显示自动重试与“从中断处继续”,但当前任务仍被终止。第五次附近还会先展示终端 503,再把重连计数重置为 `1/5`,造成状态与真实执行不一致。
|
||||
|
||||
## 需求
|
||||
|
||||
1. 可恢复错误进入统一的续跑状态,不提前关闭当前任务。
|
||||
2. 同一恢复周期的尝试次数单调递增,不因终端事件或传输重连错误重置。
|
||||
3. 每次自动重试必须真正续接原线程/任务,而不只是显示通知。
|
||||
4. 恢复成功后清理重试状态并继续流式输出。
|
||||
5. 达到重试上限后才进入明确失败终态,并保留可理解的错误原因。
|
||||
|
||||
## 验收标准
|
||||
|
||||
- 自动化测试复现“连续临时失败后仍续跑”的场景,并在修复前失败、修复后通过。
|
||||
- 自动化测试验证计数不会在同一恢复周期中从 `5/5` 错误回到 `1/5`。
|
||||
- 自动化测试验证成功恢复与耗尽重试两种终态。
|
||||
- 现有 Codex App 相关回归测试和静态检查通过。
|
||||
|
||||
## 非目标
|
||||
|
||||
- 不修改上游 provider 的可用性或调度策略。
|
||||
- 不把不可恢复的协议、鉴权或用户输入错误纳入无限重试。
|
||||
- 不重做现有视觉主题。
|
||||
|
||||
31
.trellis/tasks/08-18-codexapp-retry-resume/task.json
Normal file
31
.trellis/tasks/08-18-codexapp-retry-resume/task.json
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"id": "codexapp-retry-resume",
|
||||
"name": "codexapp-retry-resume",
|
||||
"title": "修复 Codex App 重试中断",
|
||||
"description": "",
|
||||
"status": "completed",
|
||||
"dev_type": null,
|
||||
"scope": null,
|
||||
"package": null,
|
||||
"priority": "P2",
|
||||
"creator": "shiyue",
|
||||
"assignee": "shiyue",
|
||||
"createdAt": "2026-08-18",
|
||||
"completedAt": "2026-08-18",
|
||||
"branch": null,
|
||||
"base_branch": "main",
|
||||
"worktree_path": null,
|
||||
"commit": null,
|
||||
"pr_url": null,
|
||||
"subtasks": [],
|
||||
"children": [],
|
||||
"parent": null,
|
||||
"relatedFiles": [
|
||||
"lib/codex-app-runtime.js",
|
||||
"scripts/mock-codex-app-server.js",
|
||||
"scripts/regression.js",
|
||||
".trellis/spec/backend/error-handling.md"
|
||||
],
|
||||
"notes": "区分 Codex App 重连过程通知与终端错误;定向及完整回归通过。",
|
||||
"meta": {}
|
||||
}
|
||||
Reference in New Issue
Block a user