`collapses()` read `defaultMode`, so the collapse only applied when the DEPLOYMENT was `code`. An agent handed `code` by an agent preset under a native default announced `[run_code]` on the wire and still executed a model-direct native call -- the bypass this collapse exists to close, reopened for exactly the composition `dsh-agent-tool-mode` produces. `modeFor(scope)` is the same resolution `wireSchemas` and the SDK section already use, so presentation and execution cannot disagree, and a mode inherited from a standing preset scope collapses like a declared one. The per-agent and preset tests asserted only the wire, which is why the regression passed them. They now assert through the executor: the body never runs, the call resolves UNKNOWN_TOOL, and the native sibling beside it still executes. |
||
|---|---|---|
| .. | ||
| code-mode.ts | ||
| index.ts | ||
| invariant.ts | ||
| json-schema.ts | ||
| presentation.ts | ||
| py-types.ts | ||
| schema.ts | ||
| testing.ts | ||
| ts-types.ts | ||
| types.ts | ||