fix: keep Code Mode tasks running after tool failures (#138044)

* fix: keep Code Mode tasks running after tool failures

Remove forced read-only reconciliation, recovery_resume, and the one-mutation continuation limit. Failed cells return to the normal agent loop so users can inspect partial effects and complete multi-step work with their configured tools. Preserve cancellation, permissions, explicit terminal outcomes, lifecycle receipts, and automatic whole-run replay protection.

* style: format Code Mode callback with pinned oxfmt

* test: update failed-tool QA references after recovery removal

* test(android): observe connection admission after stop

A startup WebSocket request can reach MockWebServer after Stop retires it,
causing the foreground-reentry assertion to report a reconnect that never
happened. Reuse the existing call-through session shadow to observe actual
connection admissions while preserving the real runtime and offline checks.

The same test bytes have a reproduced before failure, a rejected deliberate
reconnect, and 134 passing service/session sibling tests. Android lint passes;
the updated PR CI will verify this candidate before landing.

* test: repair ClawHub QA documentation reference
This commit is contained in:
Peter Steinberger 2026-09-04 04:08:04 -07:00 • committed by GitHub
parent d088053511
commit 085641a41a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
63 changed files with 375 additions and 2258 deletions

View file

@ -18,7 +18,8 @@ scenario:
- The failed tool call is never replayed or described as successful.
- The model receives one ordinary continuation with its failed result and qa-channel delivers exactly one visible reply.
codeRefs:
- src/agents/embedded-agent-runner/run/code-mode-outcome.ts
- packages/agent-core/src/agent-loop.ts
- src/agents/embedded-agent-runner/extensions.ts
- extensions/qa-lab/src/providers/mock-openai/server.ts
execution:
kind: flow

View file

@ -18,7 +18,7 @@ scenario:
- A committed source change without a version bump fails the ClawHub release check.
- The same source change passes after the package version and compatibility metadata are bumped and committed.
docsRefs:
- docs/clawhub/publishing.md
- docs/plugins/building-plugins.md
- docs/plugins/community.md
- docs/help/testing-updates-plugins.md
codeRefs:

View file

@ -21,7 +21,8 @@ scenario:
- The failed tool never replays and qa-channel receives exactly one final reply.
codeRefs:
- src/cron/isolated-agent/run-executor.ts
- src/agents/embedded-agent-runner/run/code-mode-outcome.ts
- packages/agent-core/src/agent-loop.ts
- src/agents/embedded-agent-runner/extensions.ts
- extensions/qa-lab/src/providers/mock-openai/server.ts
execution:
kind: flow