@trusty-squire/mcp 1.1.28 → 1.1.29-rc.2

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 (86) hide show
  1. package/dist/api-client.d.ts +6 -0
  2. package/dist/api-client.d.ts.map +1 -1
  3. package/dist/api-client.js.map +1 -1
  4. package/dist/bot/act/act.d.ts.map +1 -1
  5. package/dist/bot/act/act.js +15 -11
  6. package/dist/bot/act/act.js.map +1 -1
  7. package/dist/bot/browser.d.ts +0 -29
  8. package/dist/bot/browser.d.ts.map +1 -1
  9. package/dist/bot/browser.js +2 -747
  10. package/dist/bot/browser.js.map +1 -1
  11. package/dist/bot/capture/capture.d.ts +7 -15
  12. package/dist/bot/capture/capture.d.ts.map +1 -1
  13. package/dist/bot/capture/capture.js +71 -253
  14. package/dist/bot/capture/capture.js.map +1 -1
  15. package/dist/bot/card-release-approval.d.ts.map +1 -1
  16. package/dist/bot/card-release-approval.js +11 -2
  17. package/dist/bot/card-release-approval.js.map +1 -1
  18. package/dist/bot/credential-capture.d.ts +10 -0
  19. package/dist/bot/credential-capture.d.ts.map +1 -1
  20. package/dist/bot/credential-capture.js +5 -0
  21. package/dist/bot/credential-capture.js.map +1 -1
  22. package/dist/bot/credential-shape.d.ts +0 -5
  23. package/dist/bot/credential-shape.d.ts.map +1 -1
  24. package/dist/bot/credential-shape.js +8 -132
  25. package/dist/bot/credential-shape.js.map +1 -1
  26. package/dist/bot/drive-feedback.d.ts +2 -8
  27. package/dist/bot/drive-feedback.d.ts.map +1 -1
  28. package/dist/bot/drive-feedback.js +7 -49
  29. package/dist/bot/drive-feedback.js.map +1 -1
  30. package/dist/bot/jev-client.d.ts +3 -0
  31. package/dist/bot/jev-client.d.ts.map +1 -1
  32. package/dist/bot/jev-client.js +14 -5
  33. package/dist/bot/jev-client.js.map +1 -1
  34. package/dist/bot/operate-drive.d.ts +13 -63
  35. package/dist/bot/operate-drive.d.ts.map +1 -1
  36. package/dist/bot/operate-drive.js +136 -592
  37. package/dist/bot/operate-drive.js.map +1 -1
  38. package/dist/bot/page-driver.js +1 -1
  39. package/dist/bot/page-driver.js.map +1 -1
  40. package/dist/bot/provision-session.d.ts +3 -1
  41. package/dist/bot/provision-session.d.ts.map +1 -1
  42. package/dist/bot/provision-session.js +1 -1
  43. package/dist/bot/provision-session.js.map +1 -1
  44. package/dist/bot/session/lifecycle.d.ts.map +1 -1
  45. package/dist/bot/session/lifecycle.js +14 -13
  46. package/dist/bot/session/lifecycle.js.map +1 -1
  47. package/dist/bot/skill-hint.d.ts.map +1 -1
  48. package/dist/bot/skill-hint.js +4 -3
  49. package/dist/bot/skill-hint.js.map +1 -1
  50. package/dist/install/broker-service.d.ts.map +1 -1
  51. package/dist/install/broker-service.js +13 -15
  52. package/dist/install/broker-service.js.map +1 -1
  53. package/dist/install/cli.d.ts.map +1 -1
  54. package/dist/install/cli.js +43 -32
  55. package/dist/install/cli.js.map +1 -1
  56. package/dist/install/connect-report.d.ts +7 -7
  57. package/dist/install/connect-report.d.ts.map +1 -1
  58. package/dist/install/connect-report.js +31 -25
  59. package/dist/install/connect-report.js.map +1 -1
  60. package/dist/server.d.ts.map +1 -1
  61. package/dist/server.js +42 -3
  62. package/dist/server.js.map +1 -1
  63. package/dist/tools/fetch-credential.d.ts.map +1 -1
  64. package/dist/tools/fetch-credential.js +3 -1
  65. package/dist/tools/fetch-credential.js.map +1 -1
  66. package/dist/tools/provision-drive-schema.d.ts +0 -1
  67. package/dist/tools/provision-drive-schema.d.ts.map +1 -1
  68. package/dist/tools/provision-drive-schema.js +125 -238
  69. package/dist/tools/provision-drive-schema.js.map +1 -1
  70. package/dist/tools/provision-drive.d.ts +217 -73
  71. package/dist/tools/provision-drive.d.ts.map +1 -1
  72. package/dist/tools/provision-drive.js +133 -180
  73. package/dist/tools/provision-drive.js.map +1 -1
  74. package/dist/tools/store-credential.d.ts.map +1 -1
  75. package/dist/tools/store-credential.js +5 -1
  76. package/dist/tools/store-credential.js.map +1 -1
  77. package/dist/tools/use-credential.js +2 -2
  78. package/package.json +1 -1
  79. package/dist/bot/credential-text.d.ts +0 -4
  80. package/dist/bot/credential-text.d.ts.map +0 -1
  81. package/dist/bot/credential-text.js +0 -296
  82. package/dist/bot/credential-text.js.map +0 -1
  83. package/dist/bot/extraction.d.ts +0 -18
  84. package/dist/bot/extraction.d.ts.map +0 -1
  85. package/dist/bot/extraction.js +0 -54
  86. package/dist/bot/extraction.js.map +0 -1
@@ -4,22 +4,13 @@ export interface ExtractResult {
4
4
  session_id: string;
5
5
  url: string;
6
6
  credentials: Record<string, string>;
7
- candidate_count: number;
8
- masked_remaining?: string[];
7
+ error?: string;
9
8
  }
10
- /** Labels of masked credential candidates that no readable value covers. A
11
- * masked display is only "remaining" when nothing readable was captured under
12
- * the same label: a page can show the created key in clear while still carrying
13
- * a masked copy — or a mask-shaped decoration — beside the same field name, and
14
- * the readable value is what decides completion. A genuinely unread sibling has
15
- * its own label (or none), so it stays. */
16
- export declare function maskedCredentialLabels(candidates: readonly {
17
- label: string | null;
18
- isMasked: boolean;
19
- value?: string;
20
- }[], readableKeys?: readonly string[]): string[];
21
- export declare function sanitizeExtractedCredentials(credentials: Record<string, string>, url: string, haystack?: string, acceptedVisibleCredentials?: readonly string[]): Record<string, string>;
22
- export declare function classifyVouchflowCredentials(text: string): Record<string, string>;
9
+ export declare const EXTRACT_NO_SOURCE_ERROR: string;
10
+ /** The credential fields a store keeps: truncated displays are dropped, and a
11
+ * result holding only id fields is not a credential. Null when nothing is
12
+ * storable. Decided by field name, never by the value's shape. */
13
+ export declare function storableCredentials(credentials: Record<string, string>): Record<string, string> | null;
23
14
  /** What a zero-match capture DID find, so the caller can pick a better source
24
15
  * on the next try: computed roles and accessible names only — never values. */
25
16
  export interface CaptureFoundCandidate {
@@ -37,6 +28,7 @@ interface CaptureSourceResolution {
37
28
  };
38
29
  resolved_from?: "post_action" | "pre_action_only";
39
30
  found?: CaptureFoundCandidate[];
31
+ clipboard_error?: "capture_clipboard_unchanged" | "capture_clipboard_empty" | "capture_clipboard_unreadable";
40
32
  }
41
33
  /** Live pre-action probe of a click capture's source. The single candidate's
42
34
  * handle stays alive so the post-action resolution can prove it is not merely
@@ -1 +1 @@
1
- {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../../src/bot/capture/capture.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAQ,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AA0B9D,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IAIZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAGpC,eAAe,EAAE,MAAM,CAAC;IAIxB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AASD;;;;;2CAK2C;AAC3C,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,SAAS;IAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,EAClF,YAAY,GAAE,SAAS,MAAM,EAAO,GACnC,MAAM,EAAE,CAyBV;AAOD,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,GAAG,EAAE,MAAM,EACX,QAAQ,SAAwC,EAChD,0BAA0B,GAAE,SAAS,MAAM,EAAO,GACjD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAsCxB;AAiBD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAcjF;AAMD;+EAC+E;AAC/E,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAkRD,UAAU,uBAAuB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnF,aAAa,CAAC,EAAE,aAAa,GAAG,iBAAiB,CAAC;IAClD,KAAK,CAAC,EAAE,qBAAqB,EAAE,CAAC;CACjC;AA6FD;;gEAEgE;AAChE,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,kBAAkB,CAAC,CA6B7B;AAkFD;;;;8EAI8E;AAC9E,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAA;CAAE,GACrD,OAAO,CAAC,uBAAuB,CAAC,CAclC;AAqOD,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAiKlF"}
1
+ {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../../src/bot/capture/capture.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAQ,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAwB,MAAM,0BAA0B,CAAC;AASpF,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IAGZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,uBAAuB,QAKa,CAAC;AAElD;;kEAEkE;AAClE,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAK/B;AAED;+EAC+E;AAC/E,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAkRD,UAAU,uBAAuB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnF,aAAa,CAAC,EAAE,aAAa,GAAG,iBAAiB,CAAC;IAClD,KAAK,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAEhC,eAAe,CAAC,EACZ,6BAA6B,GAC7B,yBAAyB,GACzB,8BAA8B,CAAC;CACpC;AA6FD;;gEAEgE;AAChE,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,kBAAkB,CAAC,CAmC7B;AAyGD;;;;8EAI8E;AAC9E,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAA;CAAE,GACrD,OAAO,CAAC,uBAAuB,CAAC,CAsBlC;AAwPD,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAkBlF"}
@@ -7,122 +7,21 @@
7
7
  // provision-session imports the session-facing entry points back and keeps
8
8
  // re-exporting the tool layer's import surface; this module imports only from
9
9
  // the rest of the tree, never from provision-session.
10
- import { extractApiKeyFromText, isTruncatedCapture } from "../credential-text.js";
11
- import { looksLikeCodeIdentifier, looksLikeCredentialValue, isCredentialNoise, findCredentialTokens, keyFamilyPrefix, pickRelaxedNearCopyCredential, } from "../credential-shape.js";
12
- import { initialExtractionState, accumulateCandidate, hasFullHit, resolveExtraction, } from "../extraction.js";
13
- import { registrableHost } from "../session/hosts.js";
14
10
  import { audit, sessionForCall } from "../session/lifecycle.js";
15
11
  import { invalidateCompactV2Snapshot, operationPageForSession } from "../observe/observe.js";
16
12
  import { settleAfterStateChange } from "../act/act.js";
17
13
  import { captureFrameSnapshot } from "../drive-snapshot.js";
18
- const normLabelKey = (label) => label
19
- .replace(/\s+/g, "_")
20
- .replace(/[^a-z0-9_]/gi, "")
21
- .toLowerCase()
22
- .slice(0, 40);
23
- /** Labels of masked credential candidates that no readable value covers. A
24
- * masked display is only "remaining" when nothing readable was captured under
25
- * the same label: a page can show the created key in clear while still carrying
26
- * a masked copy — or a mask-shaped decoration — beside the same field name, and
27
- * the readable value is what decides completion. A genuinely unread sibling has
28
- * its own label (or none), so it stays. */
29
- export function maskedCredentialLabels(candidates, readableKeys = []) {
30
- const readable = new Set(readableKeys.map((key) => normLabelKey(key)));
31
- return [
32
- ...new Set(candidates
33
- .filter((candidate) => candidate.isMasked)
34
- .filter((candidate) => {
35
- if (candidate.label === null)
36
- return true;
37
- const sameLabel = candidates.filter((other) => !other.isMasked &&
38
- other.label !== null &&
39
- normLabelKey(other.label) === normLabelKey(candidate.label));
40
- if (candidate.value === undefined) {
41
- return sameLabel.length === 0 && !readable.has(normLabelKey(candidate.label));
42
- }
43
- if (sameLabel.length === 0)
44
- return true;
45
- const prefix = candidate.value?.split(/[•●⬤*…]/, 1)[0]?.replace(/\.+$/, "");
46
- if (prefix === undefined || prefix.length === 0)
47
- return false;
48
- return !sameLabel.some((other) => other.value?.startsWith(prefix));
49
- })
50
- .map((candidate) => candidate.label ?? "masked credential")),
51
- ];
52
- }
53
- function firstTokenMatching(haystack, re) {
54
- const match = haystack.match(re);
55
- return match?.[0] ?? null;
56
- }
57
- export function sanitizeExtractedCredentials(credentials, url, haystack = Object.values(credentials).join("\n"), acceptedVisibleCredentials = []) {
58
- const host = registrableHost(url) ?? "";
59
- const normalized = {};
60
- if (host === "cloud.langfuse.com") {
61
- const secret = firstTokenMatching(haystack, /\bsk-lf-[0-9a-f-]{20,}\b/i);
62
- const pub = firstTokenMatching(haystack, /\bpk-lf-[0-9a-f-]{20,}\b/i);
63
- if (secret !== null) {
64
- normalized.langfuse_secret_key = secret;
65
- normalized.api_key = secret;
66
- }
67
- if (pub !== null)
68
- normalized.langfuse_public_key = pub;
69
- return normalized;
70
- }
71
- if (host.endsWith(".neon.tech")) {
72
- const token = firstTokenMatching(haystack, /\bnapi_[A-Za-z0-9_-]{24,}\b/);
73
- if (token !== null) {
74
- normalized.api_token = token;
75
- normalized.api_key = token;
76
- }
77
- return normalized;
78
- }
79
- for (const [key, value] of Object.entries(credentials)) {
80
- const k = normLabelKey(key);
81
- if (k === "refcode" || k === "referral_code")
82
- continue;
83
- if (isCredentialNoise(value))
84
- continue;
85
- if ((k === "key" || k === "api_key" || k === "secret") &&
86
- !acceptedVisibleCredentials.includes(value) &&
87
- !looksLikeCredentialValue(value))
88
- continue;
89
- if (host === "api.together.ai" && /^key_[A-Za-z0-9]{16,}$/i.test(value.trim()))
90
- continue;
91
- normalized[key] = value;
92
- }
93
- return normalized;
94
- }
95
- function isFullVisibleCredential(value) {
96
- const token = value.trim();
97
- if (isCredentialNoise(token) || looksLikeCodeIdentifier(token))
98
- return false;
99
- if (looksLikeCredentialValue(token))
100
- return true;
101
- // A long alphanumeric key with no separator is ambiguous in raw page text.
102
- // A distinct, visible DOM candidate is the extra evidence used below.
103
- return (token.length >= 40 &&
104
- token.length <= 128 &&
105
- /^[A-Za-z0-9]+$/.test(token) &&
106
- /[A-Za-z]/.test(token) &&
107
- /[0-9]/.test(token));
108
- }
109
- export function classifyVouchflowCredentials(text) {
110
- const out = {};
111
- for (const tok of findCredentialTokens(text)) {
112
- if (/^vsk_sandbox_read_/i.test(tok) && out.sandbox_read_key === undefined) {
113
- out.sandbox_read_key = tok;
114
- }
115
- else if (/^vsk_sandbox_/i.test(tok) && out.sandbox_write_key === undefined) {
116
- out.sandbox_write_key = tok;
117
- }
118
- else if (/^vsk_live_read_/i.test(tok) && out.live_read_key === undefined) {
119
- out.live_read_key = tok;
120
- }
121
- else if (/^vsk_live_/i.test(tok) && out.live_write_key === undefined) {
122
- out.live_write_key = tok;
123
- }
124
- }
125
- return out;
14
+ export const EXTRACT_NO_SOURCE_ERROR = "no_key_source: nothing stored. operate_extract without capture stores only the value " +
15
+ "a Copy button in a key dialog writes to the clipboard, and none did. Read the page " +
16
+ "with operate_observe, then point capture at the key: operate_extract with " +
17
+ "capture:{source:{selector}|{role,name?},store}, or operate_click on its Copy button " +
18
+ "with capture:{source:{clipboard:true},store}.";
19
+ /** The credential fields a store keeps: truncated displays are dropped, and a
20
+ * result holding only id fields is not a credential. Null when nothing is
21
+ * storable. Decided by field name, never by the value's shape. */
22
+ export function storableCredentials(credentials) {
23
+ const kept = Object.fromEntries(Object.entries(credentials).filter(([key]) => !key.endsWith("_truncated")));
24
+ return Object.keys(kept).some((key) => key !== "id" && !key.endsWith("_id")) ? kept : null;
126
25
  }
127
26
  async function shadowPiercingCapture(page, source, handles, containerHandles) {
128
27
  return await page.evaluate(({ source: spec, nodes: sourceNodes, scopeNodes: containerNodes }) => {
@@ -478,6 +377,12 @@ export async function probeCaptureSource(sessionId, source) {
478
377
  const page = operationPageForSession(session);
479
378
  if (page === undefined)
480
379
  throw new Error("capture page unavailable");
380
+ if ("clipboard" in source) {
381
+ // The pre-click clipboard is the baseline: only a value the click newly
382
+ // writes there is evidence of a copied credential.
383
+ await ensureCaptureClipboardPermission(page);
384
+ return { candidate_count: 1, value: (await session.browser.readClipboard(page)).trim() };
385
+ }
481
386
  const handles = await captureSourceTargets(page, source)
482
387
  .elementHandles()
483
388
  .catch(() => []);
@@ -559,6 +464,23 @@ async function resolveChangedPostActionSource(page, source, pre) {
559
464
  await Promise.all([...handles, ...containerHandles].map((handle) => handle.dispose().catch(() => undefined)));
560
465
  }
561
466
  }
467
+ /** Read the clipboard after a click until it holds a non-empty value that
468
+ * differs from the pre-click baseline, within the mutation render budget. */
469
+ async function resolvePostActionClipboard(page, browser, pre) {
470
+ const before = pre.value ?? "";
471
+ const deadline = Date.now() + CAPTURE_MUTATION_RENDER_BUDGET_MS;
472
+ for (;;) {
473
+ const value = (await browser.readClipboard(page).catch(() => "")).trim();
474
+ if (value.length > 0 && value !== before)
475
+ return { candidate_count: 1, value, resolved_from: "post_action" };
476
+ if (Date.now() >= deadline)
477
+ return {
478
+ candidate_count: 0,
479
+ clipboard_error: value.length === 0 ? "capture_clipboard_empty" : "capture_clipboard_unchanged",
480
+ };
481
+ await new Promise((resolve) => setTimeout(resolve, CAPTURE_MUTATION_RENDER_POLL_MS));
482
+ }
483
+ }
562
484
  async function resolvePostActionCaptureSource(page, source, pre) {
563
485
  const deadline = Date.now() + CAPTURE_MUTATION_RENDER_BUDGET_MS;
564
486
  for (;;) {
@@ -582,6 +504,14 @@ export async function captureCredentialSource(sessionId, source, afterAction) {
582
504
  const page = operationPageForSession(session);
583
505
  if (page === undefined)
584
506
  throw new Error("capture page unavailable");
507
+ if ("clipboard" in source) {
508
+ // Without a pre-click baseline a clipboard value could be stale, so the
509
+ // clipboard source is only judged after a click that was probed first.
510
+ if (afterAction?.pre === undefined)
511
+ return { candidate_count: 0, clipboard_error: "capture_clipboard_unreadable" };
512
+ await settleAfterStateChange(session.browser, page);
513
+ return await resolvePostActionClipboard(page, session.browser, afterAction.pre);
514
+ }
585
515
  if (afterAction !== undefined) {
586
516
  // Same settle the click itself waits on — judge the source only after the
587
517
  // click's mutation has had its render window.
@@ -776,16 +706,36 @@ async function copyCredentialFromDialog(page, browser) {
776
706
  return null;
777
707
  copyButton = page.locator(selector);
778
708
  }
709
+ // Empty the clipboard first: a value present after the click was written by
710
+ // this click, even when it equals what an earlier Copy click left there.
779
711
  const before = await browser.readClipboard(page).catch(() => "");
712
+ const writeClipboard = async (text) => await page
713
+ .evaluate(async (value) => {
714
+ try {
715
+ await navigator.clipboard.writeText(value);
716
+ return true;
717
+ }
718
+ catch {
719
+ return false;
720
+ }
721
+ }, text)
722
+ .catch(() => false);
723
+ const cleared = await writeClipboard("");
724
+ let copied = "";
780
725
  try {
781
726
  await copyButton.click({ timeout: 1500 });
727
+ copied = (await browser.readClipboard(page).catch(() => "")).trim();
782
728
  }
783
729
  catch {
730
+ // Fall through: nothing was copied.
731
+ }
732
+ if (copied.length === 0 || (!cleared && copied === before.trim())) {
733
+ // Leave the clipboard as the page found it when this control wrote nothing.
734
+ if (cleared && before.length > 0)
735
+ await writeClipboard(before);
784
736
  return null;
785
737
  }
786
- const copied = (await browser.readClipboard(page).catch(() => "")).trim();
787
- // A stale clipboard is not evidence that this control yielded a credential.
788
- return copied.length > 0 && copied !== before.trim() ? copied : null;
738
+ return copied;
789
739
  }
790
740
  export async function extractCredentials(sessionId) {
791
741
  const session = sessionForCall(sessionId);
@@ -794,148 +744,16 @@ export async function extractCredentials(sessionId) {
794
744
  const { browser } = session;
795
745
  const page = operationPageForSession(session);
796
746
  invalidateCompactV2Snapshot(session);
797
- // The masked-display trap: click reveal/show toggles before reading.
798
- await browser.revealMaskedCredentials(page);
799
- const labeled = await browser.extractLabeledCredentialCandidates(page);
800
- const inputs = await browser.extractAllInputValues(page);
801
- const nearCopy = await browser.extractCredentialsNearCopyButtons(page);
802
- const text = await browser.extractVisibleText(page);
803
- // Copy-only key surfaces (e.g. LangWatch's /settings/api-keys) never render
804
- // the value into the DOM — it goes to the clipboard on a "Copy" click. Read
805
- // it after checking the live origin's permission.
747
+ // Storage is decided by source, never by shape: the Copy click itself proves
748
+ // provenance, whatever the value looks like (Vast.ai's key is 64-char hex).
806
749
  await ensureCaptureClipboardPermission(page);
807
- const clip = await browser.readClipboard(page).catch(() => "");
808
- // Primary api_key: first FULL hit wins; a truncated/masked hit is the fallback.
809
- let state = initialExtractionState();
810
- const sources = [...labeled.map((c) => c.value), ...inputs, ...nearCopy, clip, text];
811
- for (const src of sources) {
812
- if (hasFullHit(state))
813
- break;
814
- const key = extractApiKeyFromText(src);
815
- if (key === null)
816
- continue;
817
- // Reject an env-var NAME mistaken for a key — a "LANGWATCH_API_KEY="
818
- // display (the SDK snippet shows `LANGWATCH_API_KEY=sk-lw-…`) would
819
- // otherwise win first-full and mask the real token. Skip it so scanning
820
- // reaches the actual secret further down the source list.
821
- if (/^[A-Z][A-Z0-9_]{2,}=?$/.test(key.trim()))
822
- continue;
823
- if (isCredentialNoise(key))
824
- continue;
825
- // Reject too-short non-secrets (UI noise like "Ctrl+K"). Real API keys are
826
- // long; a sub-12-char "key" is a false positive, never a credential.
827
- if (key.trim().length < 12)
828
- continue;
829
- // Reject a code identifier scraped off a page (the X-tombstone false-green).
830
- if (looksLikeCodeIdentifier(key))
831
- continue;
832
- const cls = isTruncatedCapture(src, key)
833
- ? { kind: "truncated", value: key }
834
- : { kind: "full", value: key };
835
- state = accumulateCandidate(state, cls);
836
- }
837
- // A full key can appear as bare text in a table cell or a text input
838
- // without a known prefix or a nearby label. Require one distinct visible
839
- // credential-shaped value; masked and truncated displays never qualify.
840
- const readable = [
841
- ...new Set(labeled
842
- .filter((candidate) => !candidate.isMasked)
843
- .map((candidate) => candidate.value)
844
- .filter(isFullVisibleCredential)),
845
- ];
846
- const acceptedVisibleCredential = !hasFullHit(state) && readable.length === 1 ? (readable[0] ?? null) : null;
847
- if (acceptedVisibleCredential !== null) {
848
- state = accumulateCandidate(state, { kind: "full", value: acceptedVisibleCredential });
849
- }
850
- const copied = !hasFullHit(state) ? await copyCredentialFromDialog(page, browser) : null;
851
- const acceptedCopy = copied !== null &&
852
- !isCredentialNoise(copied) &&
853
- (looksLikeCredentialValue(copied) || pickRelaxedNearCopyCredential([copied]) !== null)
854
- ? copied
855
- : null;
856
- if (acceptedCopy !== null) {
857
- nearCopy.push(acceptedCopy);
858
- sources.push(acceptedCopy);
859
- state = accumulateCandidate(state, { kind: "full", value: acceptedCopy });
860
- }
861
- const haystack = sources.join("\n");
862
- // Named credentials for multi-cred services (skip still-masked values and
863
- // env-var NAME displays — "LANGWATCH_API_KEY=" is the SDK-snippet prefix, not
864
- // a credential).
865
- const named = {};
866
- for (const c of labeled) {
867
- if (c.label === null || c.isMasked)
868
- continue;
869
- if (isCredentialNoise(c.value))
870
- continue;
871
- if (looksLikeCodeIdentifier(c.value))
872
- continue;
873
- const k = normLabelKey(c.label);
874
- if (k.length > 0 && !(k in named))
875
- named[k] = c.value;
876
- }
877
- // resolveExtraction (the regex-found primary key) wins over a same-named
878
- // labeled candidate, so a "API Key" label carrying the env-var snippet can
879
- // never clobber the real `api_key`.
880
- const credentials = {
881
- ...named,
882
- ...classifyVouchflowCredentials(haystack),
883
- ...resolveExtraction(state),
884
- };
885
- const relaxed = pickRelaxedNearCopyCredential(nearCopy);
886
- const acceptedNearCopyCredential = relaxed !== null &&
887
- !Object.entries(credentials).some(([key, value]) => key !== "api_key" && value === relaxed)
888
- ? relaxed
889
- : null;
890
- if (!("api_key" in credentials) && acceptedNearCopyCredential !== null) {
891
- credentials.api_key = acceptedNearCopyCredential;
892
- }
893
- // Multi-credential: a service may present several keys of the SAME family
894
- // (VouchFlow shows a vsk_ write AND a vsk_ read). Surface only tokens that
895
- // repeat a family already captured for THIS service — a cross-family token that
896
- // merely shares the page (a Resend dashboard's mcp-… widget beside the real re_
897
- // key) is page noise, not a second credential, and surfacing it pollutes the
898
- // credential + allow-lists an unrelated token to the service host (capture bug
899
- // 2026-07-09). A prefixless primary (deepinfra) yields no family, so no extras.
900
- const families = new Set(Object.values(credentials)
901
- .map((v) => (typeof v === "string" ? keyFamilyPrefix(v) : null))
902
- .filter((f) => f !== null));
903
- const have = new Set(Object.values(credentials));
904
- let n = 1;
905
- for (const tok of findCredentialTokens(haystack)) {
906
- if (have.has(tok))
907
- continue;
908
- if (n >= 8)
909
- break; // cap extras so page noise can't flood the result
910
- const fam = keyFamilyPrefix(tok);
911
- if (fam === null || !families.has(fam))
912
- continue;
913
- have.add(tok);
914
- n += 1;
915
- credentials[`api_key_${n}`] = tok;
916
- }
917
- const sanitized = sanitizeExtractedCredentials(credentials, page?.url() ?? browser.currentUrl(), haystack, [acceptedVisibleCredential, acceptedNearCopyCredential].filter((value) => value !== null));
918
- const found = Object.keys(sanitized).length > 0;
919
- // A masked credential-shaped value that survived the reveal pass is an
920
- // UNREAD key, not success. Name it so a caller never believes every key is
921
- // vaulted when a sibling is still hidden; a masked value covered by a
922
- // readable capture under the same label is not remaining (see the helper).
923
- // A successful copy from this credential dialog resolves its lone masked
924
- // display even if the page leaves that stale mask node in the DOM.
925
- const maskedCandidates = labeled.filter((candidate) => candidate.isMasked);
926
- const remainingCandidates = acceptedCopy !== null &&
927
- Object.values(sanitized).includes(acceptedCopy) &&
928
- maskedCandidates.length === 1
929
- ? labeled.filter((candidate) => candidate !== maskedCandidates[0])
930
- : labeled;
931
- const maskedRemaining = maskedCredentialLabels(remainingCandidates, Object.keys(sanitized));
932
- audit(sessionId, "extract", { found, candidate_count: labeled.length });
750
+ const copied = await copyCredentialFromDialog(page, browser);
751
+ audit(sessionId, "extract", { found: copied !== null });
933
752
  return {
934
753
  session_id: sessionId,
935
754
  url: page?.url() ?? browser.currentUrl(),
936
- credentials: sanitized,
937
- candidate_count: labeled.length,
938
- ...(maskedRemaining.length > 0 ? { masked_remaining: maskedRemaining } : {}),
755
+ credentials: copied === null ? {} : { api_key: copied },
756
+ ...(copied === null ? { error: EXTRACT_NO_SOURCE_ERROR } : {}),
939
757
  };
940
758
  }
941
759
  //# sourceMappingURL=capture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"capture.js","sourceRoot":"","sources":["../../../src/bot/capture/capture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capture.js","sourceRoot":"","sources":["../../../src/bot/capture/capture.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"card-release-approval.d.ts","sourceRoot":"","sources":["../../src/bot/card-release-approval.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card-release-approval.d.ts","sourceRoot":"","sources":["../../src/bot/card-release-approval.ts"],"names":[],"mappings":"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"}
@@ -527,11 +527,15 @@ export async function executeCardReleaseApproval(args, api, browser, overrides =
527
527
  iteration++;
528
528
  const remainingPollMs = Math.max(Math.min(callDeadline, deadline) - deps.now(), 0);
529
529
  const candidateRead = remainingPollMs > 0 ? true : "immediate";
530
+ const heldWaitMs = candidateRead === true
531
+ ? Math.min(Math.max(remainingPollMs - PAYMENT_APPROVAL_RESPONSE_RESERVE_MS, 0), 15_000)
532
+ : 0;
533
+ const readStartedAt = deps.now();
530
534
  let approval;
531
535
  try {
532
536
  approval =
533
537
  candidateRead === true
534
- ? await api.getPaymentApproval(approvalId, true, Math.min(Math.max(remainingPollMs - PAYMENT_APPROVAL_RESPONSE_RESERVE_MS, 0), 15_000), remainingPollMs)
538
+ ? await api.getPaymentApproval(approvalId, true, heldWaitMs, remainingPollMs)
535
539
  : await api.getPaymentApproval(approvalId, "immediate");
536
540
  }
537
541
  catch (error) {
@@ -686,7 +690,12 @@ export async function executeCardReleaseApproval(args, api, browser, overrides =
686
690
  }
687
691
  if (!shouldKeepPolling())
688
692
  break;
689
- await deps.sleep(deps.pollIntervalMs);
693
+ // A full server-held pending read already paced the loop. Back off only
694
+ // when it returned early (or an already-rejected candidate reappeared).
695
+ const fullHeldRead = candidateRead === true && heldWaitMs > 0 &&
696
+ deps.now() - readStartedAt >= Math.max(heldWaitMs - 500, heldWaitMs * 0.9);
697
+ if (!fullHeldRead || hasCandidate)
698
+ await deps.sleep(deps.pollIntervalMs);
690
699
  }
691
700
  if (approved === undefined) {
692
701
  if (budgetExhausted) {