@e2edev/e2e 0.2.0 → 0.3.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 (168) hide show
  1. package/dist/agent/act.d.ts.map +1 -1
  2. package/dist/agent/act.js +89 -28
  3. package/dist/agent/act.js.map +1 -1
  4. package/dist/agent/actions.d.ts +15 -0
  5. package/dist/agent/actions.d.ts.map +1 -1
  6. package/dist/agent/actions.js +59 -1
  7. package/dist/agent/actions.js.map +1 -1
  8. package/dist/agent/default-agent.d.ts +34 -4
  9. package/dist/agent/default-agent.d.ts.map +1 -1
  10. package/dist/agent/default-agent.js +18 -127
  11. package/dist/agent/default-agent.js.map +1 -1
  12. package/dist/agent/derived.d.ts +17 -0
  13. package/dist/agent/derived.d.ts.map +1 -0
  14. package/dist/agent/derived.js +45 -0
  15. package/dist/agent/derived.js.map +1 -0
  16. package/dist/agent/executor.d.ts +116 -2
  17. package/dist/agent/executor.d.ts.map +1 -1
  18. package/dist/agent/executor.js.map +1 -1
  19. package/dist/agent/index.js +1 -1
  20. package/dist/agent/index.js.map +1 -1
  21. package/dist/agent/invocation.d.ts +3 -2
  22. package/dist/agent/invocation.d.ts.map +1 -1
  23. package/dist/agent/invocation.js +12 -12
  24. package/dist/agent/invocation.js.map +1 -1
  25. package/dist/agent/ledger.d.ts +14 -4
  26. package/dist/agent/ledger.d.ts.map +1 -1
  27. package/dist/agent/ledger.js +26 -5
  28. package/dist/agent/ledger.js.map +1 -1
  29. package/dist/agent/loop-guards.d.ts +14 -1
  30. package/dist/agent/loop-guards.d.ts.map +1 -1
  31. package/dist/agent/loop-guards.js +11 -8
  32. package/dist/agent/loop-guards.js.map +1 -1
  33. package/dist/agent/observation.d.ts +26 -7
  34. package/dist/agent/observation.d.ts.map +1 -1
  35. package/dist/agent/observation.js +51 -5
  36. package/dist/agent/observation.js.map +1 -1
  37. package/dist/agent/primitives.d.ts +86 -0
  38. package/dist/agent/primitives.d.ts.map +1 -0
  39. package/dist/agent/primitives.js +255 -0
  40. package/dist/agent/primitives.js.map +1 -0
  41. package/dist/agent/prompts.d.ts.map +1 -1
  42. package/dist/agent/prompts.js.map +1 -1
  43. package/dist/agent/public.d.ts +6 -3
  44. package/dist/agent/public.d.ts.map +1 -1
  45. package/dist/agent/public.js +4 -2
  46. package/dist/agent/public.js.map +1 -1
  47. package/dist/agent/replay.d.ts +1 -1
  48. package/dist/agent/replay.d.ts.map +1 -1
  49. package/dist/agent/replay.js +19 -2
  50. package/dist/agent/replay.js.map +1 -1
  51. package/dist/agent/step-cache.d.ts +3 -0
  52. package/dist/agent/step-cache.d.ts.map +1 -1
  53. package/dist/agent/step-cache.js +35 -3
  54. package/dist/agent/step-cache.js.map +1 -1
  55. package/dist/agent/tool-loop.d.ts +59 -5
  56. package/dist/agent/tool-loop.d.ts.map +1 -1
  57. package/dist/agent/tool-loop.js +77 -105
  58. package/dist/agent/tool-loop.js.map +1 -1
  59. package/dist/backend/index.d.ts +50 -1
  60. package/dist/backend/index.d.ts.map +1 -1
  61. package/dist/backend/index.js +2 -0
  62. package/dist/backend/index.js.map +1 -1
  63. package/dist/cache/recorder.d.ts +2 -0
  64. package/dist/cache/recorder.d.ts.map +1 -1
  65. package/dist/cache/recorder.js +4 -1
  66. package/dist/cache/recorder.js.map +1 -1
  67. package/dist/cache/relocate.d.ts.map +1 -1
  68. package/dist/cache/relocate.js +11 -2
  69. package/dist/cache/relocate.js.map +1 -1
  70. package/dist/cache/trace.d.ts +11 -0
  71. package/dist/cache/trace.d.ts.map +1 -1
  72. package/dist/cache/trace.js +9 -0
  73. package/dist/cache/trace.js.map +1 -1
  74. package/dist/cli/index.d.ts.map +1 -1
  75. package/dist/cli/index.js +28 -18
  76. package/dist/cli/index.js.map +1 -1
  77. package/dist/cli/init.d.ts.map +1 -1
  78. package/dist/cli/init.js +32 -9
  79. package/dist/cli/init.js.map +1 -1
  80. package/dist/cli/signals.d.ts +23 -0
  81. package/dist/cli/signals.d.ts.map +1 -0
  82. package/dist/cli/signals.js +42 -0
  83. package/dist/cli/signals.js.map +1 -0
  84. package/dist/collect/registry.d.ts +14 -4
  85. package/dist/collect/registry.d.ts.map +1 -1
  86. package/dist/collect/registry.js +10 -10
  87. package/dist/collect/registry.js.map +1 -1
  88. package/dist/config/resolve.d.ts +0 -1
  89. package/dist/config/resolve.d.ts.map +1 -1
  90. package/dist/config/resolve.js +4 -14
  91. package/dist/config/resolve.js.map +1 -1
  92. package/dist/index.d.ts +3 -2
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js +1 -1
  95. package/dist/index.js.map +1 -1
  96. package/dist/internal/errors.d.ts +9 -0
  97. package/dist/internal/errors.d.ts.map +1 -1
  98. package/dist/internal/errors.js +15 -0
  99. package/dist/internal/errors.js.map +1 -1
  100. package/dist/internal/time.d.ts +5 -0
  101. package/dist/internal/time.d.ts.map +1 -1
  102. package/dist/internal/time.js +22 -0
  103. package/dist/internal/time.js.map +1 -1
  104. package/dist/internal/urls.d.ts +2 -1
  105. package/dist/internal/urls.d.ts.map +1 -1
  106. package/dist/internal/urls.js +22 -2
  107. package/dist/internal/urls.js.map +1 -1
  108. package/dist/locator/engine.d.ts +5 -3
  109. package/dist/locator/engine.d.ts.map +1 -1
  110. package/dist/locator/engine.js +7 -6
  111. package/dist/locator/engine.js.map +1 -1
  112. package/dist/report/build.d.ts +0 -1
  113. package/dist/report/build.d.ts.map +1 -1
  114. package/dist/report/build.js +0 -1
  115. package/dist/report/build.js.map +1 -1
  116. package/dist/report/list.d.ts +2 -0
  117. package/dist/report/list.d.ts.map +1 -1
  118. package/dist/report/list.js +12 -0
  119. package/dist/report/list.js.map +1 -1
  120. package/dist/report/live-status.d.ts.map +1 -1
  121. package/dist/report/live-status.js +2 -1
  122. package/dist/report/live-status.js.map +1 -1
  123. package/dist/run/budget.d.ts +25 -0
  124. package/dist/run/budget.d.ts.map +1 -0
  125. package/dist/run/budget.js +38 -0
  126. package/dist/run/budget.js.map +1 -0
  127. package/dist/run/events.d.ts +13 -0
  128. package/dist/run/events.d.ts.map +1 -1
  129. package/dist/run/events.js.map +1 -1
  130. package/dist/run/execute.d.ts +8 -0
  131. package/dist/run/execute.d.ts.map +1 -1
  132. package/dist/run/execute.js +53 -8
  133. package/dist/run/execute.js.map +1 -1
  134. package/dist/run/fixtures.d.ts +6 -3
  135. package/dist/run/fixtures.d.ts.map +1 -1
  136. package/dist/run/fixtures.js +7 -5
  137. package/dist/run/fixtures.js.map +1 -1
  138. package/dist/run/in-process.d.ts.map +1 -1
  139. package/dist/run/in-process.js +11 -2
  140. package/dist/run/in-process.js.map +1 -1
  141. package/dist/run/realm.d.ts +43 -8
  142. package/dist/run/realm.d.ts.map +1 -1
  143. package/dist/run/realm.js +67 -24
  144. package/dist/run/realm.js.map +1 -1
  145. package/dist/run/runner.d.ts +8 -0
  146. package/dist/run/runner.d.ts.map +1 -1
  147. package/dist/run/runner.js +93 -25
  148. package/dist/run/runner.js.map +1 -1
  149. package/dist/run/scheduler.d.ts +8 -0
  150. package/dist/run/scheduler.d.ts.map +1 -1
  151. package/dist/run/scheduler.js +37 -3
  152. package/dist/run/scheduler.js.map +1 -1
  153. package/dist/run/serial.d.ts +2 -0
  154. package/dist/run/serial.d.ts.map +1 -1
  155. package/dist/run/serial.js +10 -0
  156. package/dist/run/serial.js.map +1 -1
  157. package/dist/run/worker/entry.js +17 -2
  158. package/dist/run/worker/entry.js.map +1 -1
  159. package/dist/run/worker/protocol.d.ts +9 -1
  160. package/dist/run/worker/protocol.d.ts.map +1 -1
  161. package/dist/run/worker/protocol.js.map +1 -1
  162. package/dist/run/worker/session.d.ts +12 -0
  163. package/dist/run/worker/session.d.ts.map +1 -1
  164. package/dist/run/worker/session.js +23 -1
  165. package/dist/run/worker/session.js.map +1 -1
  166. package/dist/types.d.ts +0 -1
  167. package/dist/types.d.ts.map +1 -1
  168. package/package.json +2 -2
@@ -0,0 +1,255 @@
1
+ /**
2
+ * The primitives under the built-in agent (RFC0001, layer 4). Each is one
3
+ * piece of the discipline the chassis and `createAgent` are assembled from,
4
+ * usable on its own with a raw AI SDK `ToolLoopAgent` or `generateText` —
5
+ * the way the AI SDK itself is a small opinionated agent over primitives you
6
+ * can also call directly:
7
+ *
8
+ * - `createGrammarTools` — AI SDK tools over the harness action grammar;
9
+ * - `createVerdictTool` — the `complete_step` tool and the closed blocked-code policy;
10
+ * - `trackModelCalls` — step handlers that report usage to the harness budgets;
11
+ * - `conversationMemory` — a message history kept across the steps of an attempt.
12
+ *
13
+ * Nothing here loads the `ai` package: an AI SDK tool is a plain object, so
14
+ * the module is safe to import from a config that never calls a model.
15
+ */
16
+ import { z } from 'zod';
17
+ import { BLOCKABLE_CODES } from './executor.js';
18
+ import { readCost } from './model/sdk.js';
19
+ /** Codes the model may pick when concluding; runtime codes are runtime-assigned. */
20
+ const MODEL_ERROR_CODES = [
21
+ 'ACTION_FAILED',
22
+ 'AUTOMATION_UNSUPPORTED',
23
+ 'ASSERTION_FAILED',
24
+ 'AUTHENTICATION_FAILED',
25
+ 'AUTH_CREDENTIAL_UNAVAILABLE',
26
+ 'AUTH_CREDENTIAL_INVALID',
27
+ 'ENVIRONMENT_UNAVAILABLE',
28
+ 'SEED_DATA_MISSING',
29
+ 'TEST_SETUP_FAILED',
30
+ 'APP_UNREACHABLE',
31
+ 'APP_NOT_OPEN',
32
+ 'POLICY_DENIED',
33
+ ];
34
+ /** The model-pickable codes a blocked verdict accepts; derived, never restated. */
35
+ const MODEL_BLOCKABLE_CODES = MODEL_ERROR_CODES.filter((code) => BLOCKABLE_CODES.has(code));
36
+ /** The verdict rules the built-in agent appends to its instructions. */
37
+ export const VERDICT_RULES = `Verdict rules:
38
+ - When the step's goal is achieved, or you are certain it cannot be, call complete_step exactly once.
39
+ - Verify outcomes with your tools before concluding; never guess success.
40
+ - "passed" means the application behaved as the step required. "failed" means it did not. "blocked" means credentials, the environment, or test setup prevented a product verdict — blocked says nothing about the product and requires an errorCode.`;
41
+ /**
42
+ * A plain AI SDK function tool with its input typed from the schema — what
43
+ * `tool()` from `ai` does, without loading `ai` to do it.
44
+ */
45
+ function schemaTool(definition) {
46
+ return definition;
47
+ }
48
+ /**
49
+ * The `complete_step` verdict tool. A blocked verdict without a blockable
50
+ * code is rejected back to the model, a passed verdict never carries a code,
51
+ * and the first accepted verdict is final.
52
+ */
53
+ export function createVerdictTool() {
54
+ let verdict;
55
+ const tool = schemaTool({
56
+ description: 'Conclude the step with the final verdict. passed = the application behaved as required and you verified it. failed = the application did not behave as required. blocked = credentials, environment, or test setup prevented a product verdict; blocked requires errorCode.',
57
+ inputSchema: z.object({
58
+ status: z.enum(['passed', 'failed', 'blocked']),
59
+ summary: z
60
+ .string()
61
+ .min(1)
62
+ .max(500)
63
+ .describe('What you did and what you saw, in plain language'),
64
+ errorCode: z.enum(MODEL_ERROR_CODES).optional(),
65
+ }),
66
+ execute: async (input) => {
67
+ if (verdict !== undefined)
68
+ return 'The step already concluded.';
69
+ if (input.status === 'blocked' &&
70
+ (input.errorCode === undefined ||
71
+ !MODEL_BLOCKABLE_CODES.includes(input.errorCode))) {
72
+ return ('Rejected: a blocked verdict requires errorCode naming what blocked you ' +
73
+ `(one of ${MODEL_BLOCKABLE_CODES.join(', ')}). ` +
74
+ 'If the application itself misbehaved, use status "failed" instead.');
75
+ }
76
+ verdict = {
77
+ status: input.status,
78
+ summary: input.summary,
79
+ ...(input.errorCode === undefined || input.status === 'passed'
80
+ ? {}
81
+ : { errorCode: input.errorCode }),
82
+ };
83
+ return 'Step concluded.';
84
+ },
85
+ });
86
+ return {
87
+ tool,
88
+ verdict: () => verdict,
89
+ concluded: () => verdict !== undefined,
90
+ };
91
+ }
92
+ /**
93
+ * AI SDK tools over the harness action grammar, limited to the verbs the
94
+ * target's backend declared. A verb the surface cannot honor is not offered
95
+ * at all, so the model never learns vocabulary it can only be rejected on.
96
+ * Every mutating tool returns the updated screen.
97
+ */
98
+ export function createGrammarTools(context, options = {}) {
99
+ const guard = options.guard ?? ((body) => body());
100
+ const { verbs } = context.target;
101
+ /** Re-observes after a mutating action so the model always sees the result. */
102
+ const acted = async (description) => {
103
+ const observation = await context.observe();
104
+ return `${description}\n\nUpdated screen (revision ${observation.revision}):\n${observation.text}`;
105
+ };
106
+ const target = z.string().min(1).describe('Node id from the newest observation, e.g. "n42"');
107
+ const tools = {
108
+ observe: schemaTool({
109
+ description: 'Capture a fresh observation of the current screen without acting.',
110
+ inputSchema: z.object({}),
111
+ execute: () => guard(async () => {
112
+ const observation = await context.observe();
113
+ return `Current screen (revision ${observation.revision}):\n${observation.text}`;
114
+ }),
115
+ }),
116
+ };
117
+ if (verbs.has('tap')) {
118
+ tools['tap'] = schemaTool({
119
+ description: 'Tap or click one node.',
120
+ inputSchema: z.object({ target }),
121
+ execute: ({ target: id }) => guard(async () => {
122
+ await context.actions.tap({ id });
123
+ return acted(`Tapped #${id}.`);
124
+ }),
125
+ });
126
+ }
127
+ if (verbs.has('type')) {
128
+ tools['type'] = schemaTool({
129
+ description: 'Type a plain-text value into one input node. Replaces the current value.',
130
+ inputSchema: z.object({ target, value: z.string() }),
131
+ execute: ({ target: id, value }) => guard(async () => {
132
+ await context.actions.type({ id }, value);
133
+ return acted(`Typed into #${id}.`);
134
+ }),
135
+ });
136
+ }
137
+ if (verbs.has('press')) {
138
+ tools['press'] = schemaTool({
139
+ description: 'Send one key (e.g. "Enter", "Escape", "Tab") to one node.',
140
+ inputSchema: z.object({ target, key: z.string().min(1).max(64) }),
141
+ execute: ({ target: id, key }) => guard(async () => {
142
+ await context.actions.press({ id }, key);
143
+ return acted(`Pressed ${key} on #${id}.`);
144
+ }),
145
+ });
146
+ }
147
+ if (verbs.has('select')) {
148
+ tools['select'] = schemaTool({
149
+ description: 'Pick one option from a select-like control by its visible label.',
150
+ inputSchema: z.object({ target, value: z.string().min(1) }),
151
+ execute: ({ target: id, value }) => guard(async () => {
152
+ await context.actions.select({ id }, value);
153
+ return acted(`Selected "${value}" in #${id}.`);
154
+ }),
155
+ });
156
+ }
157
+ if (verbs.has('scroll')) {
158
+ const direction = z.enum(['up', 'down', 'left', 'right']);
159
+ // Node-targeted scrolling rides `perform`; without it only the viewport scrolls.
160
+ tools['scroll'] = verbs.has('tap')
161
+ ? schemaTool({
162
+ description: 'Scroll the viewport, or one scrollable node when target is given.',
163
+ inputSchema: z.object({ direction, target: target.optional() }),
164
+ execute: ({ direction: way, target: id }) => guard(async () => {
165
+ await context.actions.scroll(way, id === undefined ? undefined : { id });
166
+ return acted(`Scrolled ${way}.`);
167
+ }),
168
+ })
169
+ : schemaTool({
170
+ description: 'Scroll the viewport.',
171
+ inputSchema: z.object({ direction }),
172
+ execute: ({ direction: way }) => guard(async () => {
173
+ await context.actions.scroll(way);
174
+ return acted(`Scrolled ${way}.`);
175
+ }),
176
+ });
177
+ }
178
+ if (verbs.has('navigate')) {
179
+ tools['navigate'] = schemaTool({
180
+ description: 'Navigate to a URL or app-relative path within the allowed origins.',
181
+ inputSchema: z.object({ url: z.string().min(1) }),
182
+ execute: ({ url }) => guard(async () => {
183
+ await context.actions.navigate(url);
184
+ return acted(`Navigated to ${url}.`);
185
+ }),
186
+ });
187
+ }
188
+ // Offered only when the step declared secrets and the surface can fill: an
189
+ // empty vocabulary is better than a tool the model can only be rejected on.
190
+ if (verbs.has('typeSecret') && context.step.secrets.length > 0) {
191
+ tools['type_secret'] = schemaTool({
192
+ description: 'Fill one declared secret credential into a secure input field; the plaintext never passes through you. Available: ' +
193
+ context.step.secrets.map((secret) => `"${secret.name}" (${secret.purpose})`).join(', ') +
194
+ '.',
195
+ inputSchema: z.object({ target, name: z.string().min(1) }),
196
+ execute: ({ target: id, name }) => guard(async () => {
197
+ await context.actions.typeSecret({ id }, name);
198
+ return acted(`Filled secret "${name}" into #${id}.`);
199
+ }),
200
+ });
201
+ }
202
+ return tools;
203
+ }
204
+ /**
205
+ * Model-call accounting for a loop the executor runs itself. `model` names
206
+ * the provider and model id in the report; pass the AI SDK model instance.
207
+ */
208
+ export function trackModelCalls(context, model) {
209
+ let turnStartedMs = Date.now();
210
+ return {
211
+ onStepStart: () => {
212
+ turnStartedMs = Date.now();
213
+ },
214
+ onStepEnd: (step) => {
215
+ const estimatedCostUsd = readCost(step.providerMetadata);
216
+ context.budgets.recordModelCall({
217
+ ...(step.usage.inputTokens === undefined ? {} : { inputTokens: step.usage.inputTokens }),
218
+ ...(step.usage.outputTokens === undefined ? {} : { outputTokens: step.usage.outputTokens }),
219
+ durationMs: Date.now() - turnStartedMs,
220
+ ...(typeof model?.provider === 'string' ? { provider: model.provider } : {}),
221
+ ...(typeof model?.modelId === 'string' ? { modelId: model.modelId } : {}),
222
+ ...(estimatedCostUsd === undefined ? {} : { estimatedCostUsd }),
223
+ });
224
+ },
225
+ };
226
+ }
227
+ /**
228
+ * The executor's own conversation across an attempt, kept in
229
+ * `context.attempt.memory` under `key`. Open a step with
230
+ * `[...memory.messages, { role: 'user', content }]` and `remember` the full
231
+ * transcript when it ends; the harness drops it with the attempt.
232
+ */
233
+ export function conversationMemory(context, key = 'e2e/conversation') {
234
+ const stored = context.attempt.memory.get(key);
235
+ const current = isStoredConversation(stored)
236
+ ? stored
237
+ : { messages: [], lastStepIndex: -1 };
238
+ return {
239
+ messages: current.messages,
240
+ lastStepIndex: current.lastStepIndex,
241
+ remember: (messages) => {
242
+ const kept = { messages: [...messages], lastStepIndex: context.step.index };
243
+ context.attempt.memory.set(key, kept);
244
+ },
245
+ };
246
+ }
247
+ function isStoredConversation(value) {
248
+ return (typeof value === 'object' &&
249
+ value !== null &&
250
+ 'messages' in value &&
251
+ Array.isArray(value.messages) &&
252
+ 'lastStepIndex' in value &&
253
+ typeof value.lastStepIndex === 'number');
254
+ }
255
+ //# sourceMappingURL=primitives.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../src/agent/primitives.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/agent/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAe,MAAM,kBAAkB,CAAC;AAEtE,0EAA0E;AAC1E,eAAO,MAAM,cAAc,eAAe,CAAC;AAoB3C,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAM7E;AAED,MAAM,WAAW,WAAW;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACpD;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,EACZ;QACE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,+EAA+E;QAC/E,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;KACzD,GACD,SAAS,CAAC;CACf;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CA6CtD;AAiCD,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,QAGjB,CAAC;AAEb,8CAA8C;AAC9C,eAAO,MAAM,eAAe,QAMhB,CAAC"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/agent/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,0EAA0E;AAC1E,eAAO,MAAM,cAAc,eAAe,CAAC;AAoB3C,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAM7E;AAED,MAAM,WAAW,WAAW;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACpD;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,EACZ;QACE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,+EAA+E;QAC/E,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;KACzD,GACD,SAAS,CAAC;CACf;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CA6CtD;AAiCD,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,QAGjB,CAAC;AAEb,8CAA8C;AAC9C,eAAO,MAAM,eAAe,QAMhB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agent/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agent/prompts.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,11 @@
5
5
  * the main `e2e` entrypoint, so a hand-rolled executor needs no import from
6
6
  * here (and no AI SDK) at all.
7
7
  */
8
- export { createAgent, type CreateAgentOptions } from './default-agent.ts';
9
- export { createToolLoopExecutor, type ToolLoopExecutorOptions, type ToolLoopHelpers, } from './tool-loop.ts';
10
- export { defineTool, type DefinedTool, type ToolAnnotations } from './tool.ts';
8
+ export { compactSnapshotHistory, createAgent, formatReplayedPrefix, type CreateAgentOptions, } from './default-agent.ts';
9
+ export { conversationMemory, createGrammarTools, createVerdictTool, trackModelCalls, VERDICT_RULES, type ConversationMemory, type GrammarToolOptions, type ModelCallTracker, type VerdictTool, } from './primitives.ts';
10
+ export { createToolLoopExecutor, type ToolLoopExecutorOptions, type PreparedTurn, type PreparedMessages, type ToolLoopHelpers, type WindDownPolicy, } from './tool-loop.ts';
11
+ export { serializeLedger, type LedgerContext } from './ledger.ts';
12
+ export type { LoopGuardThresholds } from './loop-guards.ts';
13
+ export { defineTool, isDefinedTool, toolAppliesTo, type DefinedTool, type ToolAnnotations, } from './tool.ts';
11
14
  export { AgentError, isAgentError } from './error.ts';
12
15
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/agent/public.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,eAAe,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,WAAW,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/agent/public.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,sBAAsB,EACtB,WAAW,EACX,oBAAoB,EACpB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAClE,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EACL,UAAU,EACV,aAAa,EACb,aAAa,EACb,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -5,8 +5,10 @@
5
5
  * the main `e2e` entrypoint, so a hand-rolled executor needs no import from
6
6
  * here (and no AI SDK) at all.
7
7
  */
8
- export { createAgent } from './default-agent.js';
8
+ export { compactSnapshotHistory, createAgent, formatReplayedPrefix, } from './default-agent.js';
9
+ export { conversationMemory, createGrammarTools, createVerdictTool, trackModelCalls, VERDICT_RULES, } from './primitives.js';
9
10
  export { createToolLoopExecutor, } from './tool-loop.js';
10
- export { defineTool } from './tool.js';
11
+ export { serializeLedger } from './ledger.js';
12
+ export { defineTool, isDefinedTool, toolAppliesTo, } from './tool.js';
11
13
  export { AgentError, isAgentError } from './error.js';
12
14
  //# sourceMappingURL=public.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.js","sourceRoot":"","sources":["../../src/agent/public.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAA2B,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL,sBAAsB,GAGvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAA0C,MAAM,WAAW,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"public.js","sourceRoot":"","sources":["../../src/agent/public.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,sBAAsB,EACtB,WAAW,EACX,oBAAoB,GAErB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,aAAa,GAKd,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,GAMvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAsB,MAAM,aAAa,CAAC;AAGlE,OAAO,EACL,UAAU,EACV,aAAa,EACb,aAAa,GAGd,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -57,5 +57,5 @@ export declare function replayTrace(host: ReplayHost, trace: ActionTrace): Promi
57
57
  * observed at all is a mismatch too — the executor gets the step and judges
58
58
  * the live state; only runtime hard stops propagate.
59
59
  */
60
- export declare function verifyAnchors(host: ReplayHost, anchors: readonly TraceTargetDescriptor[]): Promise<boolean>;
60
+ export declare function verifyAnchors(host: ReplayHost, anchors: readonly TraceTargetDescriptor[], waitMs?: number): Promise<boolean>;
61
61
  //# sourceMappingURL=replay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/agent/replay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAkB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAEL,KAAK,eAAe,EAEpB,KAAK,mBAAmB,EACzB,MAAM,eAAe,CAAC;AAQvB,wEAAwE;AACxE,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAE9D,wEAAwE;AACxE,MAAM,WAAW,UAAU;IACzB,sDAAsD;IACtD,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAClC;;;;OAIG;IACH,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IACzC,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,WAAW,IAAI,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,yEAAyE;IACzE,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,iDAAiD;IACjD,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAC1C,4EAA4E;IAC5E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AA2DD,wDAAwD;AACxD,wBAAsB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAmC9F;AAED;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,SAAS,qBAAqB,EAAE,GACxC,OAAO,CAAC,OAAO,CAAC,CAWlB"}
1
+ {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/agent/replay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAkB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAEL,KAAK,eAAe,EAEpB,KAAK,mBAAmB,EACzB,MAAM,eAAe,CAAC;AAQvB,wEAAwE;AACxE,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAE9D,wEAAwE;AACxE,MAAM,WAAW,UAAU;IACzB,sDAAsD;IACtD,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAClC;;;;OAIG;IACH,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IACzC,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,WAAW,IAAI,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,yEAAyE;IACzE,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,iDAAiD;IACjD,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAC1C,4EAA4E;IAC5E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AA2DD,wDAAwD;AACxD,wBAAsB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAmC9F;AAED;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,SAAS,qBAAqB,EAAE,EACzC,MAAM,SAAI,GACT,OAAO,CAAC,OAAO,CAAC,CAsBlB"}
@@ -112,12 +112,25 @@ export async function replayTrace(host, trace) {
112
112
  * observed at all is a mismatch too — the executor gets the step and judges
113
113
  * the live state; only runtime hard stops propagate.
114
114
  */
115
- export async function verifyAnchors(host, anchors) {
115
+ export async function verifyAnchors(host, anchors, waitMs = 0) {
116
116
  if (anchors.length === 0)
117
117
  return true;
118
+ const startedMs = Date.now();
118
119
  try {
119
120
  const present = await pollSettled(host, (nodes) => anchorsPresent(anchors, nodes, host) ? true : undefined);
120
- return present === true;
121
+ if (present === true)
122
+ return true;
123
+ // The settling backoff covers a slow re-render; the recorded run may have
124
+ // waited far longer than that for its effect — a report that takes half a
125
+ // minute — and so does the replay, up to what the recording needed, while
126
+ // the step clock leaves room for a hand-off to act.
127
+ const deadline = startedMs + Math.min(waitMs, Math.max(0, host.remainingMs() - END_WAIT_RESERVE_MS));
128
+ while (Date.now() < deadline && !host.signal.aborted) {
129
+ await sleep(Math.min(END_WAIT_POLL_MS, deadline - Date.now()), host.signal);
130
+ if (anchorsPresent(anchors, await host.observe(), host))
131
+ return true;
132
+ }
133
+ return false;
121
134
  }
122
135
  catch (cause) {
123
136
  if (isReplayFatal(cause, host.signal))
@@ -125,6 +138,10 @@ export async function verifyAnchors(host, anchors) {
125
138
  return false;
126
139
  }
127
140
  }
141
+ /** Poll cadence while a replay waits for the recorded end state beyond the settling backoff. */
142
+ const END_WAIT_POLL_MS = 1_000;
143
+ /** Step clock kept back from that wait, so a hand-off still has room to act. */
144
+ const END_WAIT_RESERVE_MS = 20_000;
128
145
  /**
129
146
  * Relocates one descriptor against the settling screen. Only a missing target
130
147
  * is worth another look; ambiguity never retries — two matching nodes will
@@ -1 +1 @@
1
- {"version":3,"file":"replay.js","sourceRoot":"","sources":["../../src/agent/replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replay.js","sourceRoot":"","sources":["../../src/agent/replay.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,7 @@ export declare class StepTraceSession {
51
51
  private info;
52
52
  private prefix;
53
53
  private startPath;
54
+ private startedMs;
54
55
  /**
55
56
  * The screen before any action, captured only when this step may write: the
56
57
  * staged trace's end anchors are the delta between this and the passing
@@ -124,6 +125,8 @@ export declare class StepTraceSession {
124
125
  * anchor present again.
125
126
  */
126
127
  private endStateMatches;
128
+ /** Whether the current path becomes `endPath` within the settling backoff. */
129
+ private pathSettles;
127
130
  private selfFinalize;
128
131
  private handOff;
129
132
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"step-cache.d.ts","sourceRoot":"","sources":["../../src/agent/step-cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step-cache.d.ts","sourceRoot":"","sources":["../../src/agent/step-cache.ts"],"names":[],"mappings":"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"}
@@ -15,8 +15,21 @@ import { describeAnchors } from '../cache/anchors.js';
15
15
  import { decideTraceReplay, opensWithNavigate, samePathname, } from '../cache/decide.js';
16
16
  import { TraceRecorder } from '../cache/recorder.js';
17
17
  import { readTraceEntry } from '../cache/trace.js';
18
+ import { sleep } from '../internal/time.js';
18
19
  import { isRuntimeHardStop } from './executor.js';
19
20
  import { replayTrace, verifyAnchors, } from './replay.js';
21
+ /** Margin added to a recorded step's duration when replay waits for its end state. */
22
+ const END_WAIT_MARGIN_MS = 10_000;
23
+ /**
24
+ * How long a replay waits for a recorded destination path to be the current
25
+ * one. A step that moved records no anchors: the path is its whole
26
+ * postcondition, and the replayed tap that starts the navigation returns
27
+ * before the new document commits. Reading the path once, right after the
28
+ * tap, hands every navigation off as an end-mismatch; polling with the
29
+ * settling backoff lets the destination arrive. Bounded like anchor polling.
30
+ */
31
+ const END_PATH_DELAYS_MS = [100, 300, 600, 1_000, 3_000];
32
+ const END_PATH_TIMEOUT_MS = 15_000;
20
33
  export class StepTraceSession {
21
34
  host;
22
35
  cache;
@@ -26,6 +39,7 @@ export class StepTraceSession {
26
39
  info;
27
40
  prefix;
28
41
  startPath;
42
+ startedMs = Date.now();
29
43
  /**
30
44
  * The screen before any action, captured only when this step may write: the
31
45
  * staged trace's end anchors are the delta between this and the passing
@@ -87,6 +101,7 @@ export class StepTraceSession {
87
101
  * propagate.
88
102
  */
89
103
  async begin() {
104
+ this.startedMs = Date.now();
90
105
  // Captured before any action for the write's start-path precondition, and
91
106
  // doubling as the replay decision's current path.
92
107
  this.startPath = await this.host.currentPath();
@@ -190,12 +205,26 @@ export class StepTraceSession {
190
205
  * anchor present again.
191
206
  */
192
207
  async endStateMatches(trace) {
193
- if (trace.endPath !== undefined) {
208
+ if (trace.endPath !== undefined && !(await this.pathSettles(trace.endPath)))
209
+ return false;
210
+ return verifyAnchors(this.host, trace.endAnchors ?? [], trace.endWaitMs);
211
+ }
212
+ /** Whether the current path becomes `endPath` within the settling backoff. */
213
+ async pathSettles(endPath) {
214
+ const startedMs = Date.now();
215
+ for (let attempt = 0;; attempt += 1) {
194
216
  const current = await this.host.currentPath();
195
- if (current !== undefined && !samePathname(current, trace.endPath))
217
+ if (current === undefined || samePathname(current, endPath))
218
+ return true;
219
+ const delay = END_PATH_DELAYS_MS[attempt];
220
+ if (delay === undefined ||
221
+ Date.now() - startedMs + delay > END_PATH_TIMEOUT_MS ||
222
+ this.host.remainingMs() <= delay ||
223
+ this.host.signal.aborted) {
196
224
  return false;
225
+ }
226
+ await sleep(delay, this.host.signal);
197
227
  }
198
- return verifyAnchors(this.host, trace.endAnchors ?? []);
199
228
  }
200
229
  selfFinalize(trace, outcome) {
201
230
  this.replayed = trace;
@@ -257,6 +286,9 @@ export class StepTraceSession {
257
286
  ...(this.startPath === undefined ? {} : { startPath: this.startPath }),
258
287
  ...(endPath === undefined ? {} : { endPath }),
259
288
  ...(endAnchors === undefined ? {} : { endAnchors }),
289
+ // What the live run needed to reach its end state, plus room for a
290
+ // slower day: the budget a replay waits for the anchors to return.
291
+ ...(endAnchors === undefined ? {} : { endWaitMs: Date.now() - this.startedMs + END_WAIT_MARGIN_MS }),
260
292
  });
261
293
  if (trace === undefined)
262
294
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"step-cache.js","sourceRoot":"","sources":["../../src/agent/step-cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step-cache.js","sourceRoot":"","sources":["../../src/agent/step-cache.ts"],"names":[],"mappings":"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"}