feat: improve goal mode and Codex App resilience

This commit is contained in:
shiyue
2026-08-18 21:27:58 +08:00
parent 389690af64
commit 8fe31e0a5e
27 changed files with 631 additions and 24 deletions

View 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 的可用性或调度策略。
- 不把不可恢复的协议、鉴权或用户输入错误纳入无限重试。
- 不重做现有视觉主题。