fix: retry live Gateway readiness proof#104374
Conversation
|
Codex review: needs real behavior proof before merge. Reviewed July 11, 2026, 6:08 AM ET / 10:08 UTC. Summary PR surface: Tests +31, Other +32. Total +63 across 2 files. Reproducibility: yes. from source and the linked live report: current main performs one immediate post-restart deep RPC probe, and that probe can time out during healthy startup warmup before the identical command succeeds shortly afterward. Review metrics: none identified. Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land the bounded restart-only retry after correcting the validation references, while preserving the immediate no-op probe, exact-build checks, one restart-window audit, and fail-closed behavior after the retry budget is exhausted. Do we have a high-confidence way to reproduce the issue? Yes from source and the linked live report: current main performs one immediate post-restart deep RPC probe, and that probe can time out during healthy startup warmup before the identical command succeeds shortly afterward. Is this the best way to solve the issue? Yes. Retrying at the existing post-restart verification boundary is narrower and more maintainable than changing Gateway command timeouts or no-op heartbeat behavior, and it preserves the existing exact-build, audit, and fail-closed contracts. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 6268eeef15b6. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Tests +31, Other +32. Total +63 across 2 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
Merged via squash.
|
* origin/main: fix(cron): abort superseded reconciliation hooks (#104368) ci(release): expose Telegram runtime preflight stage (#104387) fix(status): avoid false shell-wrapper audit warnings (#81778) fix: retry live Gateway readiness proof (#104374) fix(exec-approval): stop misattributing Allow Always unavailability to policy (#97740) fix: preserve Mac bundle during live builds (#104376) chore(docs): translate with GPT-5.6 xhigh test: wire Control UI suite into CI, fix its broken tests, drop dead harness surface (#104361) fix(ui): hide group submenu separator when New group is the only entry (#104370) fix(discord): reset progress drafts across queued turns (#102341) docs(cli): clarify that exec-policy show and approvals get exclude per-session /exec overrides (#94999) fix(discord): single-source thread-binding default placement and guard artifact parity (#104342) fix(agents): add tool-activity heartbeat to keep subagent alive during tool calls (#95536) fix(maint): reuse recent same-PR hosted gates (#104355)
* fix: retry live Gateway readiness proof * style: format live updater readiness helper
* origin/main: fix(cron): abort superseded reconciliation hooks (openclaw#104368) ci(release): expose Telegram runtime preflight stage (openclaw#104387) fix(status): avoid false shell-wrapper audit warnings (openclaw#81778) fix: retry live Gateway readiness proof (openclaw#104374) fix(exec-approval): stop misattributing Allow Always unavailability to policy (openclaw#97740) fix: preserve Mac bundle during live builds (openclaw#104376) chore(docs): translate with GPT-5.6 xhigh test: wire Control UI suite into CI, fix its broken tests, drop dead harness surface (openclaw#104361) fix(ui): hide group submenu separator when New group is the only entry (openclaw#104370) fix(discord): reset progress drafts across queued turns (openclaw#102341) docs(cli): clarify that exec-policy show and approvals get exclude per-session /exec overrides (openclaw#94999) fix(discord): single-source thread-binding default placement and guard artifact parity (openclaw#104342) fix(agents): add tool-activity heartbeat to keep subagent alive during tool calls (openclaw#95536) fix(maint): reuse recent same-PR hosted gates (openclaw#104355)
What Problem This Solves
Closes #104365.
The live updater could report a successful exact-head Gateway restart as failed when its single deep RPC probe landed during startup warmup. The live service was healthy and the identical probe passed eight seconds later.
Why This Change Was Made
Post-restart readiness now gets three bounded attempts with five seconds between failed probes. The retry is scoped to restart verification: no-op heartbeat probes remain immediate, exact-build assertions still run for every attempt, restart-window logs are still audited, and exhausted retries still fail closed.
User Impact
Live Gateway updates tolerate normal startup warmup without false failure reports or unnecessary reruns. Persistent RPC failures remain visible after the bounded retry window.
Evidence
8e2ddd60ad8865a2c27624eec05951a234bcdf76: first 10-second RPC probe timed out while health was true; the same probe passed eight seconds later without another restart.