refactor: drop unrelated ACP snapshot changes
This commit is contained in:
@@ -94,4 +94,4 @@ flowchart LR
|
|||||||
|
|
||||||
Source config: [`examples/acp-agent/cordis.yml`](cordis.yml).
|
Source config: [`examples/acp-agent/cordis.yml`](cordis.yml).
|
||||||
|
|
||||||
Maintenance mode: hybrid: the leaf plugin list is parsed from its shipped config files; app package expansion is curated from package source.
|
Maintenance mode: hybrid: the leaf plugin list is parsed from its `cordis.yml`; app package expansion is curated from package source.
|
||||||
|
|||||||
@@ -155,13 +155,6 @@ export interface RunOptions {
|
|||||||
* start from an empty workspace.
|
* start from an empty workspace.
|
||||||
*/
|
*/
|
||||||
workspaceDir?: string
|
workspaceDir?: string
|
||||||
/**
|
|
||||||
* Optional setup run in the generated cwd after {@link workspaceDir} is
|
|
||||||
* copied and before the child boots — for world state a committed fixture
|
|
||||||
* cannot express, such as a `.git` entry (git never tracks that name, so a
|
|
||||||
* repository-shaped fixture has to be materialized at run time).
|
|
||||||
*/
|
|
||||||
prepareCwd?: (cwd: string) => Promise<void>
|
|
||||||
/**
|
/**
|
||||||
* Parent directory for the generated session cwd. Defaults to
|
* Parent directory for the generated session cwd. Defaults to
|
||||||
* `os.tmpdir()`. A scenario that must distinguish its workspace from the
|
* `os.tmpdir()`. A scenario that must distinguish its workspace from the
|
||||||
@@ -228,7 +221,6 @@ export async function runScenario(input: InputScript, opts: RunOptions): Promise
|
|||||||
if (opts.workspaceDir !== undefined && existsSync(opts.workspaceDir)) {
|
if (opts.workspaceDir !== undefined && existsSync(opts.workspaceDir)) {
|
||||||
await cp(opts.workspaceDir, cwd, { recursive: true })
|
await cp(opts.workspaceDir, cwd, { recursive: true })
|
||||||
}
|
}
|
||||||
await opts.prepareCwd?.(cwd)
|
|
||||||
const env: NodeJS.ProcessEnv = {
|
const env: NodeJS.ProcessEnv = {
|
||||||
...opts.env,
|
...opts.env,
|
||||||
DSH_SNAPSHOT: opts.mode,
|
DSH_SNAPSHOT: opts.mode,
|
||||||
|
|||||||
@@ -130,12 +130,6 @@ export interface Scenario {
|
|||||||
* test and the scenario needs an independent project location.
|
* test and the scenario needs an independent project location.
|
||||||
*/
|
*/
|
||||||
workspaceParent?: string
|
workspaceParent?: string
|
||||||
/**
|
|
||||||
* Setup run in the generated cwd after the `workspace/` fixture is copied and
|
|
||||||
* before the child boots, for world state a committed fixture cannot express
|
|
||||||
* — a `.git` entry, which git never tracks under that name.
|
|
||||||
*/
|
|
||||||
prepareCwd?: (cwd: string) => Promise<void>
|
|
||||||
/**
|
/**
|
||||||
* Whether Windows additionally compares stdout with native separators against
|
* Whether Windows additionally compares stdout with native separators against
|
||||||
* `stdout.expected.windows.jsonl`. The shared canonical stdout expected output is still
|
* `stdout.expected.windows.jsonl`. The shared canonical stdout expected output is still
|
||||||
@@ -987,7 +981,6 @@ export function defineAcpSnapshotSuite(options: SnapshotSuiteOptions): void {
|
|||||||
...!RECORDING && childFixtureFiles.length > 0 ? { childFiles: childFixtureFiles.map(file => join(dir, file)) } : {},
|
...!RECORDING && childFixtureFiles.length > 0 ? { childFiles: childFixtureFiles.map(file => join(dir, file)) } : {},
|
||||||
...existsSync(workspaceDir) ? { workspaceDir } : {},
|
...existsSync(workspaceDir) ? { workspaceDir } : {},
|
||||||
...scenario.workspaceParent !== undefined ? { workspaceParent: scenario.workspaceParent } : {},
|
...scenario.workspaceParent !== undefined ? { workspaceParent: scenario.workspaceParent } : {},
|
||||||
...scenario.prepareCwd !== undefined ? { prepareCwd: scenario.prepareCwd } : {},
|
|
||||||
// A scenario booting an overlay tree passes its own live config; the
|
// A scenario booting an overlay tree passes its own live config; the
|
||||||
// bin's replay swap derives the sibling `*cordis.snapshot.yml` from it.
|
// bin's replay swap derives the sibling `*cordis.snapshot.yml` from it.
|
||||||
...scenario.configPath !== undefined ? { configPath: scenario.configPath } : {},
|
...scenario.configPath !== undefined ? { configPath: scenario.configPath } : {},
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":1,"agentCapabilities":{"loadSession":false}}}
|
{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":1,"agentCapabilities":{"loadSession":false}}}
|
||||||
{"jsonrpc":"2.0","id":2,"result":{"sessionId":"{{sessionId}}"}}
|
{"jsonrpc":"2.0","id":2,"result":{"sessionId":"{{sessionId}}"}}
|
||||||
{"jsonrpc":"2.0","method":"session/update","params":{"sessionId":"{{sessionId}}","update":{"sessionUpdate":"agent_message_chunk","content":{"type":"text","text":"thinking about it"}}}}
|
{"jsonrpc":"2.0","method":"session/update","params":{"sessionId":"{{sessionId}}","update":{"sessionUpdate":"agent_message_chunk","content":{"type":"text","text":"thinking about it"}}}}
|
||||||
{"jsonrpc":"2.0","method":"session/update","params":{"sessionId":"{{sessionId}}","update":{"sessionUpdate":"agent_message_chunk","content":{"type":"text","text":"workspace:prepared.marker,seed.txt"}}}}
|
{"jsonrpc":"2.0","method":"session/update","params":{"sessionId":"{{sessionId}}","update":{"sessionUpdate":"agent_message_chunk","content":{"type":"text","text":"workspace:seed.txt"}}}}
|
||||||
{"jsonrpc":"2.0","id":3,"result":{"stopReason":"end_turn"}}
|
{"jsonrpc":"2.0","id":3,"result":{"stopReason":"end_turn"}}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { cpSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs'
|
import { cpSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs'
|
||||||
import { rm, writeFile } from 'node:fs/promises'
|
import { rm } from 'node:fs/promises'
|
||||||
import { tmpdir } from 'node:os'
|
import { tmpdir } from 'node:os'
|
||||||
import { join } from 'node:path'
|
import { join } from 'node:path'
|
||||||
import { fileURLToPath } from 'node:url'
|
import { fileURLToPath } from 'node:url'
|
||||||
@@ -78,7 +78,6 @@ const REPLAY_SCENARIOS: Scenario[] = [
|
|||||||
env: { DSH_PERMISSION_MODE: 'never' },
|
env: { DSH_PERMISSION_MODE: 'never' },
|
||||||
configPath: AGENT.configPath,
|
configPath: AGENT.configPath,
|
||||||
workspaceParent: tmpdir(),
|
workspaceParent: tmpdir(),
|
||||||
prepareCwd: async (cwd) => { await writeFile(join(cwd, 'prepared.marker'), 'prepared\n') },
|
|
||||||
},
|
},
|
||||||
{ name: 'no-model', hasModelTurn: false, recorded: false, headerClass: 'main' },
|
{ name: 'no-model', hasModelTurn: false, recorded: false, headerClass: 'main' },
|
||||||
{ name: 'blocked-log', hasModelTurn: false, comparesLog: true, recorded: false, headerClass: 'main' },
|
{ name: 'blocked-log', hasModelTurn: false, comparesLog: true, recorded: false, headerClass: 'main' },
|
||||||
|
|||||||
Reference in New Issue
Block a user