1import { TOOL_CALL_READ_ONLY_WORKSPACE_ROOT } from "../src/orchestration-v2/testkit/fixtures/shared.ts";
2
3const SEEDED_CURSOR_REPLAY_SCENARIOS = new Set(["subagent", "tool_call_read_only", "todo_list"]);
4
5export function cursorReplayPromptsForWorkspace(input: {
6 readonly scenario: string;
7 readonly configuredPrompts: ReadonlyArray<string>;
8 readonly packageJsonPath: string;
9 readonly tsconfigPath: string;
10}): ReadonlyArray<string> {
11 if (input.scenario !== "tool_call_read_only") {
12 return input.configuredPrompts;
13 }
14
15 return [
16 `Read ${input.packageJsonPath} and ${input.tsconfigPath}, then answer exactly: read only tool fixture complete`,
17 ];
18}
19
20export function shouldSeedCursorReplayWorkspace(input: {
21 readonly scenario: string;
22 readonly owned: boolean;
23}): boolean {
24 return input.owned && SEEDED_CURSOR_REPLAY_SCENARIOS.has(input.scenario);
25}
26
27export function cursorReplayTranscriptCwd(scenario: string): string | undefined {
28 return scenario === "tool_call_read_only" ? TOOL_CALL_READ_ONLY_WORKSPACE_ROOT : undefined;
29}