Skip to content

Surface a failed-turn strip when a model cannot resolve - #540

Merged
TheGreatAxios merged 8 commits into
mainfrom
cl-6491-messaging-an-agent-whose-model-cant-resolve-returns-a-bare
Aug 31, 2026
Merged

Surface a failed-turn strip when a model cannot resolve#540
TheGreatAxios merged 8 commits into
mainfrom
cl-6491-messaging-an-agent-whose-model-cant-resolve-returns-a-bare

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Contributor

Messaging an agent whose model cannot resolve is now a failed turn with recovery, never a raw HTTP 500.

What changed

  • Wake and mint wrap InferenceResolutionError as a named consumer error.
  • POST /workbenches and other on-request mint paths return 409 not_launchable with consumer copy instead of 500.
  • Uncaught InferenceResolutionError maps through hub onError to 422 with the same copy.
  • The failed-turn strip names the agent, offers 2-4 tenant chat models, applies the pick, retries the turn, and hops to that agent's Settings.

Tests

  • Wake/sendMail resolution failure does not 500 and does not write the raw dump onto the turn.
  • Strip copy, picker, apply+retry, and Settings hop.

Closes CL-6491

Wake, mint, and the failed-turn strip must keep the technical
resolution dump off the turn row, the HTTP body, and the transcript.
Catch inference-resolution failure at wake and mint so the room gets named recovery instead of a raw HTTP 500.
Keep a single catalog load, apply-and-retry path, and Settings hop so the workspace typechecks.
Invite now returns the same consumer copy mint and add-participant already use.
@TheGreatAxios
TheGreatAxios merged commit 65d6c54 into main Aug 31, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant