donobu 3.5.2 → 3.5.3

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.
@@ -85,10 +85,14 @@ class ReplayableInteraction extends Tool_1.Tool {
85
85
  const page = context.page.current;
86
86
  const locators = await ReplayableInteraction.getLocatorsOrderedByMatchCount(page, parameters.selector, ReplayableInteraction.MAX_LOCATOR_MATCH_COUNT, parameters.selector.element.length);
87
87
  if (!locators.length) {
88
+ const attemptedSelectors = parameters.selector.element;
88
89
  return {
89
90
  isSuccessful: false,
90
- forLlm: 'FAILED! Unable to resolve HTML element to operate with.',
91
- metadata: null,
91
+ forLlm: `FAILED! Unable to resolve HTML element to operate with. No matches for selector(s): ${attemptedSelectors.join(', ')}.`,
92
+ metadata: {
93
+ selector: parameters.selector,
94
+ attemptedSelectors: attemptedSelectors,
95
+ },
92
96
  };
93
97
  }
94
98
  return this.callCore(context, parameters, locators, parameters.selector);
@@ -120,8 +124,11 @@ class ReplayableInteraction extends Tool_1.Tool {
120
124
  if (!locatorData || !locatorData.locators.length) {
121
125
  return {
122
126
  isSuccessful: false,
123
- forLlm: 'FAILED! Unable to resolve HTML element to operate with.',
124
- metadata: null,
127
+ forLlm: `FAILED! Unable to resolve HTML element for annotation '${parameters.annotation}'.`,
128
+ metadata: {
129
+ annotation: parameters.annotation,
130
+ attemptedSelector: elementSelector,
131
+ },
125
132
  };
126
133
  }
127
134
  return this.callCore(context, parameters, locatorData.locators.map((locator) => {
@@ -136,9 +143,20 @@ class ReplayableInteraction extends Tool_1.Tool {
136
143
  const coreParameters = this.coreSchema.parse(parameters);
137
144
  const timeoutMilliseconds = 1000;
138
145
  const page = context.page.current;
146
+ const selectorAttempts = [];
139
147
  for (const selectorLocator of selectorLocators) {
148
+ const attemptSummary = {
149
+ selector: selectorLocator.selector,
150
+ matchCount: null,
151
+ errors: [],
152
+ };
153
+ selectorAttempts.push(attemptSummary);
140
154
  try {
141
155
  const count = await selectorLocator.locator.count();
156
+ attemptSummary.matchCount = count;
157
+ if (count === 0) {
158
+ attemptSummary.errors.push('Locator resolved to 0 elements before interaction.');
159
+ }
142
160
  for (let i = 0; i < count; ++i) {
143
161
  try {
144
162
  const originalLocator = selectorLocator.locator.nth(i);
@@ -192,6 +210,7 @@ class ReplayableInteraction extends Tool_1.Tool {
192
210
  throw elementError;
193
211
  }
194
212
  Logger_1.appLogger.error(`Failed to interact with element '${i}' for selector '${selectorLocator.selector}' due to exception, will fail over to remaining elements (if any)`, elementError);
213
+ attemptSummary.errors.push(`element ${i}: ${ReplayableInteraction.describeError(elementError)}`);
195
214
  }
196
215
  }
197
216
  }
@@ -200,14 +219,51 @@ class ReplayableInteraction extends Tool_1.Tool {
200
219
  throw locatorError;
201
220
  }
202
221
  Logger_1.appLogger.error(`Failed to interact with selector '${selectorLocator.selector}' due to exception, will fail over to remaining selectors (if any)`, locatorError);
222
+ attemptSummary.errors.push(`selector error: ${ReplayableInteraction.describeError(locatorError)}`);
203
223
  }
204
224
  }
205
225
  return {
206
226
  isSuccessful: false,
207
- forLlm: 'FAILED! Unable to apply operation.',
208
- metadata: null,
227
+ forLlm: `FAILED! Unable to apply operation. ${ReplayableInteraction.summarizeAttemptsForLlm(selectorAttempts)}`,
228
+ metadata: {
229
+ selectorForReplay: selectorForReplay,
230
+ selectorAttempts: selectorAttempts,
231
+ },
209
232
  };
210
233
  }
234
+ static describeError(error) {
235
+ if (error instanceof Error) {
236
+ return `${error.name}: ${error.message}`;
237
+ }
238
+ if (typeof error === 'string') {
239
+ return error;
240
+ }
241
+ try {
242
+ return JSON.stringify(error);
243
+ }
244
+ catch {
245
+ return String(error);
246
+ }
247
+ }
248
+ static summarizeAttemptsForLlm(attempts) {
249
+ if (!attempts.length) {
250
+ return 'No selector attempts were recorded.';
251
+ }
252
+ const maxAttemptsToReport = 3;
253
+ const summarized = attempts.slice(0, maxAttemptsToReport).map((attempt) => {
254
+ const matchCount = attempt.matchCount === null ? 'unknown' : attempt.matchCount;
255
+ const errors = attempt.errors.length > 0
256
+ ? ` errors: ${attempt.errors
257
+ .slice(0, 2)
258
+ .join('; ')}${attempt.errors.length > 2 ? '...' : ''}`
259
+ : '';
260
+ return `'${attempt.selector}' (matches=${matchCount}${errors})`;
261
+ });
262
+ const trimmed = attempts.length > maxAttemptsToReport
263
+ ? ' (trimmed to first attempts)'
264
+ : '';
265
+ return `Tried ${attempts.length} selector(s): ${summarized.join(' | ')}${trimmed}.`;
266
+ }
211
267
  /**
212
268
  * Retrieves a list of {@link Locator} objects based on the provided selector
213
269
  * candidates, ordered by their match count in ascending order. If the match
@@ -1 +1 @@
1
- {"version":3,"file":"ReplayableInteraction.js","sourceRoot":"","sources":["../../../src/tools/ReplayableInteraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReplayableInteraction.js","sourceRoot":"","sources":["../../../src/tools/ReplayableInteraction.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,13 @@ export declare class FilePageAiCache implements PageAiCache {
63
63
  * idempotent even when multiple processes start simultaneously.
64
64
  */
65
65
  private ensureCacheFileExists;
66
+ /**
67
+ * Reads and evaluates the cache file without touching Node's module cache.
68
+ * We re-run the file in a fresh CommonJS wrapper on every call so parallel
69
+ * writers cannot serve stale data to parallel readers (a risk when relying
70
+ * on dynamic import cache-busting tokens).
71
+ */
72
+ private loadCacheModule;
66
73
  private readCacheFile;
67
74
  private writeCacheFile;
68
75
  private withCacheLock;
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/lib/pageAi/cache.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACvC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG;IAC9C,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,gBAAgB,GAAG;IAC1D,GAAG,EAAE,mBAAmB,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,kBAAkB,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAChC,OAAO,EAAE,2BAA2B,KACjC,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAC;IACrE,GAAG,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC1C;AAwFD,eAAO,MAAM,iBAAiB,GAAI,SAAS,gBAAgB,EAAE,KAAG,MAU/D,CAAC;AAEF;;;GAGG;AACH,qBAAa,eAAgB,YAAW,WAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAAb,aAAa,EAAE,MAAM;IAE5C,GAAG,CACd,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC;IAahC,GAAG,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB3C,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB1D;;;OAGG;IACU,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAarD;;;OAGG;YACW,qBAAqB;YAarB,aAAa;YAgDb,cAAc;YAQd,aAAa;CA4B5B;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IACrD,OAAO,CAAC,KAAK,CAA+B;gBAG1C,eAAe,GAAE,gBAAgB,EAAE,GAAG,mBAAwB;IAOnD,GAAG,CACd,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC;IAQhC,GAAG,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB3C,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB7C,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAKtD"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/lib/pageAi/cache.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACvC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG;IAC9C,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,gBAAgB,GAAG;IAC1D,GAAG,EAAE,mBAAmB,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,kBAAkB,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAChC,OAAO,EAAE,2BAA2B,KACjC,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAC;IACrE,GAAG,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC1C;AAwGD,eAAO,MAAM,iBAAiB,GAAI,SAAS,gBAAgB,EAAE,KAAG,MAU/D,CAAC;AAEF;;;GAGG;AACH,qBAAa,eAAgB,YAAW,WAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAAb,aAAa,EAAE,MAAM;IAE5C,GAAG,CACd,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC;IAehC,GAAG,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB3C,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IA2B1D;;;OAGG;IACU,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAarD;;;OAGG;YACW,qBAAqB;IAanC;;;;;OAKG;YACW,eAAe;YA8Bf,aAAa;YAgDb,cAAc;YAUd,aAAa;CA8B5B;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IACrD,OAAO,CAAC,KAAK,CAA+B;gBAG1C,eAAe,GAAE,gBAAgB,EAAE,GAAG,mBAAwB;IASnD,GAAG,CACd,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC;IAUhC,GAAG,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB3C,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB7C,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAKtD"}
@@ -37,20 +37,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.InMemoryPageAiCache = exports.FilePageAiCache = exports.renderCacheModule = void 0;
40
- const node_url_1 = require("node:url");
40
+ const node_module_1 = require("node:module");
41
+ const node_path_1 = __importDefault(require("node:path"));
41
42
  const node_vm_1 = require("node:vm");
42
43
  const promises_1 = __importDefault(require("fs/promises"));
43
44
  const LockFile = __importStar(require("proper-lockfile"));
44
45
  const CodeGenerator_1 = require("../../codegen/CodeGenerator");
45
- const areCacheCollectionsEqual = (left, right) => JSON.stringify(left) === JSON.stringify(right);
46
+ const areCacheCollectionsEqual = (left, right) =>
47
+ // We serialize to JSON rather than deep-walking to keep the comparison short
48
+ // and avoid surprises from prototype differences.
49
+ JSON.stringify(left) === JSON.stringify(right);
50
+ // Comparison helper that keeps cache key equality stable even when the schema
51
+ // or tool list objects are different references but deeply identical.
46
52
  const pageAiCacheKeysMatch = (left, right) => left.pageUrl === right.pageUrl &&
47
53
  left.instruction === right.instruction &&
48
54
  areCacheCollectionsEqual(left.schema, right.schema) &&
49
55
  areCacheCollectionsEqual(left.allowedTools, right.allowedTools) &&
50
56
  left.maxToolCalls === right.maxToolCalls;
51
- const runnerContext = (0, node_vm_1.createContext)({});
57
+ /**
58
+ * Turns a cached stringified function into an executable runner. We reuse a
59
+ * fresh VM context per entry to prevent any globals created by one cached
60
+ * function from leaking into another.
61
+ */
52
62
  const compileRunSource = (runSource) => {
53
63
  try {
64
+ const runnerContext = (0, node_vm_1.createContext)({});
54
65
  const script = new node_vm_1.Script(`(${runSource})`);
55
66
  const runner = script.runInContext(runnerContext);
56
67
  if (typeof runner !== 'function') {
@@ -66,10 +77,12 @@ const compileRunSource = (runSource) => {
66
77
  throw evaluationError;
67
78
  }
68
79
  };
80
+ // Hydrates the serialized entry with a callable runner.
69
81
  const materializeEntry = (entry) => ({
70
82
  ...entry,
71
83
  run: compileRunSource(entry.runSource),
72
84
  });
85
+ // Drops the live runner to produce a JSON-safe shape for storage/serialization.
73
86
  const stripRunner = (entry) => ({
74
87
  pageUrl: entry.pageUrl,
75
88
  instruction: entry.instruction,
@@ -80,10 +93,13 @@ const stripRunner = (entry) => ({
80
93
  maxToolCalls: entry.maxToolCalls,
81
94
  runSource: entry.runSource,
82
95
  });
96
+ // Returns a defensive copy with the same runner reference so callers cannot
97
+ // mutate our in-memory cache accidentally.
83
98
  const cloneEntryWithRunner = (entry) => ({
84
99
  ...stripRunner(entry),
85
100
  run: entry.run,
86
101
  });
102
+ // Serializes a cache entry into inline JS that will be emitted to disk.
87
103
  const serializeEntry = (entry) => {
88
104
  const instructionLiteral = entry.instruction === null ? 'null' : JSON.stringify(entry.instruction);
89
105
  const schemaLiteral = entry.schema === null ? 'null' : JSON.stringify(entry.schema);
@@ -99,6 +115,8 @@ const serializeEntry = (entry) => {
99
115
  ];
100
116
  return `{ ${parts.join(', ')} }`;
101
117
  };
118
+ // Emits the cache file as a CommonJS module matching what the runtime loader
119
+ // expects. This keeps the on-disk format aligned between generator and reader.
102
120
  const renderCacheModule = (entries) => {
103
121
  const serializedEntries = entries.map(serializeEntry).join(', ');
104
122
  return `/**
@@ -120,6 +138,8 @@ class FilePageAiCache {
120
138
  this.cacheFilepath = cacheFilepath;
121
139
  }
122
140
  async get(key) {
141
+ // Reads happen under the same lock as writes to avoid observing
142
+ // partially-written files on platforms without atomic replace semantics.
123
143
  return this.withCacheLock(async (cache) => {
124
144
  const matchingEntry = cache.find((entry) => pageAiCacheKeysMatch(entry, key));
125
145
  return {
@@ -129,6 +149,8 @@ class FilePageAiCache {
129
149
  });
130
150
  }
131
151
  async put(entry) {
152
+ // Upsert logic is delegated into the locked section to keep the file and
153
+ // in-memory view consistent for all concurrent callers.
132
154
  await this.withCacheLock(async (cache) => {
133
155
  const existingIndex = cache.findIndex((candidate) => pageAiCacheKeysMatch(candidate, entry));
134
156
  const materializedEntry = materializeEntry(entry);
@@ -143,6 +165,8 @@ class FilePageAiCache {
143
165
  });
144
166
  }
145
167
  async delete(key) {
168
+ // Deletion is also serialized via the lock to avoid interleaving with
169
+ // writes from other workers.
146
170
  return this.withCacheLock(async (cache) => {
147
171
  const targetIndex = cache.findIndex((entry) => pageAiCacheKeysMatch(entry, key));
148
172
  if (targetIndex === -1) {
@@ -193,13 +217,38 @@ class FilePageAiCache {
193
217
  }
194
218
  }
195
219
  }
220
+ /**
221
+ * Reads and evaluates the cache file without touching Node's module cache.
222
+ * We re-run the file in a fresh CommonJS wrapper on every call so parallel
223
+ * writers cannot serve stale data to parallel readers (a risk when relying
224
+ * on dynamic import cache-busting tokens).
225
+ */
226
+ async loadCacheModule() {
227
+ const source = await promises_1.default.readFile(this.cacheFilepath, 'utf-8');
228
+ const cacheRequire = (0, node_module_1.createRequire)(this.cacheFilepath);
229
+ const module = { exports: {} };
230
+ const sandbox = (0, node_vm_1.createContext)({
231
+ module,
232
+ exports: module.exports,
233
+ require: cacheRequire,
234
+ __filename: this.cacheFilepath,
235
+ __dirname: node_path_1.default.dirname(this.cacheFilepath),
236
+ });
237
+ // Mirror Node's CommonJS wrapper so `module.exports` and `require` behave
238
+ // exactly as they would when executed normally from disk.
239
+ const script = new node_vm_1.Script(`(function (exports, require, module, __filename, __dirname) {${source}\n})`, { filename: this.cacheFilepath });
240
+ const runner = script.runInContext(sandbox);
241
+ runner(module.exports, cacheRequire, module, this.cacheFilepath, node_path_1.default.dirname(this.cacheFilepath));
242
+ return module.exports;
243
+ }
196
244
  async readCacheFile() {
197
245
  try {
198
- const fileUrl = (0, node_url_1.pathToFileURL)(this.cacheFilepath);
199
- const cacheModule = await import(`${fileUrl.href}?cacheBust=${Date.now()}`);
200
- const exported = (cacheModule.default ?? cacheModule);
246
+ const cacheModule = await this.loadCacheModule();
247
+ const exported = (cacheModule.default ??
248
+ cacheModule);
201
249
  const caches = Array.isArray(exported.caches) ? exported.caches : [];
202
250
  return caches.map((entry) => {
251
+ // Input validation keeps bad cache writes from crashing consumers.
203
252
  if (typeof entry.run !== 'function') {
204
253
  throw new Error(`Invalid cache entry: run must be a function for ${entry.pageUrl ?? 'unknown page'}.`);
205
254
  }
@@ -226,17 +275,22 @@ class FilePageAiCache {
226
275
  }
227
276
  catch (error) {
228
277
  if (error.code === 'ERR_MODULE_NOT_FOUND' || error.code === 'ENOENT') {
278
+ // Cache missing is a valid cold-start scenario; treat it as empty.
229
279
  return [];
230
280
  }
231
281
  throw error;
232
282
  }
233
283
  }
234
284
  async writeCacheFile(cache) {
285
+ // All writes funnel through here so we can pretty-print once and keep
286
+ // the on-disk schema in sync with the generator format.
235
287
  const serialized = cache.map((entry) => stripRunner(entry));
236
288
  const prettified = await (0, CodeGenerator_1.prettifyCode)((0, exports.renderCacheModule)(serialized));
237
289
  await promises_1.default.writeFile(this.cacheFilepath, prettified, 'utf-8');
238
290
  }
239
291
  async withCacheLock(operation) {
292
+ // Acquire the OS-level lock around the entire read-modify-write to keep
293
+ // inter-process access linearizable.
240
294
  await this.ensureCacheFileExists();
241
295
  const release = await LockFile.lock(this.cacheFilepath, {
242
296
  retries: {
@@ -266,14 +320,19 @@ exports.FilePageAiCache = FilePageAiCache;
266
320
  */
267
321
  class InMemoryPageAiCache {
268
322
  constructor(initialContents = []) {
323
+ // The constructor accepts either the raw caches array or the on-disk
324
+ // module shape to make tests less picky about input format.
269
325
  const entries = 'caches' in initialContents ? initialContents.caches : initialContents;
270
326
  this.cache = entries.map((entry) => materializeEntry(entry));
271
327
  }
272
328
  async get(key) {
329
+ // In-memory variant does not need locking; we still clone on return to
330
+ // protect internal state from callers mutating entries.
273
331
  const matchingEntry = this.cache.find((entry) => pageAiCacheKeysMatch(entry, key));
274
332
  return matchingEntry ? cloneEntryWithRunner(matchingEntry) : null;
275
333
  }
276
334
  async put(entry) {
335
+ // Upsert in memory mirrors the file-backed logic for parity.
277
336
  const materialized = materializeEntry(entry);
278
337
  const existingIndex = this.cache.findIndex((candidate) => pageAiCacheKeysMatch(candidate, entry));
279
338
  if (existingIndex === -1) {
@@ -285,6 +344,8 @@ class InMemoryPageAiCache {
285
344
  this.cache = nextCache;
286
345
  }
287
346
  async delete(key) {
347
+ // Simple array removal; returns false when nothing was removed to keep
348
+ // parity with the file-backed API surface.
288
349
  const targetIndex = this.cache.findIndex((entry) => pageAiCacheKeysMatch(entry, key));
289
350
  if (targetIndex === -1) {
290
351
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/lib/pageAi/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/lib/pageAi/cache.ts"],"names":[],"mappings":"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"}
@@ -99,6 +99,8 @@ export declare abstract class ReplayableInteraction<CoreSchema extends z.ZodObje
99
99
  */
100
100
  protected abstract invoke(context: ToolCallContext, parameters: z.infer<CoreSchema>, element: ElementHandle<HTMLElement | SVGElement>): Promise<string>;
101
101
  private callCore;
102
+ private static describeError;
103
+ private static summarizeAttemptsForLlm;
102
104
  /**
103
105
  * Retrieves a list of {@link Locator} objects based on the provided selector
104
106
  * candidates, ordered by their match count in ascending order. If the match
@@ -1 +1 @@
1
- {"version":3,"file":"ReplayableInteraction.d.ts","sourceRoot":"","sources":["../../src/tools/ReplayableInteraction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI/D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB;;;;;iBAG9B,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB;;;;iBAQhC,CAAC;AAEH;;GAEG;AACH,KAAK,eAAe,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,8BAAsB,qBAAqB,CACzC,UAAU,SAAS,CAAC,CAAC,SAAS,EAC9B,YAAY,SAAS,OAAO,mBAAmB,EAC/C,SAAS,SAAS,OAAO,qBAAqB,CAC9C,SAAQ,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC;aAOnB,UAAU,EAAE,UAAU;IANxC,gBAAuB,sBAAsB,KAAK;IAClD,gBAAuB,uBAAuB,KAAK;gBAGjD,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACH,UAAU,EAAE,UAAU,EACtC,WAAW,EAAE,YAAY,EACzB,iBAAiB,EAAE,SAAS,EAC5B,WAAW,UAAQ;IAKC,IAAI,CACxB,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,GAChC,OAAO,CAAC,cAAc,CAAC;IAoBb,WAAW,CACtB,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAC7B,OAAO,CAAC,cAAc,CAAC;IA2D1B;;;;;;;;;OASG;IACH,SAAS,CAAC,QAAQ,CAAC,MAAM,CACvB,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAC/B,OAAO,EAAE,aAAa,CAAC,WAAW,GAAG,UAAU,CAAC,GAC/C,OAAO,CAAC,MAAM,CAAC;YAEJ,QAAQ;IA4GtB;;;;;;;;;;;;;;;;;OAiBG;WACiB,8BAA8B,CAChD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAC/C,oBAAoB,GAAE,MAAsD,EAC5E,oBAAoB,GAAE,MAAqD,GAC1E,OAAO,CAAC,eAAe,EAAE,CAAC;IA0G7B;;;OAGG;WACU,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA6IrE;;;;;;OAMG;IACH,MAAM,CAAC,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAoCtD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAShC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAKlC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;WACW,uBAAuB,CACnC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,qBAAqB,GAC7B,gBAAgB;CAiFpB"}
1
+ {"version":3,"file":"ReplayableInteraction.d.ts","sourceRoot":"","sources":["../../src/tools/ReplayableInteraction.ts"],"names":[],"mappings":"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"}
@@ -85,10 +85,14 @@ class ReplayableInteraction extends Tool_1.Tool {
85
85
  const page = context.page.current;
86
86
  const locators = await ReplayableInteraction.getLocatorsOrderedByMatchCount(page, parameters.selector, ReplayableInteraction.MAX_LOCATOR_MATCH_COUNT, parameters.selector.element.length);
87
87
  if (!locators.length) {
88
+ const attemptedSelectors = parameters.selector.element;
88
89
  return {
89
90
  isSuccessful: false,
90
- forLlm: 'FAILED! Unable to resolve HTML element to operate with.',
91
- metadata: null,
91
+ forLlm: `FAILED! Unable to resolve HTML element to operate with. No matches for selector(s): ${attemptedSelectors.join(', ')}.`,
92
+ metadata: {
93
+ selector: parameters.selector,
94
+ attemptedSelectors: attemptedSelectors,
95
+ },
92
96
  };
93
97
  }
94
98
  return this.callCore(context, parameters, locators, parameters.selector);
@@ -120,8 +124,11 @@ class ReplayableInteraction extends Tool_1.Tool {
120
124
  if (!locatorData || !locatorData.locators.length) {
121
125
  return {
122
126
  isSuccessful: false,
123
- forLlm: 'FAILED! Unable to resolve HTML element to operate with.',
124
- metadata: null,
127
+ forLlm: `FAILED! Unable to resolve HTML element for annotation '${parameters.annotation}'.`,
128
+ metadata: {
129
+ annotation: parameters.annotation,
130
+ attemptedSelector: elementSelector,
131
+ },
125
132
  };
126
133
  }
127
134
  return this.callCore(context, parameters, locatorData.locators.map((locator) => {
@@ -136,9 +143,20 @@ class ReplayableInteraction extends Tool_1.Tool {
136
143
  const coreParameters = this.coreSchema.parse(parameters);
137
144
  const timeoutMilliseconds = 1000;
138
145
  const page = context.page.current;
146
+ const selectorAttempts = [];
139
147
  for (const selectorLocator of selectorLocators) {
148
+ const attemptSummary = {
149
+ selector: selectorLocator.selector,
150
+ matchCount: null,
151
+ errors: [],
152
+ };
153
+ selectorAttempts.push(attemptSummary);
140
154
  try {
141
155
  const count = await selectorLocator.locator.count();
156
+ attemptSummary.matchCount = count;
157
+ if (count === 0) {
158
+ attemptSummary.errors.push('Locator resolved to 0 elements before interaction.');
159
+ }
142
160
  for (let i = 0; i < count; ++i) {
143
161
  try {
144
162
  const originalLocator = selectorLocator.locator.nth(i);
@@ -192,6 +210,7 @@ class ReplayableInteraction extends Tool_1.Tool {
192
210
  throw elementError;
193
211
  }
194
212
  Logger_1.appLogger.error(`Failed to interact with element '${i}' for selector '${selectorLocator.selector}' due to exception, will fail over to remaining elements (if any)`, elementError);
213
+ attemptSummary.errors.push(`element ${i}: ${ReplayableInteraction.describeError(elementError)}`);
195
214
  }
196
215
  }
197
216
  }
@@ -200,14 +219,51 @@ class ReplayableInteraction extends Tool_1.Tool {
200
219
  throw locatorError;
201
220
  }
202
221
  Logger_1.appLogger.error(`Failed to interact with selector '${selectorLocator.selector}' due to exception, will fail over to remaining selectors (if any)`, locatorError);
222
+ attemptSummary.errors.push(`selector error: ${ReplayableInteraction.describeError(locatorError)}`);
203
223
  }
204
224
  }
205
225
  return {
206
226
  isSuccessful: false,
207
- forLlm: 'FAILED! Unable to apply operation.',
208
- metadata: null,
227
+ forLlm: `FAILED! Unable to apply operation. ${ReplayableInteraction.summarizeAttemptsForLlm(selectorAttempts)}`,
228
+ metadata: {
229
+ selectorForReplay: selectorForReplay,
230
+ selectorAttempts: selectorAttempts,
231
+ },
209
232
  };
210
233
  }
234
+ static describeError(error) {
235
+ if (error instanceof Error) {
236
+ return `${error.name}: ${error.message}`;
237
+ }
238
+ if (typeof error === 'string') {
239
+ return error;
240
+ }
241
+ try {
242
+ return JSON.stringify(error);
243
+ }
244
+ catch {
245
+ return String(error);
246
+ }
247
+ }
248
+ static summarizeAttemptsForLlm(attempts) {
249
+ if (!attempts.length) {
250
+ return 'No selector attempts were recorded.';
251
+ }
252
+ const maxAttemptsToReport = 3;
253
+ const summarized = attempts.slice(0, maxAttemptsToReport).map((attempt) => {
254
+ const matchCount = attempt.matchCount === null ? 'unknown' : attempt.matchCount;
255
+ const errors = attempt.errors.length > 0
256
+ ? ` errors: ${attempt.errors
257
+ .slice(0, 2)
258
+ .join('; ')}${attempt.errors.length > 2 ? '...' : ''}`
259
+ : '';
260
+ return `'${attempt.selector}' (matches=${matchCount}${errors})`;
261
+ });
262
+ const trimmed = attempts.length > maxAttemptsToReport
263
+ ? ' (trimmed to first attempts)'
264
+ : '';
265
+ return `Tried ${attempts.length} selector(s): ${summarized.join(' | ')}${trimmed}.`;
266
+ }
211
267
  /**
212
268
  * Retrieves a list of {@link Locator} objects based on the provided selector
213
269
  * candidates, ordered by their match count in ascending order. If the match