Skip to content

feat: 统一十分钟等待并补齐宿主超时 - #327

Merged
TimWongUp merged 3 commits into
mainfrom
codex/wait-window-timeouts
Nov 7, 2026
Merged

TimWongUp merged 3 commits into
mainfrom
codex/wait-window-timeouts

Conversation

@TimWongUp

Copy link
Copy Markdown
Owner

长任务原先每四分钟让 boss 空醒一次,部分宿主的原生工具超时又短于服务等待。现在所有 boss(含 WorkBuddy 和未知宿主)的默认 wait 统一为 600 秒,完成、阻塞、待答弹框及审核仍提前唤醒;wait_seconds 只接受 0、600,移除 240。

  • 增加可选递增 seq 并回显,待收回执提示下一次序号,用于区分正常连续等待;不保存序号、不去重或重放,收件箱仍只交付一次。
  • App 接入和刷新已有用户级 AgentNave 条目时,为 Codex、Claude、Antigravity、Pi、Hermes、DeepSeek Harness、ZCode 补足十二分钟工具超时;保留更长值及 Antigravity 的 -1。Grok 保留更长原生默认值,补齐已有较短服务和等待相关工具覆盖值。不修改其他服务或宿主全局超时。
  • 同步派发后先等的说明、生成规则、Manager Skill、安装文档及 ADR-0066。

验证:与 CI 相同的 Python 3.12 全量 pytest 533 通过、5 跳过;Ruff format/check、Pyright、cargo fmt、cargo clippy --all-targets -- -D warnings 已通过;Rust 全量串行运行 292 通过、2 忽略。

环境记录:首次并行编译期间既有短时限测试超时,独立补跑通过;Rust HTTP fixture 和 Python PTY fixture 需要本地回环监听/只读 ps 权限,已在允许对应能力后验证。新建环境曾自动选择 Python 3.14,既有深层 JSON 清理测试失败;相同测试在未改动的 main 上用 3.14 同样失败,主 checkout 与 CI 的 Python 3.12 则通过,未混入无关修复。

剩余边界:CodeBuddy 保留已核实的一小时原生默认值,已有更短的宿主进程 MCP_TOOL_TIMEOUT 需由用户调整;WorkBuddy 原生工具超时字段尚未核实,按本次选择同样使用十分钟等待。尚未逐宿主做真实十分钟长调用,seq 不承诺消除所有宿主的重复调用检测。未合并、未发布。

Copy link
Copy Markdown
Owner Author

评审完成(R2,可合并)

  • head: 6843b55;base: 407c7b8。完整范围 git diff base...head。
  • 风险与工位:wait/seq 的就绪、提前唤醒及一次性交付、跨格式定点超时补齐与旧调用迁移由 correctness-reviewer(Antigravity / gemini-4-argon-medium)评审完整 diff;公开合同、宿主配置所有权和 Codex 外层等待由 architecture-reviewer(Claude Code / claude-opus-5-5)聚焦评审。
  • Finding:Linux 两份文档四处旧240参数,CONFIRMED,5addd237修复,原工位定向复核通过;Skill 删除具体长让出参数导致十秒重复轮询风险,CONFIRMED,6843b558恢复 exec pragma 与 functions.wait 两处300000ms具体参数,原架构工位定向复核通过。
  • 非数字 timeout 阻断该宿主刷新,CONFIRMED,保留可见错误和原字节,不猜宿主值或静默宣称已满足720秒;已有错误路径测试验证,记为低风险配置边界。
  • 本地验证:生产代码候选ad6060cd上的Python3.12全量533通过/5跳过,Rust292通过/2忽略;Ruff/Pyright/cargo fmt/clippy通过。最终head仅文档与Skill修正,git diff --check及定向原工位复核通过,代码/测试证据仍适用。
  • CI:最终head Python macOS/Linux/Windows均成功、Tray成功。中间Windows遇到既有50ms结果保留测试时序失败,当前head已成功。
  • 剩余风险:未逐宿主实测完整十分钟调用;WorkBuddy原生timeout字段未知,按用户选择同样600秒wait;CodeBuddy较短宿主环境覆盖值需用户处理。seq不承诺消除所有代理循环检测。Codex300秒让出依据项目#288实测,本轮未重做长时等待;升级后须重连。与#326集成时需保留双方规则与ADR索引。

@TimWongUp
TimWongUp merged commit eb49c24 into main Nov 7, 2026
9 checks passed
@TimWongUp
TimWongUp deleted the codex/wait-window-timeouts branch November 7, 2026 16:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant