@a5c-ai/adapters-harness-mock 5.1.1-staging.00ceebd28cf2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +227 -0
  3. package/dist/bin/adapters-harness-mock.d.ts +32 -0
  4. package/dist/bin/adapters-harness-mock.d.ts.map +1 -0
  5. package/dist/bin/adapters-harness-mock.js +155 -0
  6. package/dist/bin/adapters-harness-mock.js.map +1 -0
  7. package/dist/bin/mock-harness.d.ts +2 -0
  8. package/dist/bin/mock-harness.d.ts.map +1 -0
  9. package/dist/bin/mock-harness.js +25 -0
  10. package/dist/bin/mock-harness.js.map +1 -0
  11. package/dist/http-mock.d.ts +39 -0
  12. package/dist/http-mock.d.ts.map +1 -0
  13. package/dist/http-mock.js +206 -0
  14. package/dist/http-mock.js.map +1 -0
  15. package/dist/index.d.ts +9 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +10 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/mock-process.d.ts +57 -0
  20. package/dist/mock-process.d.ts.map +1 -0
  21. package/dist/mock-process.js +388 -0
  22. package/dist/mock-process.js.map +1 -0
  23. package/dist/mocks/index.d.ts +53 -0
  24. package/dist/mocks/index.d.ts.map +1 -0
  25. package/dist/mocks/index.js +140 -0
  26. package/dist/mocks/index.js.map +1 -0
  27. package/dist/mocks/mock-types.d.ts +170 -0
  28. package/dist/mocks/mock-types.d.ts.map +1 -0
  29. package/dist/mocks/mock-types.js +2 -0
  30. package/dist/mocks/mock-types.js.map +1 -0
  31. package/dist/mocks/programmatic-mocks.d.ts +40 -0
  32. package/dist/mocks/programmatic-mocks.d.ts.map +1 -0
  33. package/dist/mocks/programmatic-mocks.js +229 -0
  34. package/dist/mocks/programmatic-mocks.js.map +1 -0
  35. package/dist/mocks/remote-mocks.d.ts +43 -0
  36. package/dist/mocks/remote-mocks.d.ts.map +1 -0
  37. package/dist/mocks/remote-mocks.js +332 -0
  38. package/dist/mocks/remote-mocks.js.map +1 -0
  39. package/dist/mocks/scriptable-transport.d.ts +23 -0
  40. package/dist/mocks/scriptable-transport.d.ts.map +1 -0
  41. package/dist/mocks/scriptable-transport.js +83 -0
  42. package/dist/mocks/scriptable-transport.js.map +1 -0
  43. package/dist/multi-execution.d.ts +1 -0
  44. package/dist/multi-execution.d.ts.map +1 -0
  45. package/dist/multi-execution.js +2 -0
  46. package/dist/multi-execution.js.map +1 -0
  47. package/dist/probe.d.ts +113 -0
  48. package/dist/probe.d.ts.map +1 -0
  49. package/dist/probe.js +722 -0
  50. package/dist/probe.js.map +1 -0
  51. package/dist/scenarios/errors.d.ts +21 -0
  52. package/dist/scenarios/errors.d.ts.map +1 -0
  53. package/dist/scenarios/errors.js +73 -0
  54. package/dist/scenarios/errors.js.map +1 -0
  55. package/dist/scenarios/hooks.d.ts +17 -0
  56. package/dist/scenarios/hooks.d.ts.map +1 -0
  57. package/dist/scenarios/hooks.js +129 -0
  58. package/dist/scenarios/hooks.js.map +1 -0
  59. package/dist/scenarios/index.d.ts +22 -0
  60. package/dist/scenarios/index.d.ts.map +1 -0
  61. package/dist/scenarios/index.js +65 -0
  62. package/dist/scenarios/index.js.map +1 -0
  63. package/dist/scenarios/interactive.d.ts +17 -0
  64. package/dist/scenarios/interactive.d.ts.map +1 -0
  65. package/dist/scenarios/interactive.js +65 -0
  66. package/dist/scenarios/interactive.js.map +1 -0
  67. package/dist/scenarios/per-agent.d.ts +17 -0
  68. package/dist/scenarios/per-agent.d.ts.map +1 -0
  69. package/dist/scenarios/per-agent.js +597 -0
  70. package/dist/scenarios/per-agent.js.map +1 -0
  71. package/dist/scenarios/wire-format.d.ts +56 -0
  72. package/dist/scenarios/wire-format.d.ts.map +1 -0
  73. package/dist/scenarios/wire-format.js +261 -0
  74. package/dist/scenarios/wire-format.js.map +1 -0
  75. package/dist/scenarios.d.ts +29 -0
  76. package/dist/scenarios.d.ts.map +1 -0
  77. package/dist/scenarios.js +141 -0
  78. package/dist/scenarios.js.map +1 -0
  79. package/dist/types.d.ts +463 -0
  80. package/dist/types.d.ts.map +1 -0
  81. package/dist/types.js +9 -0
  82. package/dist/types.js.map +1 -0
  83. package/dist/websocket-mock.d.ts +58 -0
  84. package/dist/websocket-mock.d.ts.map +1 -0
  85. package/dist/websocket-mock.js +367 -0
  86. package/dist/websocket-mock.js.map +1 -0
  87. package/dist/workspace.d.ts +52 -0
  88. package/dist/workspace.d.ts.map +1 -0
  89. package/dist/workspace.js +157 -0
  90. package/dist/workspace.js.map +1 -0
  91. package/package.json +71 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"probe.js","sourceRoot":"","sources":["../src/probe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Error scenarios: rate-limit, auth-required, crash, timeout, oom.
3
+ *
4
+ * Each scenario emits wire output whose parsed AgentEvent has a specific
5
+ * error code, or exits abnormally so onProcessExit/onTimeout surface the
6
+ * appropriate code.
7
+ */
8
+ import type { HarnessScenario } from '../types.js';
9
+ export interface ErrorScenarioMeta {
10
+ /** Scenario to spawn. */
11
+ scenario: HarnessScenario;
12
+ /** The error code a caller should classify this run as, after combining
13
+ * wire events and process exit. */
14
+ expectedCode: 'RATE_LIMITED' | 'AUTH_ERROR' | 'AGENT_CRASH' | 'TIMEOUT' | 'INTERNAL';
15
+ }
16
+ export declare const rateLimitClaude: ErrorScenarioMeta;
17
+ export declare const authRequiredCodex: ErrorScenarioMeta;
18
+ export declare const crashClaude: ErrorScenarioMeta;
19
+ export declare const timeoutGemini: ErrorScenarioMeta;
20
+ export declare const oomClaude: ErrorScenarioMeta;
21
+ export declare const ERROR_SCENARIOS: Record<string, ErrorScenarioMeta>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/scenarios/errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAQnD,MAAM,WAAW,iBAAiB;IAChC,yBAAyB;IACzB,QAAQ,EAAE,eAAe,CAAC;IAC1B;wCACoC;IACpC,YAAY,EAAE,cAAc,GAAG,YAAY,GAAG,aAAa,GAAG,SAAS,GAAG,UAAU,CAAC;CACtF;AAED,eAAO,MAAM,eAAe,EAAE,iBAW7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,iBAW/B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,iBAUzB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,iBAU3B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,iBAUvB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAM7D,CAAC"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Error scenarios: rate-limit, auth-required, crash, timeout, oom.
3
+ *
4
+ * Each scenario emits wire output whose parsed AgentEvent has a specific
5
+ * error code, or exits abnormally so onProcessExit/onTimeout surface the
6
+ * appropriate code.
7
+ */
8
+ import { claudeError, codexError, geminiError, stderrChunk, stdoutChunk } from './wire-format.js';
9
+ export const rateLimitClaude = {
10
+ scenario: {
11
+ harness: 'claude-code',
12
+ name: 'error:rate-limit',
13
+ process: { exitCode: 1 },
14
+ output: [
15
+ stdoutChunk(claudeError('Rate limit exceeded. Please retry after 60 seconds.'), 10),
16
+ stderrChunk('HTTP 429 Too Many Requests\n', 5),
17
+ ],
18
+ },
19
+ expectedCode: 'RATE_LIMITED',
20
+ };
21
+ export const authRequiredCodex = {
22
+ scenario: {
23
+ harness: 'codex',
24
+ name: 'error:auth-required',
25
+ process: { exitCode: 1 },
26
+ output: [
27
+ stdoutChunk(codexError('Missing OPENAI_API_KEY. Please authenticate.'), 10),
28
+ stderrChunk('auth: unauthorized\n', 5),
29
+ ],
30
+ },
31
+ expectedCode: 'AUTH_ERROR',
32
+ };
33
+ export const crashClaude = {
34
+ scenario: {
35
+ harness: 'claude-code',
36
+ name: 'error:crash',
37
+ process: { exitCode: 1, crashAfterMs: 80, crashSignal: 'SIGTERM' },
38
+ output: [
39
+ stderrChunk('segfault\n', 20),
40
+ ],
41
+ },
42
+ expectedCode: 'AGENT_CRASH',
43
+ };
44
+ export const timeoutGemini = {
45
+ scenario: {
46
+ harness: 'gemini',
47
+ name: 'error:timeout',
48
+ process: { exitCode: 0, hang: true },
49
+ output: [
50
+ stdoutChunk(geminiError('Working...'), 10),
51
+ ],
52
+ },
53
+ expectedCode: 'TIMEOUT',
54
+ };
55
+ export const oomClaude = {
56
+ scenario: {
57
+ harness: 'claude-code',
58
+ name: 'error:oom',
59
+ process: { exitCode: 137, crashAfterMs: 60, crashSignal: 'SIGKILL' },
60
+ output: [
61
+ stderrChunk('FATAL ERROR: Reached heap limit\n', 20),
62
+ ],
63
+ },
64
+ expectedCode: 'AGENT_CRASH',
65
+ };
66
+ export const ERROR_SCENARIOS = {
67
+ 'rate-limit': rateLimitClaude,
68
+ 'auth-required': authRequiredCodex,
69
+ 'crash': crashClaude,
70
+ 'timeout': timeoutGemini,
71
+ 'oom': oomClaude,
72
+ };
73
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/scenarios/errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAelG,MAAM,CAAC,MAAM,eAAe,GAAsB;IAChD,QAAQ,EAAE;QACR,OAAO,EAAE,aAAa;QACtB,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;QACxB,MAAM,EAAE;YACN,WAAW,CAAC,WAAW,CAAC,qDAAqD,CAAC,EAAE,EAAE,CAAC;YACnF,WAAW,CAAC,8BAA8B,EAAE,CAAC,CAAC;SAC/C;KACF;IACD,YAAY,EAAE,cAAc;CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAsB;IAClD,QAAQ,EAAE;QACR,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;QACxB,MAAM,EAAE;YACN,WAAW,CAAC,UAAU,CAAC,8CAA8C,CAAC,EAAE,EAAE,CAAC;YAC3E,WAAW,CAAC,sBAAsB,EAAE,CAAC,CAAC;SACvC;KACF;IACD,YAAY,EAAE,YAAY;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,QAAQ,EAAE;QACR,OAAO,EAAE,aAAa;QACtB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE;QAClE,MAAM,EAAE;YACN,WAAW,CAAC,YAAY,EAAE,EAAE,CAAC;SAC9B;KACF;IACD,YAAY,EAAE,aAAa;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAsB;IAC9C,QAAQ,EAAE;QACR,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;QACpC,MAAM,EAAE;YACN,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;SAC3C;KACF;IACD,YAAY,EAAE,SAAS;CACxB,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAsB;IAC1C,QAAQ,EAAE;QACR,OAAO,EAAE,aAAa;QACtB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE;QACpE,MAAM,EAAE;YACN,WAAW,CAAC,mCAAmC,EAAE,EAAE,CAAC;SACrD;KACF;IACD,YAAY,EAAE,aAAa;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAsC;IAChE,YAAY,EAAE,eAAe;IAC7B,eAAe,EAAE,iBAAiB;IAClC,OAAO,EAAE,WAAW;IACpB,SAAS,EAAE,aAAa;IACxB,KAAK,EAAE,SAAS;CACjB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Hook payload fixtures — deterministic JSON payloads that each harness
3
+ * would send to a hook script on stdin. Useful in tests for driving
4
+ * parseHookPayload, HookDispatcher, and `adapters hooks handle` end-to-end.
5
+ */
6
+ import type { HarnessScenario } from '../types.js';
7
+ export interface HookPayloadFixture {
8
+ agent: string;
9
+ hookType: string;
10
+ payload: Record<string, unknown>;
11
+ }
12
+ export declare const HOOK_PAYLOAD_FIXTURES: HookPayloadFixture[];
13
+ export declare function getHookFixture(agent: string, hookType: string): HookPayloadFixture | undefined;
14
+ export declare const runtimeHookAllowBash: HarnessScenario;
15
+ export declare const runtimeHookDenyWrite: HarnessScenario;
16
+ export declare const runtimeHookTimeout: HarnessScenario;
17
+ export declare const RUNTIME_HOOK_SCENARIOS: Record<string, HarnessScenario>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/scenarios/hooks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,qBAAqB,EAAE,kBAAkB,EAmDrD,CAAC;AAEF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAE9F;AAED,eAAO,MAAM,oBAAoB,EAAE,eAqBlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,eAqBlC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,eAkBhC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAIlE,CAAC"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Hook payload fixtures — deterministic JSON payloads that each harness
3
+ * would send to a hook script on stdin. Useful in tests for driving
4
+ * parseHookPayload, HookDispatcher, and `adapters hooks handle` end-to-end.
5
+ */
6
+ export const HOOK_PAYLOAD_FIXTURES = [
7
+ {
8
+ agent: 'claude',
9
+ hookType: 'PreToolUse',
10
+ payload: {
11
+ session_id: 'sess-claude-1',
12
+ transcript_path: '/tmp/t.jsonl',
13
+ cwd: '/work/proj',
14
+ tool_name: 'Bash',
15
+ tool_input: { command: 'ls' },
16
+ },
17
+ },
18
+ {
19
+ agent: 'claude',
20
+ hookType: 'PostToolUse',
21
+ payload: {
22
+ session_id: 'sess-claude-1',
23
+ tool_name: 'Bash',
24
+ tool_input: { command: 'ls' },
25
+ tool_output: 'file.txt\n',
26
+ },
27
+ },
28
+ {
29
+ agent: 'claude',
30
+ hookType: 'Stop',
31
+ payload: { session_id: 'sess-claude-1' },
32
+ },
33
+ {
34
+ agent: 'codex',
35
+ hookType: 'OnToolCall',
36
+ payload: {
37
+ session_id: 'sess-codex-1',
38
+ tool_name: 'apply_patch',
39
+ tool_input: { path: 'a.txt' },
40
+ },
41
+ },
42
+ {
43
+ agent: 'codex',
44
+ hookType: 'OnStop',
45
+ payload: { session_id: 'sess-codex-1' },
46
+ },
47
+ {
48
+ agent: 'gemini',
49
+ hookType: 'pre_prompt',
50
+ payload: { session_id: 'g-1', prompt: 'hello' },
51
+ },
52
+ {
53
+ agent: 'copilot',
54
+ hookType: 'preTool',
55
+ payload: { session_id: 'co-1', tool_name: 'edit' },
56
+ },
57
+ ];
58
+ export function getHookFixture(agent, hookType) {
59
+ return HOOK_PAYLOAD_FIXTURES.find((f) => f.agent === agent && f.hookType === hookType);
60
+ }
61
+ export const runtimeHookAllowBash = {
62
+ harness: 'claude-code',
63
+ name: 'runtimeHookAllowBash',
64
+ process: { exitCode: 0, shutdownDelayMs: 10 },
65
+ output: [
66
+ { stream: 'stdout', data: '{"type":"system","subtype":"init","session_id":"rh-allow"}\n', delayMs: 10 },
67
+ { stream: 'stdout', data: '{"type":"tool_call","id":"tool-1","name":"Bash","input":{"command":"echo ok"}}\n', delayMs: 10 },
68
+ { stream: 'stdout', data: '{"type":"tool_result","tool_use_id":"tool-1","toolName":"Bash","output":"ok"}\n', delayMs: 10 },
69
+ { stream: 'stdout', data: '{"type":"result","subtype":"success","session_id":"rh-allow"}\n', delayMs: 10 },
70
+ ],
71
+ runtimeHooks: {
72
+ steps: [
73
+ {
74
+ chunkIndex: 1,
75
+ kind: 'preToolUse',
76
+ payload: { toolName: 'Bash', toolInput: { command: 'echo ok' } },
77
+ decision: 'allow',
78
+ delayMs: 20,
79
+ },
80
+ ],
81
+ },
82
+ };
83
+ export const runtimeHookDenyWrite = {
84
+ harness: 'claude-code',
85
+ name: 'runtimeHookDenyWrite',
86
+ process: { exitCode: 0 },
87
+ output: [
88
+ { stream: 'stdout', data: '{"type":"system","subtype":"init","session_id":"rh-deny"}\n', delayMs: 10 },
89
+ { stream: 'stdout', data: '{"type":"tool_call","id":"tool-2","name":"Write","input":{"path":"blocked.txt"}}\n', delayMs: 10 },
90
+ { stream: 'stdout', data: '{"type":"tool_result","tool_use_id":"tool-2","toolName":"Write","output":"blocked"}\n', delayMs: 10 },
91
+ ],
92
+ runtimeHooks: {
93
+ steps: [
94
+ {
95
+ chunkIndex: 1,
96
+ kind: 'preToolUse',
97
+ payload: { toolName: 'Write', toolInput: { path: 'blocked.txt' } },
98
+ decision: 'deny',
99
+ delayMs: 20,
100
+ errorMessage: 'Runtime hook denied Write',
101
+ },
102
+ ],
103
+ },
104
+ };
105
+ export const runtimeHookTimeout = {
106
+ harness: 'claude-code',
107
+ name: 'runtimeHookTimeout',
108
+ process: { exitCode: 0, hang: true },
109
+ output: [
110
+ { stream: 'stdout', data: '{"type":"system","subtype":"init","session_id":"rh-timeout"}\n', delayMs: 10 },
111
+ { stream: 'stdout', data: '{"type":"tool_call","id":"tool-3","name":"Bash","input":{"command":"sleep 1"}}\n', delayMs: 10 },
112
+ ],
113
+ runtimeHooks: {
114
+ steps: [
115
+ {
116
+ chunkIndex: 1,
117
+ kind: 'preToolUse',
118
+ payload: { toolName: 'Bash', toolInput: { command: 'sleep 1' } },
119
+ decision: 'timeout',
120
+ },
121
+ ],
122
+ },
123
+ };
124
+ export const RUNTIME_HOOK_SCENARIOS = {
125
+ [runtimeHookAllowBash.name]: runtimeHookAllowBash,
126
+ [runtimeHookDenyWrite.name]: runtimeHookDenyWrite,
127
+ [runtimeHookTimeout.name]: runtimeHookTimeout,
128
+ };
129
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/scenarios/hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Scenarios barrel.
3
+ *
4
+ * Re-exports the legacy top-level scenarios plus the per-agent,
5
+ * interactive, and error presets.
6
+ */
7
+ export * from '../scenarios.js';
8
+ export * from './wire-format.js';
9
+ export * from './per-agent.js';
10
+ export * from './errors.js';
11
+ export * from './interactive.js';
12
+ export * from './hooks.js';
13
+ import type { HarnessScenario } from '../types.js';
14
+ /**
15
+ * Resolve a scenario by name. Supports:
16
+ * - agent scenario ids like `claude:basic-text`
17
+ * - error ids like `error:rate-limit`
18
+ * - interaction ids like `interactive:yolo`
19
+ */
20
+ export declare function resolveScenario(name: string, agent?: string): HarnessScenario | undefined;
21
+ /** List all resolvable scenario names. */
22
+ export declare function listScenarioNames(agent?: string): string[];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scenarios/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAQ3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAenD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAezF;AAED,0CAA0C;AAC1C,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAO1D"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Scenarios barrel.
3
+ *
4
+ * Re-exports the legacy top-level scenarios plus the per-agent,
5
+ * interactive, and error presets.
6
+ */
7
+ export * from '../scenarios.js';
8
+ export * from './wire-format.js';
9
+ export * from './per-agent.js';
10
+ export * from './errors.js';
11
+ export * from './interactive.js';
12
+ export * from './hooks.js';
13
+ import { AGENT_SCENARIOS } from './per-agent.js';
14
+ import { ERROR_SCENARIOS } from './errors.js';
15
+ import { INTERACTION_SCENARIOS } from './interactive.js';
16
+ import { RUNTIME_HOOK_SCENARIOS, } from './hooks.js';
17
+ function normalizeAgentPrefix(agent) {
18
+ return agent.endsWith(':') ? agent : `${agent}:`;
19
+ }
20
+ function applyAgentPrefix(name, agent) {
21
+ if (!agent || name.includes(':'))
22
+ return name;
23
+ return `${normalizeAgentPrefix(agent)}${name}`;
24
+ }
25
+ function matchesAgentPrefix(name, agent) {
26
+ return !agent || name.startsWith(normalizeAgentPrefix(agent));
27
+ }
28
+ /**
29
+ * Resolve a scenario by name. Supports:
30
+ * - agent scenario ids like `claude:basic-text`
31
+ * - error ids like `error:rate-limit`
32
+ * - interaction ids like `interactive:yolo`
33
+ */
34
+ export function resolveScenario(name, agent) {
35
+ const resolvedName = applyAgentPrefix(name, agent);
36
+ if (!matchesAgentPrefix(resolvedName, agent))
37
+ return undefined;
38
+ if (AGENT_SCENARIOS[resolvedName])
39
+ return AGENT_SCENARIOS[resolvedName];
40
+ if (resolvedName.startsWith('error:')) {
41
+ const meta = ERROR_SCENARIOS[resolvedName.slice('error:'.length)];
42
+ if (meta)
43
+ return meta.scenario;
44
+ }
45
+ if (resolvedName.startsWith('interactive:')) {
46
+ const m = resolvedName.slice('interactive:'.length);
47
+ if (INTERACTION_SCENARIOS[m])
48
+ return INTERACTION_SCENARIOS[m];
49
+ }
50
+ if (RUNTIME_HOOK_SCENARIOS[resolvedName])
51
+ return RUNTIME_HOOK_SCENARIOS[resolvedName];
52
+ return undefined;
53
+ }
54
+ /** List all resolvable scenario names. */
55
+ export function listScenarioNames(agent) {
56
+ const names = [];
57
+ names.push(...Object.keys(AGENT_SCENARIOS));
58
+ for (const k of Object.keys(ERROR_SCENARIOS))
59
+ names.push(`error:${k}`);
60
+ for (const k of Object.keys(INTERACTION_SCENARIOS))
61
+ names.push(`interactive:${k}`);
62
+ names.push(...Object.keys(RUNTIME_HOOK_SCENARIOS));
63
+ return names.filter((name) => matchesAgentPrefix(name, agent)).sort();
64
+ }
65
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scenarios/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Interaction scenarios.
3
+ *
4
+ * The mock process emits a prompt-style line then waits for stdin. When
5
+ * running in the CLI binary, three approval modes are exposed:
6
+ *
7
+ * - yolo: auto-respond "y" with no user prompt
8
+ * - prompt: emit a question, wait for user to write y/n on stdin
9
+ * - deny: auto-respond "n"
10
+ *
11
+ * The scenario's `interactions` field configures which auto-response the
12
+ * MockProcess fires when it sees the prompt pattern.
13
+ */
14
+ import type { HarnessScenario } from '../types.js';
15
+ export type InteractionMode = 'yolo' | 'prompt' | 'deny' | 'timeout';
16
+ export declare function buildInteractiveScenario(mode: InteractionMode): HarnessScenario;
17
+ export declare const INTERACTION_SCENARIOS: Record<InteractionMode, HarnessScenario>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/scenarios/interactive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAGrE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAErE,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,CA8C/E;AAED,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,eAAe,EAAE,eAAe,CAK1E,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Interaction scenarios.
3
+ *
4
+ * The mock process emits a prompt-style line then waits for stdin. When
5
+ * running in the CLI binary, three approval modes are exposed:
6
+ *
7
+ * - yolo: auto-respond "y" with no user prompt
8
+ * - prompt: emit a question, wait for user to write y/n on stdin
9
+ * - deny: auto-respond "n"
10
+ *
11
+ * The scenario's `interactions` field configures which auto-response the
12
+ * MockProcess fires when it sees the prompt pattern.
13
+ */
14
+ import { claudeSystemInit, claudeAssistantText, claudeResult, stderrChunk, stdoutChunk } from './wire-format.js';
15
+ export function buildInteractiveScenario(mode) {
16
+ const prompt = 'Do you want to allow this tool call? (y/n)';
17
+ const response = mode === 'yolo' ? 'y\n' : mode === 'deny' ? 'n\n' : '';
18
+ const output = [
19
+ stdoutChunk(claudeSystemInit('sess_interact', ['Write']), 5),
20
+ stdoutChunk(claudeAssistantText('I need to write a file.'), 10),
21
+ stderrChunk(prompt + '\n', 10),
22
+ ];
23
+ const interaction = {
24
+ triggerPattern: 'Do you want to allow',
25
+ response,
26
+ delayMs: 20,
27
+ timeoutMs: mode === 'timeout' ? 80 : undefined,
28
+ onAllow: {
29
+ output: [
30
+ stdoutChunk(claudeResult('sess_interact', 'done'), 0),
31
+ ],
32
+ exitCode: 0,
33
+ },
34
+ onDeny: {
35
+ output: [
36
+ stdoutChunk(claudeAssistantText('Tool call denied.'), 0),
37
+ ],
38
+ exitCode: 0,
39
+ },
40
+ onTimeout: {
41
+ output: [
42
+ stderrChunk('Approval timed out.\n', 0),
43
+ ],
44
+ exitCode: 1,
45
+ },
46
+ };
47
+ const base = {
48
+ harness: 'claude-code',
49
+ name: `interactive:${mode}`,
50
+ process: { exitCode: mode === 'timeout' ? 1 : 0, shutdownDelayMs: 50 },
51
+ output,
52
+ interactions: [interaction],
53
+ };
54
+ if (mode === 'prompt' || mode === 'timeout') {
55
+ base.interactions = [{ ...interaction, response: '' }];
56
+ }
57
+ return base;
58
+ }
59
+ export const INTERACTION_SCENARIOS = {
60
+ yolo: buildInteractiveScenario('yolo'),
61
+ prompt: buildInteractiveScenario('prompt'),
62
+ deny: buildInteractiveScenario('deny'),
63
+ timeout: buildInteractiveScenario('timeout'),
64
+ };
65
+ //# sourceMappingURL=interactive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/scenarios/interactive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIjH,MAAM,UAAU,wBAAwB,CAAC,IAAqB;IAC5D,MAAM,MAAM,GAAG,4CAA4C,CAAC;IAC5D,MAAM,QAAQ,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAExE,MAAM,MAAM,GAAG;QACb,WAAW,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5D,WAAW,CAAC,mBAAmB,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC;QAC/D,WAAW,CAAC,MAAM,GAAG,IAAI,EAAE,EAAE,CAAC;KAC/B,CAAC;IAEF,MAAM,WAAW,GAAqB;QACpC,cAAc,EAAE,sBAAsB;QACtC,QAAQ;QACR,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAC9C,OAAO,EAAE;YACP,MAAM,EAAE;gBACN,WAAW,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;aACtD;YACD,QAAQ,EAAE,CAAC;SACZ;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,WAAW,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;aACzD;YACD,QAAQ,EAAE,CAAC;SACZ;QACD,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,WAAW,CAAC,uBAAuB,EAAE,CAAC,CAAC;aACxC;YACD,QAAQ,EAAE,CAAC;SACZ;KACF,CAAC;IAEF,MAAM,IAAI,GAAoB;QAC5B,OAAO,EAAE,aAAa;QACtB,IAAI,EAAE,eAAe,IAAI,EAAE;QAC3B,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;QACtE,MAAM;QACN,YAAY,EAAE,CAAC,WAAW,CAAC;KAC5B,CAAC;IACF,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAA6C;IAC7E,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC;IACtC,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC;IAC1C,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC;IACtC,OAAO,EAAE,wBAAwB,CAAC,SAAS,CAAC;CAC7C,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { HarnessScenario, HarnessType } from '../types.js';
2
+ export interface HarnessScenarioProfile {
3
+ harnessKey: string;
4
+ harness: HarnessType;
5
+ executionType: 'subprocess';
6
+ scenarios: string[];
7
+ notes: string;
8
+ }
9
+ export interface SubprocessScenarioExpectation {
10
+ agent: string;
11
+ exitCode: number;
12
+ parsedEventTypes: string[];
13
+ notes: string;
14
+ }
15
+ export declare const SUBPROCESS_HARNESS_PROFILES: Record<string, HarnessScenarioProfile>;
16
+ export declare const AGENT_SCENARIOS: Record<string, HarnessScenario>;
17
+ export declare const SUBPROCESS_SCENARIO_EXPECTATIONS: Record<string, SubprocessScenarioExpectation>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"per-agent.d.ts","sourceRoot":"","sources":["../../src/scenarios/per-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAoChE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,YAAY,CAAC;IAC5B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf;AA+QD,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CA4F9E,CAAC;AAoBF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAK3D,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAqO1F,CAAC"}