mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-25 11:55:47 -06:00
34a1cfc69c
* fix(cli-runner): drop stock watchdog defaults from CLI backend descriptors (#125045) The claude-cli and gemini-cli backend descriptors spread CLI_FRESH/RESUME_WATCHDOG_DEFAULTS into config.reliability.watchdog. Those copies are byte-identical to the fallback pickWatchdogProfile already uses, so shipping them only makes `configured` always truthy, which permanently disables the promotion gate (!configured) and pins resumed cron/explicit-timeout turns to the 180s resume no-output ceiling instead of the 600s fresh ceiling. Removing the blocks lets `configured` be undefined, restoring the promotion gate. No user-config path is affected: reliability.watchdog is not exposed in the config schema, the descriptor is the sole source, and pickWatchdogProfile is the only runtime reader. The codex backend never shipped the block, so this aligns the three backends. Co-Authored-By: Claude <noreply@anthropic.com> * test(cli-runner): add descriptor-through-resolver watchdog proof (#125045) Drive the real shipped Anthropic/Gemini CLI backend descriptor config through the production resolveCliNoOutputTimeoutMs resolver to prove the resumed-cron promotion is live post-fix. Pre-fix the descriptor shipped byte-identical resume defaults, so configured was truthy and the !configured promotion gate was dead, pinning resumed cron turns to the 180s resume ceiling (180000). Post-fix the block is gone and the resolver returns the promoted fresh budget (480000 = 600000 * 0.8). resolveCliNoOutputTimeoutMs is re-exported through the test-only openclaw/plugin-sdk/test-fixtures subpath (excluded from published dist), so extension tests can drive the real descriptor through the real resolver without crossing the extension/core boundary. Co-Authored-By: Claude <noreply@anthropic.com> * test(anthropic): split watchdog promotion proof into its own file Move the descriptor-shape and descriptor→resolver real-behavior proof tests out of cli-shared.test.ts into cli-watchdog-promotion.test.ts. cli-shared.test.ts exceeded the extensions max-lines budget (1000 non-blank/non-comment lines) once the proof tests landed; the focused file keeps the same test names and coverage while staying under the budget. No production change. Co-Authored-By: Claude <noreply@anthropic.com> * fix(cli-runner): restore inherited resume watchdog promotion Validate bundled plugin descriptors through their public setup entries and keep custom watchdog contracts intact. Co-authored-by: ruel225 <ruel225@users.noreply.github.com> * chore(cli-runner): align conflicting provider owner with main Co-authored-by: ruel225 <ruel225@users.noreply.github.com> * fix(cli-runner): complete inherited resume watchdog promotion Co-authored-by: ruel225 <ruel225@users.noreply.github.com> * test(cli): keep watchdog regressions in their owning plugins Keep Anthropic and Google descriptor assertions inside their plugin-owned registration suites, preserve generic resumed/custom watchdog coverage in its core owner, and remove the cross-plugin core test rejected by architecture CI. Co-authored-by: ruel225 <ruel225@users.noreply.github.com> --------- Co-authored-by: ruel225 <ruel225@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Peter Steinberger <steipete@gmail.com>