You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Minor Changes
6f9364a: Sandboxes are now stopped when the eve server shuts down. Self-hosted production servers stop every open sandbox (microsandbox VMs, Docker containers, Vercel sandboxes, just-bash interpreters) on SIGTERM/SIGINT, matching the cleanup eve dev already performs, and sessions reattach from persisted state on the next start. Breaking change for custom sandbox backends: SandboxBackendHandle gains a required shutdown() and the unused dispose() is removed.
Patch Changes
7699e98: eve eval now prints a clear, actionable message when it finds no evals but detects *.eval.ts files placed inside agent/. Instead of the generic "No evals found", it names the offending directories and reminds you that eval files belong in the top-level evals/ directory (a sibling of agent/).
f3a05c5: ToolContext and ApprovalContext now expose callId, the tool call id carried by the call's stream events, so approval-gated tools can key records to one identity across proposal, rejection, and execution.
f9621b6: Resuming a durable session whose history references a file attachment no longer fails the turn when the staged bytes are gone (for example after a redeploy pointed the session at a fresh sandbox). The missing attachment degrades to a FileNotFound text notice the model can interpret, so the run continues instead of ending in session.failed.
c233a6a: The turn harness now propagates a cooperative AbortSignal end to end: model calls, retries, recovery, compaction, and tool executions all honor it, and an aborted turn settles with a canonical TurnCancelledError that is never retried or misclassified as a failure. Authored tools receive the signal as ctx.abortSignal (and via the AI SDK execute options), and framework tools forward it into sandbox commands, file I/O, web_fetch, and MCP/OpenAPI connection calls. This is the lowest layer of turn cancellation — no trigger exists yet, so runtime behavior is unchanged until the cancellation API ships.