@trusty-squire/mcp 0.6.14-rc.7 → 0.6.14-rc.8

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.
@@ -13,6 +13,7 @@ export interface ApiClientConfig {
13
13
  agentSessionToken: string;
14
14
  fetch?: typeof fetch;
15
15
  agentIdentity?: string;
16
+ accountId?: string;
16
17
  }
17
18
  export interface ProvisionInput {
18
19
  service: string;
@@ -94,6 +95,50 @@ export declare class ApiClient {
94
95
  }>;
95
96
  cancelSubscription(id: string): Promise<unknown>;
96
97
  getUsage(): Promise<UsageResponse>;
98
+ uploadExtractFailure(input: {
99
+ service: string;
100
+ mcp_version: string;
101
+ url: string;
102
+ title: string;
103
+ step_label: string;
104
+ extract_reason: string;
105
+ candidates: ReadonlyArray<string>;
106
+ html: string;
107
+ screenshot_jpeg_base64?: string;
108
+ }): Promise<{
109
+ id: string;
110
+ }>;
111
+ listExtractFailures(limit?: number): Promise<{
112
+ snapshots: Array<{
113
+ id: string;
114
+ service: string;
115
+ mcp_version: string;
116
+ uploaded_at: string;
117
+ expires_at: string;
118
+ url: string;
119
+ title: string;
120
+ step_label: string;
121
+ extract_reason: string;
122
+ html_bytes: number;
123
+ screenshot_bytes: number;
124
+ }>;
125
+ }>;
126
+ getExtractFailure(id: string): Promise<{
127
+ id: string;
128
+ service: string;
129
+ mcp_version: string;
130
+ uploaded_at: string;
131
+ expires_at: string;
132
+ url: string;
133
+ title: string;
134
+ step_label: string;
135
+ extract_reason: string;
136
+ candidates: ReadonlyArray<string>;
137
+ html: string;
138
+ html_bytes: number;
139
+ screenshot_jpeg_base64: string | null;
140
+ screenshot_bytes: number;
141
+ }>;
97
142
  listServices(category?: string): Promise<{
98
143
  adapters: DirectoryEntry[];
99
144
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,44 @@ export class ApiClient {
56
56
  async getUsage() {
57
57
  return this.get("/v1/usage");
58
58
  }
59
+ // ── Extract-failure diagnostics ───────────────────────────
60
+ // Upload a DOM + screenshot snapshot from a universal-bot run
61
+ // where extractCredentials() returned null. Lives on the
62
+ // registry-api (not apps/api) because the diagnostic data is
63
+ // operator-facing, not a hot-path workflow. Best-effort: failures
64
+ // here MUST NOT abort the signup. Caller wraps in try/catch.
65
+ async uploadExtractFailure(input) {
66
+ const url = `${this.config.registryBaseUrl}/v1/extract-failures`;
67
+ const res = await this.fetchImpl(url, {
68
+ method: "POST",
69
+ headers: this.headers(),
70
+ body: JSON.stringify(input),
71
+ });
72
+ return (await this.handleResponse(res, "POST", "/v1/extract-failures"));
73
+ }
74
+ // List this account's recent extract-failure snapshots. Returns
75
+ // metadata only — no HTML, no screenshot bytes. Call
76
+ // getExtractFailure(id) to fetch the body of a specific snapshot.
77
+ async listExtractFailures(limit = 20) {
78
+ const url = `${this.config.registryBaseUrl}/v1/extract-failures?limit=${encodeURIComponent(String(limit))}`;
79
+ const res = await this.fetchImpl(url, {
80
+ method: "GET",
81
+ headers: this.headers(),
82
+ });
83
+ return (await this.handleResponse(res, "GET", "/v1/extract-failures"));
84
+ }
85
+ // Fetch the full body of one snapshot: decompressed HTML + base64
86
+ // JPEG screenshot, plus all metadata. Used by the diagnostic MCP
87
+ // tool so a coding agent can pull the DOM into its context window
88
+ // and write a targeted fix in the same conversation.
89
+ async getExtractFailure(id) {
90
+ const url = `${this.config.registryBaseUrl}/v1/extract-failures/${encodeURIComponent(id)}`;
91
+ const res = await this.fetchImpl(url, {
92
+ method: "GET",
93
+ headers: this.headers(),
94
+ });
95
+ return (await this.handleResponse(res, "GET", `/v1/extract-failures/${id}`));
96
+ }
59
97
  // ── Service directory ─────────────────────────────────────
60
98
  async listServices(category) {
61
99
  const url = category !== undefined
@@ -74,6 +112,11 @@ export class ApiClient {
74
112
  if (this.config.agentIdentity !== undefined) {
75
113
  h["X-Squire-Agent-Identity"] = this.config.agentIdentity;
76
114
  }
115
+ // The registry-api scopes its reads to `x-account-id`. Main API
116
+ // ignores unknown headers, so it's safe to always send.
117
+ if (this.config.accountId !== undefined) {
118
+ h["x-account-id"] = this.config.accountId;
119
+ }
77
120
  return h;
78
121
  }
79
122
  async get(path) {
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,16 @@ export interface SignupTask {
37
37
  allowExtraOAuthScopes?: readonly string[] | undefined;
38
38
  allowBlindOAuthConsent?: boolean | undefined;
39
39
  }
40
+ export type ExtractFailureUploader = (input: {
41
+ service: string;
42
+ url: string;
43
+ title: string;
44
+ step_label: string;
45
+ extract_reason: string;
46
+ candidates: ReadonlyArray<string>;
47
+ html: string;
48
+ screenshot_jpeg_base64?: string;
49
+ }) => Promise<void>;
40
50
  export interface SignupResult {
41
51
  success: boolean;
42
52
  credentials?: {
@@ -153,7 +163,11 @@ export declare class SignupAgent {
153
163
  private buildInventory;
154
164
  private resolveOAuthCandidates;
155
165
  private verifyPlan;
156
- constructor(browser: BrowserController, llm?: LLMClient | LLMPair);
166
+ private readonly extractFailureUploader?;
167
+ private currentService;
168
+ constructor(browser: BrowserController, llm?: LLMClient | LLMPair, opts?: {
169
+ extractFailureUploader?: ExtractFailureUploader;
170
+ });
157
171
  get backends(): readonly string[];
158
172
  private callLLM;
159
173
  private callLLMInner;
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/bot/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/bot/agent.ts"],"names":[],"mappings":"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"}
package/dist/bot/agent.js CHANGED
@@ -970,8 +970,13 @@ export class SignupAgent {
970
970
  steps.push(`Dismissed cookie consent: "${dismissed}"`);
971
971
  }
972
972
  await saveDebugSnapshot(this.browser, "before-fill");
973
- const state = await this.browser.getState();
974
- const inventory = await this.buildInventory(steps, oauthCandidates);
973
+ // PERF: getState() (page.content + title + screenshot) and
974
+ // extractInteractiveElements (DOM walk) are independent
975
+ // Playwright calls — fire them in parallel.
976
+ const [state, inventory] = await Promise.all([
977
+ this.browser.getState(),
978
+ this.buildInventory(steps, oauthCandidates),
979
+ ]);
975
980
  // OAuth-first (T6/T13 + auto-prefer): when the page carries a
976
981
  // "Sign in with <provider>" affordance for a provider the bot can
977
982
  // use, that button unconditionally outranks any form field — hand
@@ -1155,7 +1160,10 @@ export class SignupAgent {
1155
1160
  steps.push(`⚠ submit click failed: ${reason}`);
1156
1161
  return { kind: "submit_failed", reason };
1157
1162
  }
1158
- await this.browser.wait(5);
1163
+ // PERF: 5s was overcautious — runCaptchaGate has its own wait
1164
+ // for the captcha widget to render, and waitForFormReady at
1165
+ // the next planner iteration handles SPA settle.
1166
+ await this.browser.wait(2);
1159
1167
  const postGate = await this.runCaptchaGate("Post-submit", steps);
1160
1168
  if (postGate.blocked)
1161
1169
  return { kind: "captcha_blocked", captchaKind: postGate.kind };
@@ -1307,7 +1315,16 @@ export class SignupAgent {
1307
1315
  }
1308
1316
  return misses.length > 0 ? misses.join(", ") : null;
1309
1317
  }
1310
- constructor(browser, llm) {
1318
+ // Diagnostic uploader — best-effort. When set, the post-verify
1319
+ // loop uploads the current DOM + screenshot to the registry-api
1320
+ // after a failed extract pass, so UI-shape regressions can be
1321
+ // diagnosed without users needing to configure debug env vars.
1322
+ // Wired from the MCP layer; undefined in unit-test contexts.
1323
+ extractFailureUploader;
1324
+ // Set per-task in signup(). Lets the uploader know which service
1325
+ // was being provisioned without threading it through every call.
1326
+ currentService = "";
1327
+ constructor(browser, llm, opts = {}) {
1311
1328
  this.browser = browser;
1312
1329
  if (llm === undefined) {
1313
1330
  this.llmPair = pickLLMPair({ preferCheap: PREFER_CHEAP_LLM });
@@ -1322,6 +1339,9 @@ export class SignupAgent {
1322
1339
  // case. Tests and the MCP-Sampling future path use this.
1323
1340
  this.llmPair = { primary: llm, premium: null };
1324
1341
  }
1342
+ if (opts.extractFailureUploader !== undefined) {
1343
+ this.extractFailureUploader = opts.extractFailureUploader;
1344
+ }
1325
1345
  }
1326
1346
  // Read-only view of how many calls landed on which backend. Exported
1327
1347
  // through SignupResult.llm_backends so tests and ops can verify the
@@ -1433,6 +1453,10 @@ export class SignupAgent {
1433
1453
  // (Google number-match etc.). Without it, the run still works —
1434
1454
  // steps are just only visible in the final result.
1435
1455
  const steps = task.stepsSink ?? [];
1456
+ // Stash the service name so the diagnostic uploader (called from
1457
+ // deep inside postVerifyLoop after a failed extract) can label
1458
+ // the snapshot without us threading task through every method.
1459
+ this.currentService = task.service;
1436
1460
  const rawTimeout = Number(process.env.UNIVERSAL_BOT_RUN_TIMEOUT_MS);
1437
1461
  const timeoutMs = Number.isFinite(rawTimeout) && rawTimeout > 0 ? rawTimeout : 600_000;
1438
1462
  let timer;
@@ -1508,7 +1532,9 @@ export class SignupAgent {
1508
1532
  }
1509
1533
  steps.push(`Navigating to ${signupUrl}`);
1510
1534
  await this.browser.goto(signupUrl);
1511
- await this.browser.wait(2);
1535
+ // PERF: goto() awaits domcontentloaded; the subsequent
1536
+ // waitForFormReady in planExecuteWithRetry handles SPA settle.
1537
+ // No need for a blind 2s dwell here.
1512
1538
  // When we *guessed* (no signup_url provided) and the page after
1513
1539
  // load doesn't look like a signup page — no inputs, no OAuth
1514
1540
  // affordance, or an obvious 404/error title — fall back to the
@@ -1530,7 +1556,8 @@ export class SignupAgent {
1530
1556
  steps.push(`${guessed} didn't look like a signup page — searching for the real one`);
1531
1557
  const fallbackSearch = `https://www.google.com/search?q=${encodeURIComponent(`${task.service} signup`)}`;
1532
1558
  await this.browser.goto(fallbackSearch);
1533
- await this.browser.wait(2);
1559
+ // PERF: domcontentloaded from goto() + findSignupLink reads
1560
+ // the DOM itself — no blind dwell needed.
1534
1561
  signupUrl = fallbackSearch;
1535
1562
  }
1536
1563
  if (signupUrl !== guessed || isGoogleSearchUrl(signupUrl)) {
@@ -1542,7 +1569,7 @@ export class SignupAgent {
1542
1569
  await this.runPrewarm(found, steps);
1543
1570
  steps.push(`Found signup link: ${found}`);
1544
1571
  await this.browser.goto(found);
1545
- await this.browser.wait(2);
1572
+ // PERF: planner loop's waitForFormReady is next; no dwell.
1546
1573
  }
1547
1574
  else {
1548
1575
  // BUG-1 GUARD: findSignupLink filters off-domain candidates
@@ -1703,7 +1730,10 @@ export class SignupAgent {
1703
1730
  if (verifyLink !== null) {
1704
1731
  steps.push(`Following verification link: ${verifyLink}`);
1705
1732
  await this.browser.goto(verifyLink);
1706
- await this.browser.wait(3);
1733
+ // PERF: a 1s settle is enough for the verify landing
1734
+ // page to commit cookies + render the post-verify
1735
+ // dashboard. Previous 3s was over-cautious.
1736
+ await this.browser.wait(1);
1707
1737
  await saveDebugSnapshot(this.browser, "after-verify");
1708
1738
  // Try extracting first — many services drop the API key
1709
1739
  // straight onto the landing page after verification.
@@ -2084,7 +2114,7 @@ Output rules:
2084
2114
  7-15 char handle.`;
2085
2115
  const hintLine = input.hint !== undefined ? `\nHint: ${input.hint}` : "";
2086
2116
  const userBlocks = [
2087
- { kind: "image", media_type: "image/png", data_base64: input.screenshot },
2117
+ { kind: "image", media_type: "image/jpeg", data_base64: input.screenshot },
2088
2118
  {
2089
2119
  kind: "text",
2090
2120
  text: `Service: ${input.service}
@@ -2206,8 +2236,11 @@ ${formatInventory(input.inventory)}`,
2206
2236
  let state;
2207
2237
  let inventory;
2208
2238
  try {
2209
- state = await this.browser.getState();
2210
- inventory = await this.buildInventory(args.steps, undefined, 80);
2239
+ // PERF: parallel getState + inventory (independent calls).
2240
+ [state, inventory] = await Promise.all([
2241
+ this.browser.getState(),
2242
+ this.buildInventory(args.steps, undefined, 80),
2243
+ ]);
2211
2244
  }
2212
2245
  catch (err) {
2213
2246
  args.steps.push(`Post-verify round ${round}: page was mid-navigation ` +
@@ -2335,6 +2368,33 @@ ${formatInventory(input.inventory)}`,
2335
2368
  credentials = await this.extractCredentials();
2336
2369
  if (credentials.api_key === undefined) {
2337
2370
  consecutiveFailedExtracts += 1;
2371
+ // Best-effort diagnostic upload: when extract returns
2372
+ // null despite the planner asserting a credential is
2373
+ // visible, capture the DOM + screenshot so the UI shape
2374
+ // can be inspected later. Wrapped tight — any failure
2375
+ // here MUST NOT abort the post-verify loop.
2376
+ if (this.extractFailureUploader !== undefined) {
2377
+ void (async () => {
2378
+ try {
2379
+ const snapshot = await this.browser.getState();
2380
+ const candidates = await this.browser.extractCredentialCandidates();
2381
+ await this.extractFailureUploader({
2382
+ service: this.currentService,
2383
+ url: snapshot.url,
2384
+ title: snapshot.title,
2385
+ step_label: `post-verify round ${round + 1}/${args.maxRounds}: extract`,
2386
+ extract_reason: nextStep.reason,
2387
+ candidates,
2388
+ html: snapshot.html,
2389
+ screenshot_jpeg_base64: snapshot.screenshot,
2390
+ });
2391
+ args.steps.push(`Diagnostic: uploaded extract-failure snapshot (post-verify round ${round + 1}).`);
2392
+ }
2393
+ catch {
2394
+ // Silent — diagnostic uploads are best-effort.
2395
+ }
2396
+ })();
2397
+ }
2338
2398
  // Two consecutive failed extracts on a DOM the planner
2339
2399
  // keeps quoting a token from means the value's shape is
2340
2400
  // not in our regex library (Railway: bare UUID; some
@@ -2420,7 +2480,7 @@ ${formatInventory(input.inventory)}`,
2420
2480
  }
2421
2481
  else if (nextStep.kind === "navigate") {
2422
2482
  await this.browser.goto(nextStep.url);
2423
- await this.browser.wait(3);
2483
+ // PERF: next round opens with waitForFormReady; no blind dwell.
2424
2484
  }
2425
2485
  else if (nextStep.kind === "wait") {
2426
2486
  await this.browser.wait(Math.min(nextStep.seconds, 15));
@@ -2556,7 +2616,7 @@ ${loginGuidance}
2556
2616
  - On a form with MULTIPLE permission rows (Sentry: Project, Team, Member, Issue, Event, Release, Organization), set EACH ONE before clicking Create. One step per turn — return to this turn-by-turn until every row is set.
2557
2617
  - Round ${input.round + 1} of ${input.maxRounds}. Prefer "done" if you're not making progress.`;
2558
2618
  const userBlocks = [
2559
- { kind: "image", media_type: "image/png", data_base64: input.state.screenshot },
2619
+ { kind: "image", media_type: "image/jpeg", data_base64: input.state.screenshot },
2560
2620
  {
2561
2621
  kind: "text",
2562
2622
  text: `Service: ${input.service}