@tangle-network/browser-agent-driver 0.24.1 → 0.25.0

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 (84) hide show
  1. package/dist/brain/index.d.ts +5 -0
  2. package/dist/brain/index.d.ts.map +1 -1
  3. package/dist/brain/index.js +80 -32
  4. package/dist/brain/index.js.map +1 -1
  5. package/dist/cli-attach.d.ts +128 -0
  6. package/dist/cli-attach.d.ts.map +1 -0
  7. package/dist/cli-attach.js +254 -0
  8. package/dist/cli-attach.js.map +1 -0
  9. package/dist/cli-preview.d.ts +59 -0
  10. package/dist/cli-preview.d.ts.map +1 -0
  11. package/dist/cli-preview.js +144 -0
  12. package/dist/cli-preview.js.map +1 -0
  13. package/dist/cli-share.d.ts +77 -0
  14. package/dist/cli-share.d.ts.map +1 -0
  15. package/dist/cli-share.js +141 -0
  16. package/dist/cli-share.js.map +1 -0
  17. package/dist/cli-ui.d.ts.map +1 -1
  18. package/dist/cli-ui.js +15 -1
  19. package/dist/cli-ui.js.map +1 -1
  20. package/dist/cli.js +262 -14
  21. package/dist/cli.js.map +1 -1
  22. package/dist/drivers/cursor-overlay.d.ts +18 -10
  23. package/dist/drivers/cursor-overlay.d.ts.map +1 -1
  24. package/dist/drivers/cursor-overlay.js +221 -30
  25. package/dist/drivers/cursor-overlay.js.map +1 -1
  26. package/dist/drivers/overlay-label.d.ts +33 -0
  27. package/dist/drivers/overlay-label.d.ts.map +1 -0
  28. package/dist/drivers/overlay-label.js +92 -0
  29. package/dist/drivers/overlay-label.js.map +1 -0
  30. package/dist/drivers/playwright.d.ts +30 -0
  31. package/dist/drivers/playwright.d.ts.map +1 -1
  32. package/dist/drivers/playwright.js +204 -16
  33. package/dist/drivers/playwright.js.map +1 -1
  34. package/dist/drivers/snapshot.d.ts +12 -0
  35. package/dist/drivers/snapshot.d.ts.map +1 -1
  36. package/dist/drivers/snapshot.js +17 -0
  37. package/dist/drivers/snapshot.js.map +1 -1
  38. package/dist/drivers/types.d.ts +13 -0
  39. package/dist/drivers/types.d.ts.map +1 -1
  40. package/dist/multi-actor.d.ts.map +1 -1
  41. package/dist/multi-actor.js +4 -0
  42. package/dist/multi-actor.js.map +1 -1
  43. package/dist/run-state.d.ts.map +1 -1
  44. package/dist/run-state.js +12 -2
  45. package/dist/run-state.js.map +1 -1
  46. package/dist/runner/interrupt-controller.d.ts +67 -0
  47. package/dist/runner/interrupt-controller.d.ts.map +1 -0
  48. package/dist/runner/interrupt-controller.js +142 -0
  49. package/dist/runner/interrupt-controller.js.map +1 -0
  50. package/dist/runner/overlay-narration.d.ts +83 -0
  51. package/dist/runner/overlay-narration.d.ts.map +1 -0
  52. package/dist/runner/overlay-narration.js +172 -0
  53. package/dist/runner/overlay-narration.js.map +1 -0
  54. package/dist/runner/parallel-runner.d.ts +4 -0
  55. package/dist/runner/parallel-runner.d.ts.map +1 -1
  56. package/dist/runner/parallel-runner.js +1 -0
  57. package/dist/runner/parallel-runner.js.map +1 -1
  58. package/dist/runner/runner.d.ts +17 -0
  59. package/dist/runner/runner.d.ts.map +1 -1
  60. package/dist/runner/runner.js +72 -50
  61. package/dist/runner/runner.js.map +1 -1
  62. package/dist/runner/stream-webhook.d.ts +70 -0
  63. package/dist/runner/stream-webhook.d.ts.map +1 -0
  64. package/dist/runner/stream-webhook.js +132 -0
  65. package/dist/runner/stream-webhook.js.map +1 -0
  66. package/dist/skills/domain-loader.d.ts +78 -0
  67. package/dist/skills/domain-loader.d.ts.map +1 -0
  68. package/dist/skills/domain-loader.js +201 -0
  69. package/dist/skills/domain-loader.js.map +1 -0
  70. package/dist/skills/macro-loader.d.ts +95 -0
  71. package/dist/skills/macro-loader.d.ts.map +1 -0
  72. package/dist/skills/macro-loader.js +237 -0
  73. package/dist/skills/macro-loader.js.map +1 -0
  74. package/dist/supervisor/critic.js +1 -1
  75. package/dist/supervisor/policy.js +7 -0
  76. package/dist/supervisor/policy.js.map +1 -1
  77. package/dist/test-runner.d.ts +13 -0
  78. package/dist/test-runner.d.ts.map +1 -1
  79. package/dist/test-runner.js +6 -0
  80. package/dist/test-runner.js.map +1 -1
  81. package/dist/types.d.ts +19 -1
  82. package/dist/types.d.ts.map +1 -1
  83. package/dist/viewer/viewer.html +122 -8
  84. package/package.json +3 -2
@@ -0,0 +1,237 @@
1
+ /**
2
+ * Macro loader and executor. Reads `skills/macros/*.json` files and validates
3
+ * each into a typed MacroDefinition. A macro is a flat ordered list of
4
+ * existing primitive Actions with string-template interpolation over its
5
+ * declared params.
6
+ *
7
+ * This is the minimum viable mutable tool surface: the agent can add new
8
+ * capability by composing safe primitives into named workflows, without us
9
+ * eval-ing arbitrary code. Raw TS/JS handlers are a later generation's fight.
10
+ *
11
+ * Safety invariants (all enforced at load time, tested):
12
+ * 1. Step types are restricted to SAFE_MACRO_STEP_TYPES. No `macro` steps
13
+ * (flat only). No `navigate` — macros are page-interaction primitives,
14
+ * not navigation helpers (macros get triggered when the agent is
15
+ * already somewhere).
16
+ * 2. Param substitution only applies to string fields. Objects and numbers
17
+ * pass through as-is.
18
+ * 3. Unknown params in steps (e.g. `${oops}`) are a load-time error.
19
+ * 4. Duplicate macro names error at registration.
20
+ */
21
+ import * as fs from 'node:fs';
22
+ import * as path from 'node:path';
23
+ import { fileURLToPath } from 'node:url';
24
+ /** Primitive actions that are safe inside a macro. Explicitly whitelists —
25
+ * any new Action type needs to be added here deliberately. Note that
26
+ * `navigate` and `complete`/`abort` are intentionally absent: macros
27
+ * compose local interactions, not run-level control flow. */
28
+ /** Maximum steps in a single macro. Bounds the total wall-time any one
29
+ * macro can consume (step count × per-action timeout) to keep the
30
+ * CLI's budget cap meaningful. Raising this requires a measured reason —
31
+ * a longer macro is usually a hint that the work should split into two.
32
+ */
33
+ export const MAX_MACRO_STEPS = 8;
34
+ export const SAFE_MACRO_STEP_TYPES = new Set([
35
+ 'click',
36
+ 'type',
37
+ 'press',
38
+ 'hover',
39
+ 'select',
40
+ 'scroll',
41
+ 'wait',
42
+ 'clickAt',
43
+ 'typeAt',
44
+ 'clickLabel',
45
+ 'typeLabel',
46
+ 'clickSequence',
47
+ 'fill',
48
+ ]);
49
+ /** Exported for tests + promotion script to share the same root resolution.
50
+ * BAD_MACROS_DIR overrides the packaged path — the promotion script uses this
51
+ * to point at a staging directory without mutating the canonical tree. */
52
+ export function defaultMacrosRoot() {
53
+ const override = process.env.BAD_MACROS_DIR;
54
+ if (override && override.length > 0)
55
+ return path.resolve(override);
56
+ const here = fileURLToPath(import.meta.url);
57
+ // src/skills/macro-loader.ts → <repo>/skills/macros
58
+ // dist/skills/macro-loader.js → <repo>/skills/macros
59
+ const pkgRoot = path.resolve(path.dirname(here), '..', '..');
60
+ return path.join(pkgRoot, 'skills', 'macros');
61
+ }
62
+ export async function loadMacros(options = {}) {
63
+ const rootDir = options.rootDir ?? defaultMacrosRoot();
64
+ const onError = options.onError ?? ((p, err) => {
65
+ // eslint-disable-next-line no-console
66
+ console.error(`[macro] failed to load ${p}: ${err instanceof Error ? err.message : String(err)}`);
67
+ });
68
+ if (!fs.existsSync(rootDir))
69
+ return { macros: [], errors: [] };
70
+ const candidates = collectMacroFiles(rootDir, options.includeExperimental ?? false);
71
+ const macros = [];
72
+ const errors = [];
73
+ const seen = new Set();
74
+ for (const { file, experimental } of candidates) {
75
+ try {
76
+ const raw = fs.readFileSync(file, 'utf-8');
77
+ const parsed = JSON.parse(raw);
78
+ const macro = validateMacroDefinition(parsed, file, experimental);
79
+ if (seen.has(macro.name)) {
80
+ throw new Error(`Duplicate macro name "${macro.name}" (already loaded from a prior file)`);
81
+ }
82
+ seen.add(macro.name);
83
+ macros.push(macro);
84
+ }
85
+ catch (err) {
86
+ errors.push({ path: file, error: err instanceof Error ? err.message : String(err) });
87
+ onError(file, err);
88
+ }
89
+ }
90
+ return { macros, errors };
91
+ }
92
+ function collectMacroFiles(rootDir, includeExperimental) {
93
+ const result = [];
94
+ for (const entry of fs.readdirSync(rootDir, { withFileTypes: true })) {
95
+ const full = path.join(rootDir, entry.name);
96
+ if (entry.isFile() && entry.name.endsWith('.json')) {
97
+ result.push({ file: full, experimental: false });
98
+ }
99
+ else if (entry.isDirectory() && entry.name === 'experimental' && includeExperimental) {
100
+ for (const inner of fs.readdirSync(full, { withFileTypes: true })) {
101
+ if (inner.isFile() && inner.name.endsWith('.json')) {
102
+ result.push({ file: path.join(full, inner.name), experimental: true });
103
+ }
104
+ }
105
+ }
106
+ }
107
+ return result;
108
+ }
109
+ export function validateMacroDefinition(raw, sourcePath, experimental) {
110
+ if (!raw || typeof raw !== 'object')
111
+ throw new Error('macro must be a JSON object');
112
+ const obj = raw;
113
+ const name = obj.name;
114
+ if (typeof name !== 'string' || !/^[a-z][a-z0-9-]*$/i.test(name)) {
115
+ throw new Error('macro.name must be a non-empty string matching /^[a-z][a-z0-9-]*$/i');
116
+ }
117
+ const description = obj.description;
118
+ if (typeof description !== 'string' || description.length === 0) {
119
+ throw new Error(`macro.description must be a non-empty string (for the agent's prompt)`);
120
+ }
121
+ const rawParams = Array.isArray(obj.params) ? obj.params : [];
122
+ const params = [];
123
+ const paramNames = new Set();
124
+ for (const p of rawParams) {
125
+ if (!p || typeof p !== 'object')
126
+ throw new Error('each macro param must be an object');
127
+ const pn = p.name;
128
+ if (typeof pn !== 'string' || !/^[a-z][a-z0-9_]*$/i.test(pn)) {
129
+ throw new Error(`macro param name must match /^[a-z][a-z0-9_]*$/i, got ${String(pn)}`);
130
+ }
131
+ if (paramNames.has(pn))
132
+ throw new Error(`duplicate macro param: ${pn}`);
133
+ paramNames.add(pn);
134
+ const spec = { name: pn };
135
+ if (typeof p.description === 'string') {
136
+ spec.description = p.description;
137
+ }
138
+ if (typeof p.required === 'boolean') {
139
+ spec.required = p.required;
140
+ }
141
+ params.push(spec);
142
+ }
143
+ const rawSteps = obj.steps;
144
+ if (!Array.isArray(rawSteps) || rawSteps.length === 0) {
145
+ throw new Error('macro.steps must be a non-empty array');
146
+ }
147
+ if (rawSteps.length > MAX_MACRO_STEPS) {
148
+ throw new Error(`macro.steps has ${rawSteps.length} entries, max ${MAX_MACRO_STEPS}. Split the macro.`);
149
+ }
150
+ const steps = [];
151
+ for (let i = 0; i < rawSteps.length; i++) {
152
+ const step = rawSteps[i];
153
+ if (!step || typeof step !== 'object' || Array.isArray(step)) {
154
+ throw new Error(`macro.steps[${i}] must be an object`);
155
+ }
156
+ const action = step.action;
157
+ if (typeof action !== 'string' || !SAFE_MACRO_STEP_TYPES.has(action)) {
158
+ throw new Error(`macro.steps[${i}].action "${String(action)}" is not in the safe-macro whitelist. ` +
159
+ `Allowed: ${[...SAFE_MACRO_STEP_TYPES].join(', ')}`);
160
+ }
161
+ validateStepTemplates(step, paramNames, i);
162
+ steps.push(step);
163
+ }
164
+ return {
165
+ name,
166
+ description,
167
+ params,
168
+ steps,
169
+ sourcePath,
170
+ ...(experimental ? { experimental: true } : {}),
171
+ };
172
+ }
173
+ /** Walk a step's string fields and ensure every `${foo}` matches a declared
174
+ * param. We don't support nested interpolation, math, or anything fancy —
175
+ * just a literal `${name}` token. */
176
+ function validateStepTemplates(step, paramNames, index) {
177
+ const re = /\$\{([a-z][a-z0-9_]*)\}/gi;
178
+ for (const [key, value] of Object.entries(step)) {
179
+ if (typeof value !== 'string')
180
+ continue;
181
+ let match;
182
+ while ((match = re.exec(value)) !== null) {
183
+ const name = match[1];
184
+ if (!paramNames.has(name)) {
185
+ throw new Error(`macro.steps[${index}].${key} references undeclared param \${${name}} — add it to params[] or remove the template`);
186
+ }
187
+ }
188
+ }
189
+ }
190
+ /** Render the loaded macros into the system-prompt snippet. Called once at
191
+ * runner boot and cached in the brain. Returns empty string if no macros. */
192
+ export function renderMacroPromptBlock(macros) {
193
+ const available = macros.filter((m) => !m.experimental);
194
+ if (available.length === 0)
195
+ return '';
196
+ const lines = [];
197
+ lines.push('');
198
+ lines.push('USER MACROS (invoke via {"action":"macro","name":"<name>","args":{...}}):');
199
+ for (const macro of available) {
200
+ const paramList = macro.params.length > 0
201
+ ? ` args: { ${macro.params.map((p) => `${p.name}${p.required === false ? '?' : ''}: string`).join(', ')} }`
202
+ : '';
203
+ lines.push(`- ${macro.name} — ${macro.description}${paramList}`);
204
+ }
205
+ return lines.join('\n');
206
+ }
207
+ /** Substitute `${param}` placeholders in string-typed fields of a step,
208
+ * using the provided args. Returns a new object — does not mutate input.
209
+ * Unknown placeholders are collected so the dispatcher can fail fast
210
+ * instead of silently typing a literal `${missing}` into a form. */
211
+ export function interpolateStep(step, args) {
212
+ const unresolved = new Set();
213
+ const entries = Object.entries(step).map(([k, v]) => {
214
+ if (typeof v !== 'string')
215
+ return [k, v];
216
+ return [k, v.replace(/\$\{([a-z][a-z0-9_]*)\}/gi, (match, name) => {
217
+ if (Object.prototype.hasOwnProperty.call(args, name))
218
+ return args[name];
219
+ unresolved.add(name);
220
+ return match;
221
+ })];
222
+ });
223
+ return {
224
+ step: Object.fromEntries(entries),
225
+ unresolved: [...unresolved],
226
+ };
227
+ }
228
+ export function buildMacroRegistry(macros) {
229
+ const map = new Map();
230
+ for (const macro of macros)
231
+ map.set(macro.name, macro);
232
+ return {
233
+ macros: map,
234
+ promptBlock: renderMacroPromptBlock(macros),
235
+ };
236
+ }
237
+ //# sourceMappingURL=macro-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"macro-loader.js","sourceRoot":"","sources":["../../src/skills/macro-loader.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ FOR "force_action":
22
22
  - Choose one action from: click, type, press, hover, select, scroll, navigate, wait
23
23
  - If using selector, use ONLY refs present in ELEMENTS as "@refId"
24
24
  - Prefer low-risk unblock actions before destructive actions
25
- - If the worker is stalled on a form (date picker, search form), consider navigating to https://duckduckgo.com/?q={goal as search query} to find the answer via search results instead. Do NOT use google.com/search (it blocks automated browsers)
25
+ - If the worker is stalled on a form, suggest a different interaction strategy (keyboard-only fill, runScript extraction, URL construction from current page state)
26
26
 
27
27
  Respond ONLY JSON:
28
28
  {
@@ -136,6 +136,13 @@ function actionSignature(action) {
136
136
  return `clickLabel:${action.label}`;
137
137
  case 'typeLabel':
138
138
  return `typeLabel:${action.label}:${action.text.slice(0, 32)}`;
139
+ case 'macro': {
140
+ const argSig = Object.entries(action.args ?? {})
141
+ .sort(([a], [b]) => a.localeCompare(b))
142
+ .map(([k, v]) => `${k}=${v.slice(0, 32)}`)
143
+ .join('|');
144
+ return `macro:${action.name}:${argSig}`;
145
+ }
139
146
  }
140
147
  }
141
148
  //# sourceMappingURL=policy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/supervisor/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/supervisor/policy.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,12 @@ export interface TestRunnerOptions {
38
38
  onTestComplete?: (result: TestResult) => void;
39
39
  /** Called after each agent turn */
40
40
  onTurn?: (tc: TestCase, turn: Turn) => void;
41
+ /**
42
+ * Gen 32 — called at the top of every turn before observe(). Returns
43
+ * a promise the runner awaits; used by the interrupt controller to
44
+ * block while paused. Rejection triggers a clean abort.
45
+ */
46
+ beforeTurn?: (turn: number) => Promise<void>;
41
47
  /** Pluggable artifact storage — screenshots, video, reports flow through this */
42
48
  artifactSink?: ArtifactSink;
43
49
  /** Unified progress event stream for dashboards/CI/coordinators */
@@ -50,6 +56,11 @@ export interface TestRunnerOptions {
50
56
  * spawns so onTurnEvent / mutateDecision / addRules fire on every test.
51
57
  */
52
58
  extensions?: import('./extensions/types.js').ResolvedExtensions;
59
+ /**
60
+ * Gen 29: rendered macro prompt block from skills/macros. Forwarded to
61
+ * every BrowserAgent so macros are visible in the system prompt.
62
+ */
63
+ macroPromptBlock?: string;
53
64
  /**
54
65
  * Optional shared TurnEventBus. When set, every BrowserAgent uses the same
55
66
  * bus so a live SSE viewer or events.jsonl sink can observe an entire suite
@@ -75,12 +86,14 @@ export declare class TestRunner {
75
86
  private onTestStart?;
76
87
  private onTestComplete?;
77
88
  private onTurn?;
89
+ private beforeTurn?;
78
90
  private artifactSink?;
79
91
  private onProgress?;
80
92
  private workerTimeoutMs?;
81
93
  private defaultTimeoutMs?;
82
94
  private pendingArtifactOps;
83
95
  private extensions?;
96
+ private macroPromptBlock?;
84
97
  private eventBus?;
85
98
  /** Suite-level abort signal — wired up by runSuite, consumed by runTest */
86
99
  private suiteSignal?;
@@ -1 +1 @@
1
- {"version":3,"file":"test-runner.d.ts","sourceRoot":"","sources":["../src/test-runner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EACV,eAAe,EAGf,WAAW,EAEX,IAAI,EACL,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAKxE,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAoB9D,MAAM,WAAW,iBAAiB;IAChC,yDAAyD;IACzD,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtC,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,yCAAyC;IACzC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,0FAA0F;IAC1F,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,qCAAqC;IACrC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAC;IACrC,wCAAwC;IACxC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC9C,mCAAmC;IACnC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAE5C,iFAAiF;IACjF,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,mEAAmE;IACnE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,oFAAoF;IACpF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,uBAAuB,EAAE,kBAAkB,CAAC;IAChE;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAC;CACtD;AAED,UAAU,cAAc;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAiCD,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,aAAa,CAAsC;IAC3D,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,WAAW,CAAC,CAAyB;IAC7C,OAAO,CAAC,cAAc,CAAC,CAA+B;IACtD,OAAO,CAAC,MAAM,CAAC,CAAqC;IACpD,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,UAAU,CAAC,CAAiC;IACpD,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,kBAAkB,CAAoC;IAC9D,OAAO,CAAC,UAAU,CAAC,CAAqD;IACxE,OAAO,CAAC,QAAQ,CAAC,CAA4C;IAC7D,2EAA2E;IAC3E,OAAO,CAAC,WAAW,CAAC,CAAc;gBAEtB,OAAO,EAAE,iBAAiB;IAkCtC,6BAA6B;IACvB,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC;IAoWjG,oFAAoF;IAC9E,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IA+F/F,mEAAmE;IACnE,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,WAAW;IAIjD,wFAAwF;IACxF,aAAa,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM;YAM9B,aAAa;YAwBb,WAAW;YA0JX,cAAc;YAqBd,qBAAqB;IAgGnC,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,YAAY;IAmBpB;;;OAGG;YACW,uBAAuB;IAsCrC,OAAO,CAAC,gBAAgB;IA0BxB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,eAAe;YAOT,gBAAgB;YAKhB,yBAAyB;CA8LxC"}
1
+ {"version":3,"file":"test-runner.d.ts","sourceRoot":"","sources":["../src/test-runner.ts"],"names":[],"mappings":"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"}
@@ -62,12 +62,14 @@ export class TestRunner {
62
62
  onTestStart;
63
63
  onTestComplete;
64
64
  onTurn;
65
+ beforeTurn;
65
66
  artifactSink;
66
67
  onProgress;
67
68
  workerTimeoutMs;
68
69
  defaultTimeoutMs;
69
70
  pendingArtifactOps = new Set();
70
71
  extensions;
72
+ macroPromptBlock;
71
73
  eventBus;
72
74
  /** Suite-level abort signal — wired up by runSuite, consumed by runTest */
73
75
  suiteSignal;
@@ -95,6 +97,7 @@ export class TestRunner {
95
97
  this.onTestStart = options.onTestStart;
96
98
  this.onTestComplete = options.onTestComplete;
97
99
  this.onTurn = options.onTurn;
100
+ this.beforeTurn = options.beforeTurn;
98
101
  this.artifactSink = options.artifactSink;
99
102
  this.onProgress = options.onProgress;
100
103
  this.workerTimeoutMs = options.workerTimeoutMs;
@@ -102,6 +105,7 @@ export class TestRunner {
102
105
  this.defaultTimeoutMs = options.defaultTimeoutMs
103
106
  ?? (options.config?.timeoutMs);
104
107
  this.extensions = options.extensions;
108
+ this.macroPromptBlock = options.macroPromptBlock;
105
109
  this.eventBus = options.eventBus;
106
110
  }
107
111
  /** Run a single test case */
@@ -166,7 +170,9 @@ export class TestRunner {
166
170
  projectStore: this.projectStore,
167
171
  runRegistry: this.runRegistry,
168
172
  ...(this.extensions ? { extensions: this.extensions } : {}),
173
+ ...(this.macroPromptBlock ? { macroPromptBlock: this.macroPromptBlock } : {}),
169
174
  eventBus: perTestBus,
175
+ ...(this.beforeTurn ? { beforeTurn: this.beforeTurn } : {}),
170
176
  onTurn: (turn) => {
171
177
  if (timeToFirstTurnMs === undefined) {
172
178
  timeToFirstTurnMs = Math.max(0, Date.now() - runStartedAtMs);
@@ -1 +1 @@
1
- {"version":3,"file":"test-runner.js","sourceRoot":"","sources":["../src/test-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-runner.js","sourceRoot":"","sources":["../src/test-runner.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -161,7 +161,25 @@ export interface TypeLabelAction {
161
161
  /** Text to type after clicking */
162
162
  text: string;
163
163
  }
164
- export type Action = ClickAction | TypeAction | PressAction | HoverAction | SelectAction | ScrollAction | NavigateAction | WaitAction | EvaluateAction | RunScriptAction | ExtractWithIndexAction | VerifyPreviewAction | CompleteAction | AbortAction | BatchFillAction | ClickSequenceAction | ClickAtAction | TypeAtAction | ClickLabelAction | TypeLabelAction;
164
+ /**
165
+ * Gen 29: invoke a named macro defined in `skills/macros/<name>.json`. The
166
+ * macro expands into a sequence of existing primitive actions. The driver
167
+ * executes each step in order; the first failure aborts the macro and its
168
+ * error is surfaced as the macro's ActionResult error.
169
+ *
170
+ * Macros are flat (cannot call other macros) to keep dispatch bounded and
171
+ * to avoid cycles. They receive arguments via `args`, which is substituted
172
+ * into `${paramName}` placeholders in each step's string fields.
173
+ */
174
+ export interface MacroAction {
175
+ action: 'macro';
176
+ /** Macro name, matches a registered MacroDefinition */
177
+ name: string;
178
+ /** Arguments to interpolate into the macro's steps. Optional when the
179
+ * macro has no declared parameters. */
180
+ args?: Record<string, string>;
181
+ }
182
+ export type Action = ClickAction | TypeAction | PressAction | HoverAction | SelectAction | ScrollAction | NavigateAction | WaitAction | EvaluateAction | RunScriptAction | ExtractWithIndexAction | VerifyPreviewAction | CompleteAction | AbortAction | BatchFillAction | ClickSequenceAction | ClickAtAction | TypeAtAction | ClickLabelAction | TypeLabelAction | MacroAction;
165
183
  /**
166
184
  * A single step in a Plan. Wraps an action with a verification checkpoint
167
185
  * and optional recovery hint. The runner executes steps deterministically;