# Overlay for the keyless conversational PTY test: the shipped composition with # only the model replaced, so the terminal interaction is deterministic and # network-free while the agent/TUI/user-question stack stays the production one. # # Passed as `--config`, so the launcher includes `base.cordis.yml`, applies # `tui.cordis.yml`, then this file — all sibling patch lists at one include # level. A patch replaces the targeted row's whole `config`, so each row below # restates every key it owns. # The scripted adapter replaces the DeepSeek one: no key, no network. A patch's # `name` is an assertion rather than a replacement, so the base row is disabled # and the adapter inserted. Relative specifiers resolve against the INCLUDED # file's directory (apps/cli/config), because the include moves baseUrl there. - id: llm-deepseek disabled: true - insert: - id: scripted-llm name: '../tests/fixtures/tui-scripted-llm.ts' - id: agent-loop config: agents: - id: main provider: tui-scripted model: tui-scripted-model # `cwd` scopes the session to this workspace, which is what `/resume` # filters on; dropping it would hide the seeded session. cwd: !!js process.cwd() - id: system-prompt config: persona: 'Scripted model {{model}}.' # The smoke's log inspection reads plain `.jsonl` under the workspace, so this # fixture pins a project-local root instead of the launcher's shared store, and # keeps the artifacts uncompressed like the other snapshot-facing configs. - id: session-persistence-jsonl config: root: './.sessions' compression: none # The derived index must sit under the same root as the logs it indexes; this # fixture pins both to the workspace instead of the launcher's shared store. - id: session-query-sqlite config: path: './.sessions/session-query.db' - id: plan-mode config: section: 'Stay in plan mode for this scripted TUI test.' # The scripted adapter answers the tool-less title request with a fixed string, # so the PTY test can assert the logged title reaches the terminal window title. - id: session-title-llm config: targetWords: 5 targetCjkCharacters: 10 maxInputBytes: 4096 maxOutputTokens: 64 timeoutMs: 10000 - id: tui config: sessionId: !!js configuredAgentIdentities?.main?.id ?? 'main' welcome: 'scripted TUI ready.' showReasoning: true # HMR watches the repository; a PTY subprocess test must not start a watcher. - id: hmr disabled: true