Patch Changes
- 5dd0089: Fail the turn with an explanatory error (
Output blocked: the model's content safety filter stopped the response. Rephrase the request and retry.) when the content filter stops the response, instead of finishing with empty output. - 36a0bfa: Preserve supervisord ENTRYPOINT on Daytona custom-environment buildInfo snapshots so the sandbox NATS bridge starts (Daytona otherwise defaults to sleep infinity).
- 0a1606d: Blocked large tool response messages now state the exact content size and which limit blocked it, in characters (
Content too large (50,000 characters; this response exceeds the 24,000-character limit for a single response). Result saved to: …, at the default thresholds; responses blocked by the parallel total instead say the parallel responses together exceed the combined limit), and the file-dump message prompts the model to plan reads against the total instead of guessing with small incremental reads. - 5fd9cca: Prefix model and MCP failures so logs and the chat error show which system failed.
- 26c77c4: Add optional AgentSpec-shaped
model({ name: provider/model, params? }) onmodel.messageevents, stamp it from the bound agent definition for new turns, and backfill the session tip turn's events / turn output from the session agent model FQN. - be2bb87: When a model stops at its output token limit, fail the turn with
Output truncated: hit the <N> token limit. Raise max_tokens and retry.(or "the provider's default token limit" when none was sent) instead ofmax_tokens breached. The tokens used are included when they differ from the limit. - 248e768: Enable fine-grained tool streaming via TrueFoundry
anthropic-betaheader and AnthropictoolStreaming, and report invalid tool-arg JSON as a distinct parse error - 05cef0b: Add 502 and 503 status codes to SSRF fetch retry logic. These errors indicate temporary upstream failures and are now eligible for automatic retries across model, MCP, and outbound fetch operations.