@enricai/barnacle 1.6.12 → 1.6.14

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 (108) hide show
  1. package/README.md +113 -9
  2. package/dist/api/schemas/submissions.d.ts +14 -0
  3. package/dist/api/schemas/submissions.d.ts.map +1 -1
  4. package/dist/api/schemas/submissions.js +1 -0
  5. package/dist/api/schemas/submissions.js.map +1 -1
  6. package/dist/config.d.ts +33 -0
  7. package/dist/config.d.ts.map +1 -1
  8. package/dist/config.js +4 -0
  9. package/dist/config.js.map +1 -1
  10. package/dist/lib/bedrock.d.ts +8 -5
  11. package/dist/lib/bedrock.d.ts.map +1 -1
  12. package/dist/lib/bedrock.js +8 -5
  13. package/dist/lib/bedrock.js.map +1 -1
  14. package/dist/lib/http.d.ts +4 -3
  15. package/dist/lib/http.d.ts.map +1 -1
  16. package/dist/lib/http.js +25 -3
  17. package/dist/lib/http.js.map +1 -1
  18. package/dist/lib/telemetry/beacon-capture.d.ts +45 -2
  19. package/dist/lib/telemetry/beacon-capture.d.ts.map +1 -1
  20. package/dist/lib/telemetry/beacon-capture.js +36 -0
  21. package/dist/lib/telemetry/beacon-capture.js.map +1 -1
  22. package/dist/lib/telemetry/reconciliation-record.d.ts +41 -1
  23. package/dist/lib/telemetry/reconciliation-record.d.ts.map +1 -1
  24. package/dist/lib/telemetry/reconciliation-record.js +29 -2
  25. package/dist/lib/telemetry/reconciliation-record.js.map +1 -1
  26. package/dist/lib/telemetry/reconciliation-source.d.ts +7 -1
  27. package/dist/lib/telemetry/reconciliation-source.d.ts.map +1 -1
  28. package/dist/lib/telemetry/reconciliation-source.js +21 -5
  29. package/dist/lib/telemetry/reconciliation-source.js.map +1 -1
  30. package/dist/lib/telemetry/run-telemetry.d.ts +67 -0
  31. package/dist/lib/telemetry/run-telemetry.d.ts.map +1 -0
  32. package/dist/lib/telemetry/run-telemetry.js +55 -0
  33. package/dist/lib/telemetry/run-telemetry.js.map +1 -0
  34. package/dist/lib/telemetry/submission-capture.d.ts +11 -4
  35. package/dist/lib/telemetry/submission-capture.d.ts.map +1 -1
  36. package/dist/lib/telemetry/submission-capture.js +1 -0
  37. package/dist/lib/telemetry/submission-capture.js.map +1 -1
  38. package/dist/lib/telemetry/submission-reader.d.ts +11 -3
  39. package/dist/lib/telemetry/submission-reader.d.ts.map +1 -1
  40. package/dist/lib/telemetry/submission-reader.js +32 -8
  41. package/dist/lib/telemetry/submission-reader.js.map +1 -1
  42. package/dist/lib/tracking-click.d.ts.map +1 -1
  43. package/dist/lib/tracking-click.js +19 -0
  44. package/dist/lib/tracking-click.js.map +1 -1
  45. package/dist/plugins/config-plugin.js +3 -3
  46. package/dist/plugins/loader.d.ts +20 -0
  47. package/dist/plugins/loader.d.ts.map +1 -1
  48. package/dist/plugins/loader.js +94 -17
  49. package/dist/plugins/loader.js.map +1 -1
  50. package/dist/scraper/deep-locator-actuate.d.ts +94 -0
  51. package/dist/scraper/deep-locator-actuate.d.ts.map +1 -0
  52. package/dist/scraper/deep-locator-actuate.js +216 -0
  53. package/dist/scraper/deep-locator-actuate.js.map +1 -0
  54. package/dist/scraper/deep-locator-candidates.d.ts +105 -18
  55. package/dist/scraper/deep-locator-candidates.d.ts.map +1 -1
  56. package/dist/scraper/deep-locator-candidates.js +238 -46
  57. package/dist/scraper/deep-locator-candidates.js.map +1 -1
  58. package/dist/scraper/deep-locator-click.d.ts +71 -0
  59. package/dist/scraper/deep-locator-click.d.ts.map +1 -0
  60. package/dist/scraper/deep-locator-click.js +71 -0
  61. package/dist/scraper/deep-locator-click.js.map +1 -0
  62. package/dist/scraper/deep-locator-fake.d.ts +344 -14
  63. package/dist/scraper/deep-locator-fake.d.ts.map +1 -1
  64. package/dist/scraper/deep-locator-fake.js +509 -7
  65. package/dist/scraper/deep-locator-fake.js.map +1 -1
  66. package/dist/scraper/deep-locator-scan.d.ts +220 -0
  67. package/dist/scraper/deep-locator-scan.d.ts.map +1 -0
  68. package/dist/scraper/deep-locator-scan.js +386 -0
  69. package/dist/scraper/deep-locator-scan.js.map +1 -0
  70. package/dist/scraper/fake-timer-advance.d.ts +47 -0
  71. package/dist/scraper/fake-timer-advance.d.ts.map +1 -0
  72. package/dist/scraper/fake-timer-advance.js +44 -0
  73. package/dist/scraper/fake-timer-advance.js.map +1 -0
  74. package/dist/scraper/flow-runner.d.ts +80 -9
  75. package/dist/scraper/flow-runner.d.ts.map +1 -1
  76. package/dist/scraper/flow-runner.js +417 -63
  77. package/dist/scraper/flow-runner.js.map +1 -1
  78. package/dist/scraper/frame-target.d.ts +28 -0
  79. package/dist/scraper/frame-target.d.ts.map +1 -1
  80. package/dist/scraper/frame-target.js +30 -0
  81. package/dist/scraper/frame-target.js.map +1 -1
  82. package/dist/scraper/session-browserbase.d.ts +13 -0
  83. package/dist/scraper/session-browserbase.d.ts.map +1 -1
  84. package/dist/scraper/session-browserbase.js +29 -0
  85. package/dist/scraper/session-browserbase.js.map +1 -1
  86. package/dist/scraper/session-ip.d.ts +69 -0
  87. package/dist/scraper/session-ip.d.ts.map +1 -0
  88. package/dist/scraper/session-ip.js +88 -0
  89. package/dist/scraper/session-ip.js.map +1 -0
  90. package/dist/scraper/session-shared.d.ts +9 -0
  91. package/dist/scraper/session-shared.d.ts.map +1 -1
  92. package/dist/scraper/session-shared.js.map +1 -1
  93. package/dist/scraper/submit-control.d.ts +14 -2
  94. package/dist/scraper/submit-control.d.ts.map +1 -1
  95. package/dist/scraper/submit-control.js +33 -2
  96. package/dist/scraper/submit-control.js.map +1 -1
  97. package/dist/scripts/recon-browser.d.ts +1 -1
  98. package/dist/scripts/recon-browser.d.ts.map +1 -1
  99. package/dist/scripts/recon-browser.js +48 -16
  100. package/dist/scripts/recon-browser.js.map +1 -1
  101. package/dist/scripts/recon-generate.js +3 -3
  102. package/dist/scripts/recon-generate.js.map +1 -1
  103. package/dist/site-plugin.d.ts +20 -0
  104. package/dist/site-plugin.d.ts.map +1 -1
  105. package/dist/testing/integration-runner.d.ts.map +1 -1
  106. package/dist/testing/integration-runner.js +6 -7
  107. package/dist/testing/integration-runner.js.map +1 -1
  108. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"tracking-click.js","sourceRoot":"","sources":["../../src/lib/tracking-click.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracking-click.js","sourceRoot":"","sources":["../../src/lib/tracking-click.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;AAEH,iDAK0B;AAC1B,yCAA8C;AAC9C,2CAA0C;AAC1C,mEAAoE;AACpE,uEAAgF;AAEhF,MAAM,MAAM,GAAG,IAAA,mBAAS,EAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAErD,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAEhD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAiB,CAAC;AAYhD;;;;;;GAMG;AACH,KAAK,UAAU,0BAA0B,CACvC,KAA+C;IAE/C,IAAI,CAAC;QACH,MAAM,IAAA,mCAAkB,EAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,kCAAkC,IAAA,uBAAc,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,gBAAgB,CAC7B,OAAgF;IAEhF,IAAI,CAAC,OAAO,EAAE,aAAa;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC;IACvC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,gDAAgD,IAAA,uBAAc,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,oBAAoB,CACjC,WAAmB,EACnB,MAAc,EACd,cAAmD;IAEnD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAA,uCAA0B,EAAC,MAAM,CAAC,CAAC;IAEnC,IAAI,OAAgF,CAAC;IACrF,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,IAAA,qDAA+B,EAAC;YAC9C,eAAe,EAAE,IAAI;YACrB,8BAA8B,EAAE,EAAE,OAAO,EAAE,mCAAmC,EAAE;SACjF,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QAC/D,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAChG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAE1C,IAAA,uCAA0B,EAAC,MAAM,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CACT,+BAA+B,MAAM,QAAQ,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,eAAe,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAC9G,CAAC;QACF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,0BAA0B,CAAC;gBAC/B,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,MAAM;gBACN,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,YAAY,EAAE,OAAO;gBACrB,WAAW;gBACX,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAClC,SAAS,EAAE,MAAM,gBAAgB,CAAC,OAAO,CAAC;aAC3C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAA,uCAA0B,EAAC,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC5F,MAAM,CAAC,IAAI,CACT,8BAA8B,MAAM,QAAQ,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,IAAA,uBAAc,EAAC,GAAG,CAAC,EAAE,CAChG,CAAC;QACF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,0BAA0B,CAAC;gBAC/B,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,MAAM;gBACN,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,YAAY,EAAE,QAAQ;gBACtB,WAAW;gBACX,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAClC,SAAS,EAAE,MAAM,gBAAgB,CAAC,OAAO,CAAC;aAC3C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAA,wCAA2B,EAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QAC5D,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACvC,MAAM,CAAC,IAAI,CAAC,wCAAwC,IAAA,uBAAc,EAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAClF,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,2BACE,WAAmB,EACnB,MAAc,EACd,cAAmD;IAEnD,MAAM,OAAO,GAAG,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACrF,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IACH,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACI,KAAK,8BAA8B,SAAS,GAAG,MAAM;IAC1D,IAAI,cAAc,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO;IACtC,MAAM,CAAC,IAAI,CAAC,YAAY,cAAc,CAAC,IAAI,8BAA8B,CAAC,CAAC;IAC3E,MAAM,OAAO,CAAC,IAAI,CAAC;QACjB,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC;QACvC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;KAC/D,CAAC,CAAC;AACL,CAAC"}
@@ -115,11 +115,11 @@ function toHealingStep(step, payload, declaredFields) {
115
115
  };
116
116
  }
117
117
  /**
118
- * Builds the resume fixture the browser flow uploads, mirroring the rule the
118
+ * Builds the upload fixture the browser flow uploads, mirroring the rule the
119
119
  * generator's `emitBrowserFlowTs` applies: only when a step uploads AND the
120
120
  * manifest declares itself multipart do the `Resume*` payload fields exist.
121
121
  */
122
- function buildResumeFixture(payload, hasUploadStep, multipart) {
122
+ function buildUploadFixture(payload, hasUploadStep, multipart) {
123
123
  if (!hasUploadStep || !multipart)
124
124
  return null;
125
125
  return {
@@ -205,7 +205,7 @@ async function buildConfigPlugin(raw, baseDir = process.cwd()) {
205
205
  steps,
206
206
  logger,
207
207
  anthropic,
208
- resumeFixture: buildResumeFixture(payload, hasUploadStep, spec.multipart ?? false),
208
+ uploadFixture: buildUploadFixture(payload, hasUploadStep, spec.multipart ?? false),
209
209
  frameSelector: spec.flow.frameSelector,
210
210
  submitEndpointPattern: spec.flow.submitEndpointPattern ?? null,
211
211
  submittedStateSelectors: spec.flow.submittedStateSelectors ?? [],
@@ -10,6 +10,26 @@ import type { Logger } from "../types/logging";
10
10
  * call `loadAllPlugins` for the composed set.
11
11
  */
12
12
  export declare const SITE_PLUGINS: SitePlugin<unknown, unknown>[];
13
+ /** Input to `buildPluginContext` — one per construction site (the `/run` route, an extra route, or a test/integration harness). */
14
+ export interface BuildPluginContextInput {
15
+ /** The plugin the context is being built for; supplies `siteId` for both `baseUrl` resolution and the bound beacon recorder. */
16
+ plugin: SitePlugin<unknown, unknown>;
17
+ /** Full app config; also used to resolve `baseUrl` when no override is given. */
18
+ cfg: AppConfig;
19
+ /** Correlation ID for this run, threaded into telemetry and the bound beacon recorder. */
20
+ requestId: string;
21
+ /** Request-scoped logger, already extended by the caller (`extendLogger` for real requests). */
22
+ logger: Logger;
23
+ /** Overrides the `cfg.scraper.siteBaseUrls` / `plugin.meta.defaultBaseUrl` resolution; used by the integration-test harness, which supplies its own job-derived `baseUrl`. */
24
+ baseUrl?: string;
25
+ }
26
+ /**
27
+ * Builds the `SitePluginContext` core injects into every plugin call. Single
28
+ * shared factory for all three construction sites (`/run` route, extra
29
+ * routes, `runIntegrationJob`) so a new context member is a one-line change
30
+ * here instead of three drifting literals.
31
+ */
32
+ export declare function buildPluginContext(input: BuildPluginContextInput): SitePluginContext;
13
33
  /**
14
34
  * Runs a single plugin submission end-to-end. Tries the direct-HTTP hot path
15
35
  * first when the plugin supplies `executeHttp`; on `HttpSchemaError`,
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/plugins/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAejE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAmC1C,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EAEjB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAW9C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,gCAAuB,CAAC;AAyIjD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EACpC,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GACxC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CA+FpC;AA+BD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,eAAe,CAAC,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,CAAC,EAC/E,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,GACtC,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/plugins/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGjE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAejE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAqC1C,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EAEjB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAW9C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,gCAAuB,CAAC;AAmBjD,mIAAmI;AACnI,MAAM,WAAW,uBAAuB;IACtC,gIAAgI;IAChI,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC,iFAAiF;IACjF,GAAG,EAAE,SAAS,CAAC;IACf,0FAA0F;IAC1F,SAAS,EAAE,MAAM,CAAC;IAClB,gGAAgG;IAChG,MAAM,EAAE,MAAM,CAAC;IACf,8KAA8K;IAC9K,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,iBAAiB,CAYpF;AAyLD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EACpC,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GACxC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAuGpC;AA+BD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,eAAe,CAAC,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,CAAC,EAC/E,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,GACtC,OAAO,CAAC,IAAI,CAAC,CAyCf"}
@@ -4,9 +4,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SITE_PLUGINS = void 0;
7
+ exports.buildPluginContext = buildPluginContext;
7
8
  exports.dispatch = dispatch;
8
9
  exports.registerRoutes = registerRoutes;
9
10
  const multipart_1 = __importDefault(require("@fastify/multipart"));
11
+ const date_fns_1 = require("date-fns");
10
12
  const v4_1 = require("zod/v4");
11
13
  const errors_1 = require("../api/errors");
12
14
  const envelope_1 = require("../api/helpers/envelope");
@@ -16,6 +18,7 @@ const dispatch_metrics_1 = require("../lib/dispatch-metrics");
16
18
  const errors_2 = require("../lib/errors");
17
19
  const logging_1 = require("../lib/logging");
18
20
  const beacon_capture_1 = require("../lib/telemetry/beacon-capture");
21
+ const run_telemetry_1 = require("../lib/telemetry/run-telemetry");
19
22
  const submission_capture_1 = require("../lib/telemetry/submission-capture");
20
23
  const tracking_click_1 = require("../lib/tracking-click");
21
24
  const discover_1 = require("../plugins/discover");
@@ -58,6 +61,51 @@ function toApiError(err) {
58
61
  return new errors_1.ScrapeFailureError(err.message);
59
62
  return undefined;
60
63
  }
64
+ /**
65
+ * Builds the `SitePluginContext` core injects into every plugin call. Single
66
+ * shared factory for all three construction sites (`/run` route, extra
67
+ * routes, `runIntegrationJob`) so a new context member is a one-line change
68
+ * here instead of three drifting literals.
69
+ */
70
+ function buildPluginContext(input) {
71
+ const { plugin, cfg, requestId, logger, baseUrl } = input;
72
+ return {
73
+ baseUrl: baseUrl ?? cfg.scraper.siteBaseUrls[plugin.meta.siteId] ?? plugin.meta.defaultBaseUrl ?? "",
74
+ logger,
75
+ config: cfg,
76
+ requestId,
77
+ metricsCollector: new dispatch_metrics_1.MetricsCollector(),
78
+ recordBeaconOutcome: (0, beacon_capture_1.createBeaconOutcomeRecorder)({ requestId, siteId: plugin.meta.siteId }),
79
+ telemetry: new run_telemetry_1.RunTelemetry(),
80
+ };
81
+ }
82
+ /**
83
+ * Wraps a session-scoped plugin call so the acquired session's identity and
84
+ * outbound IP are recorded onto `context.telemetry` regardless of whether the
85
+ * call succeeds or throws. `runWithSession` (`src/scraper/pool.ts`) creates
86
+ * and closes the `BrowserSession` entirely inside its own callback — this is
87
+ * the only place still holding a reference to it, so it is the only place
88
+ * that can still query `getOutboundIp()` before the session is gone.
89
+ * Tolerates a null/absent session (the hot path never acquires one; some
90
+ * pool test doubles pass null) and an absent `getOutboundIp` (Steel has no
91
+ * accessor) by recording `ip: null, ipCapturedAt: null` in either case.
92
+ */
93
+ async function withSessionTelemetry(session, context, run) {
94
+ try {
95
+ return await run();
96
+ }
97
+ finally {
98
+ if (session) {
99
+ const ip = (await session.getOutboundIp?.()) ?? null;
100
+ context.telemetry.recordSession({
101
+ sessionId: session.sessionId,
102
+ provider: session.provider,
103
+ ip,
104
+ ipCapturedAt: ip ? (0, date_fns_1.formatISO)(new Date()) : null,
105
+ });
106
+ }
107
+ }
108
+ }
61
109
  /**
62
110
  * Runs the hot path (when available) + fallback pipeline for a single
63
111
  * submission. Extracted so dispatch() reads as a linear "run pipeline,
@@ -70,7 +118,7 @@ async function runPluginPipeline(plugin, payload, context, options) {
70
118
  (0, metrics_1.recordFallbackActivation)(plugin.meta.siteId);
71
119
  (0, dd_metrics_1.recordDdFallback)(plugin.meta.siteId);
72
120
  }
73
- return (await (0, pool_1.runWithSession)((session) => plugin.execute(payload, session, context), { onRetry: plugin.onRetry, maxAttempts: plugin.meta.maxAttempts }, plugin.meta.taskTimeoutMs, {
121
+ return (await (0, pool_1.runWithSession)((session) => withSessionTelemetry(session, context, () => plugin.execute(payload, session, context)), { onRetry: plugin.onRetry, maxAttempts: plugin.meta.maxAttempts }, plugin.meta.taskTimeoutMs, {
74
122
  advancedStealth: plugin.meta.advancedStealth,
75
123
  ...(plugin.meta.browserbaseSessionCreateParams && {
76
124
  browserbaseSessionCreateParams: plugin.meta.browserbaseSessionCreateParams,
@@ -98,7 +146,7 @@ async function runPluginPipeline(plugin, payload, context, options) {
98
146
  logger.warn(`hot path failed for ${plugin.meta.siteId} (${httpErr.constructor.name}): ${httpErr.message} — engaging browser fallback`);
99
147
  (0, metrics_1.recordFallbackActivation)(plugin.meta.siteId);
100
148
  (0, dd_metrics_1.recordDdFallback)(plugin.meta.siteId);
101
- return (await (0, pool_1.runWithSession)((session) => plugin.execute(payload, session, context), { onRetry: plugin.onRetry, maxAttempts: plugin.meta.maxAttempts }, plugin.meta.taskTimeoutMs, {
149
+ return (await (0, pool_1.runWithSession)((session) => withSessionTelemetry(session, context, () => plugin.execute(payload, session, context)), { onRetry: plugin.onRetry, maxAttempts: plugin.meta.maxAttempts }, plugin.meta.taskTimeoutMs, {
102
150
  advancedStealth: plugin.meta.advancedStealth,
103
151
  ...(plugin.meta.browserbaseSessionCreateParams && {
104
152
  browserbaseSessionCreateParams: plugin.meta.browserbaseSessionCreateParams,
@@ -145,6 +193,33 @@ async function emitBeaconSafely(input) {
145
193
  logger.warn(`beacon event emit failed: ${(0, errors_2.toErrorMessage)(err)}`);
146
194
  }
147
195
  }
196
+ /**
197
+ * Merges a plugin's pre-run `extractJoinKeys(payload)` result with whatever
198
+ * it attached mid-run via `context.telemetry.addJoinKeys()`, run-attached
199
+ * fields winning on collision. Stays `null` (not `{}`) when both sources are
200
+ * empty so the envelope's `joinKeys: null` precedent holds for a plugin that
201
+ * uses neither mechanism.
202
+ */
203
+ function mergeJoinKeys(extracted, attached) {
204
+ if (!extracted && !attached)
205
+ return null;
206
+ return { ...extracted, ...attached };
207
+ }
208
+ /**
209
+ * Maps `RunTelemetry`'s collector-shaped session record (`sessionId`) onto
210
+ * the durable envelope's persisted shape (`id`) documented in
211
+ * `docs/telemetry-and-judging.md`'s "session" field.
212
+ */
213
+ function toEnvelopeSession(session) {
214
+ if (!session)
215
+ return null;
216
+ return {
217
+ id: session.sessionId,
218
+ provider: session.provider,
219
+ ip: session.ip,
220
+ ipCapturedAt: session.ipCapturedAt,
221
+ };
222
+ }
148
223
  /**
149
224
  * Runs a single plugin submission end-to-end. Tries the direct-HTTP hot path
150
225
  * first when the plugin supplies `executeHttp`; on `HttpSchemaError`,
@@ -175,7 +250,7 @@ async function dispatch(plugin, payload, context, options = {}) {
175
250
  const hasHttpPath = !!plugin.executeHttp && !options.forceFallback;
176
251
  const pathTag = hasHttpPath ? "http" : "browser";
177
252
  const ddTags = { site: plugin.meta.siteId, path: pathTag };
178
- const joinKeys = plugin.extractJoinKeys?.(payload) ?? null;
253
+ const extractedJoinKeys = plugin.extractJoinKeys?.(payload) ?? null;
179
254
  const managesOwnTracking = !!plugin.extractJoinKeys;
180
255
  (0, dd_metrics_1.recordDdAttempt)(ddTags);
181
256
  try {
@@ -193,10 +268,13 @@ async function dispatch(plugin, payload, context, options = {}) {
193
268
  (0, dd_metrics_1.recordDdDuration)(ddTags, durationMs);
194
269
  const metrics = context.metricsCollector.finalize(pathTag);
195
270
  result.metrics = metrics;
271
+ const successSnapshot = context.telemetry.snapshot();
272
+ const joinKeys = mergeJoinKeys(extractedJoinKeys, successSnapshot.joinKeys);
196
273
  await emitEnvelopeSafely({
197
274
  siteId: plugin.meta.siteId,
198
275
  requestId: context.requestId,
199
276
  joinKeys,
277
+ session: toEnvelopeSession(successSnapshot.session),
200
278
  inboundPayload: payload,
201
279
  status: "submitted",
202
280
  auditPayload: result.auditPayload ?? result.data,
@@ -236,10 +314,13 @@ async function dispatch(plugin, payload, context, options = {}) {
236
314
  (0, dd_metrics_1.recordDdFailure)(failureTags);
237
315
  (0, dd_metrics_1.recordDdDuration)(ddTags, durationMs);
238
316
  const metrics = context.metricsCollector.finalize(pathTag);
317
+ const errorSnapshot = context.telemetry.snapshot();
318
+ const joinKeys = mergeJoinKeys(extractedJoinKeys, errorSnapshot.joinKeys);
239
319
  await emitEnvelopeSafely({
240
320
  siteId: plugin.meta.siteId,
241
321
  requestId: context.requestId,
242
322
  joinKeys,
323
+ session: toEnvelopeSession(errorSnapshot.session),
243
324
  inboundPayload: payload,
244
325
  status: "error",
245
326
  auditPayload: null,
@@ -302,7 +383,6 @@ async function registerRoutes(app, cfg, plugins) {
302
383
  }
303
384
  for (const plugin of plugins) {
304
385
  const routePath = plugin.meta.routeOverride ?? `/v1/${plugin.meta.siteId}/run`;
305
- const baseUrl = cfg.scraper.siteBaseUrls[plugin.meta.siteId] ?? plugin.meta.defaultBaseUrl ?? "";
306
386
  app.post(routePath, {
307
387
  onRequest: [app.authenticate],
308
388
  schema: {
@@ -312,13 +392,12 @@ async function registerRoutes(app, cfg, plugins) {
312
392
  },
313
393
  }, async (request) => {
314
394
  const forceFallback = request.headers["x-barnacle-execution"] === "browser";
315
- const context = {
316
- baseUrl,
317
- logger: (0, logging_1.extendLogger)(request.log),
318
- config: cfg,
395
+ const context = buildPluginContext({
396
+ plugin,
397
+ cfg,
319
398
  requestId: request.id,
320
- metricsCollector: new dispatch_metrics_1.MetricsCollector(),
321
- };
399
+ logger: (0, logging_1.extendLogger)(request.log),
400
+ });
322
401
  const result = await dispatch(plugin, request.body, context, { forceFallback });
323
402
  return (0, envelope_1.successEnvelope)({
324
403
  ...result.data,
@@ -389,14 +468,12 @@ function registerExtraRoutes(app, cfg, plugins) {
389
468
  // above); shared routes defer body validation to here, against the
390
469
  // resolved plugin's own contract.
391
470
  const body = shared && route.bodySchema ? route.bodySchema.parse(request.body) : request.body;
392
- const baseUrl = cfg.scraper.siteBaseUrls[plugin.meta.siteId] ?? plugin.meta.defaultBaseUrl ?? "";
393
- const context = {
394
- baseUrl,
395
- logger: (0, logging_1.extendLogger)(request.log),
396
- config: cfg,
471
+ const context = buildPluginContext({
472
+ plugin,
473
+ cfg,
397
474
  requestId: request.id,
398
- metricsCollector: new dispatch_metrics_1.MetricsCollector(),
399
- };
475
+ logger: (0, logging_1.extendLogger)(request.log),
476
+ });
400
477
  const result = await route.handler({
401
478
  body,
402
479
  params: request.params,
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/plugins/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/plugins/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Fill/select actuation seam over `deepLocator`, mirroring
3
+ * `clickDeepLocatorCandidate`'s contract (`deep-locator-candidates.ts`) for
4
+ * the two other primitives a cross-origin OOPIF form's text/select steps
5
+ * need. Stagehand `act`/`observe` are measured blind inside that OOPIF, and
6
+ * `verifyDomEffect` (`flow-runner.ts`) can't locate a `deeplocator=` selector
7
+ * to confirm the write, so both actuators here read the written value back
8
+ * through the same delegate before reporting success — the caller gets a
9
+ * trustworthy boolean instead of a downstream verifier that can never fire.
10
+ *
11
+ * Both actuators prefer one batched `frameTarget.evaluate(buildFillFrameCandidateExpr(...) |
12
+ * buildSelectFrameCandidateExpr(...))` round-trip (`deep-locator-scan.ts`) over
13
+ * the legacy `deepLocator(hop).nth(index).fill()`/`.selectOption()` +
14
+ * `.inputValue()` pair, which pays Stagehand's `index + 1` serial
15
+ * `resolveAtIndex` round-trips per call — the same cost
16
+ * `clickDeepLocatorCandidate` already batches away. The legacy fallback's
17
+ * watchdog budget scales with `index` using
18
+ * {@link DEEP_LOCATOR_CLICK_INDEX_ROUND_TRIP_MS} — the same per-round-trip
19
+ * constant `clickDeepLocatorCandidate` uses — so a legitimately-reachable
20
+ * candidate deep in a dense OOPIF form isn't killed by a budget sized for one
21
+ * round-trip.
22
+ */
23
+ import type { Page } from "@browserbasehq/stagehand";
24
+ import { type FrameTarget } from "../scraper/frame-target";
25
+ /** Overrides for the watchdog timeout this module applies to every `deepLocator()` await; tests pass small values so cases don't burn wall-clock. */
26
+ export interface DeepLocatorActuateTimeoutOptions {
27
+ /** Per-call watchdog timeout for `fill()`/`selectOption()`/`inputValue()`. Defaults to {@link DEFAULT_DEEP_LOCATOR_CALL_TIMEOUT_MS}. */
28
+ callTimeoutMs?: number;
29
+ /**
30
+ * Pre-resolved `FrameTarget` to actuate via one batched
31
+ * `evaluate(buildFillFrameCandidateExpr(...) | buildSelectFrameCandidateExpr(...))`
32
+ * round-trip instead of the legacy `nth(index)` delegate pair. When
33
+ * omitted, a single non-polling `probeAttachedFrameTarget(page,
34
+ * frameSelector)` pass (`frame-target.ts`) is attempted internally so
35
+ * existing call sites get the batched fast path for free. Unlike a bare
36
+ * `resolveFrameTarget(page, frameSelector, { timeoutMs: 0 })` pass — which
37
+ * always loses the race against genuine CDP latency — this probe carries a
38
+ * real per-probe budget (`config.scraper.framePresenceProbeFloorMs`), so it
39
+ * can actually land against an already-attached frame under live latency.
40
+ * If the probe doesn't land a resolved child frame, the legacy delegate
41
+ * path runs unchanged — the same degrade contract
42
+ * `deep-locator-candidates.ts`'s `resolveScanFrameTarget` uses for the
43
+ * scan/click seam. A caller that already resolved a `FrameTarget` (e.g.
44
+ * `flow-runner.ts`'s per-step resolution) should pass it here to skip the
45
+ * redundant internal probe.
46
+ */
47
+ frameTarget?: FrameTarget;
48
+ }
49
+ /**
50
+ * Fills the candidate at `index` inside the frame scoped by `frameSelector`
51
+ * with `value`, re-deriving the same hop selector
52
+ * `resolveDeepLocatorCandidates` used (`deep-locator-candidates.ts`) rather
53
+ * than trusting a candidate's display `selector` (`deeplocator=`-prefixed,
54
+ * deliberately not an xpath).
55
+ *
56
+ * Prefers the one-round-trip {@link actuateCandidateBatched} fast path when a
57
+ * frame seam is available: a `written: true` result whose inline `readBack`
58
+ * already matches `value` resolves `true` immediately (no second round-trip
59
+ * needed); a `reason: "not-actionable"` result (the matched element has no
60
+ * layout box) resolves `false` immediately — no delegate write against that
61
+ * same node could succeed either. Every other batched outcome — no frame
62
+ * seam, a rejecting or non-conforming evaluate, `reason: "out-of-range"`, or
63
+ * a `written: true` result whose inline `readBack` disagrees with `value`
64
+ * (e.g. a controlled component's `onChange` reverted the write on a tick the
65
+ * single synchronous evaluate call couldn't observe) — degrades to the
66
+ * legacy `deepLocator(hop).nth(index).fill()` + `.inputValue()` pair rather
67
+ * than trusting the batched call's verdict outright: returns `true` only
68
+ * when that separate read-back equals `value`, and `false` — never a throw —
69
+ * when the delegate rejects the fill/read-back or the read-back disagrees.
70
+ * The legacy path's watchdog budget scales with `index`
71
+ * ({@link DEEP_LOCATOR_CLICK_INDEX_ROUND_TRIP_MS}, the same per-round-trip
72
+ * cost `clickDeepLocatorCandidate`'s legacy fallback charges), so a candidate
73
+ * deep in a dense OOPIF form isn't killed by a budget sized for a single
74
+ * round-trip. A wedged `fill()`/`inputValue()` call that still exceeds that
75
+ * scaled budget rejects with a `WatchdogTimeoutError` instead of hanging the
76
+ * caller, the same "rejects on a genuine hang" contract
77
+ * `clickDeepLocatorCandidate` uses.
78
+ */
79
+ export declare function fillDeepLocatorCandidate(page: Page, frameSelector: string | null | undefined, innerSelector: string, index: number, value: string, timeoutOptions?: DeepLocatorActuateTimeoutOptions): Promise<boolean>;
80
+ /**
81
+ * Selects `value` on the `<select>`-shaped candidate at `index` inside the
82
+ * frame scoped by `frameSelector`, under the same re-derived-hop,
83
+ * batched-first, index-scaled-watchdog-guarded contract as
84
+ * {@link fillDeepLocatorCandidate} — `selectOption()` is the legacy write,
85
+ * and `inputValue()` (which reads a `<select>`'s selected value the same as
86
+ * any other form control) is the legacy confirmation. Differs from
87
+ * `fillDeepLocatorCandidate` in one respect: a batched `written: true` result
88
+ * resolves `true` on its own, without comparing `readBack` to `value` —
89
+ * {@link buildSelectFrameCandidateExpr} matches an option by value OR trimmed
90
+ * label, so `readBack` (the MATCHED option's value) can legitimately differ
91
+ * from a caller-supplied label string even on a successful write.
92
+ */
93
+ export declare function selectDeepLocatorCandidateOption(page: Page, frameSelector: string | null | undefined, innerSelector: string, index: number, value: string, timeoutOptions?: DeepLocatorActuateTimeoutOptions): Promise<boolean>;
94
+ //# sourceMappingURL=deep-locator-actuate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deep-locator-actuate.d.ts","sourceRoot":"","sources":["../../src/scraper/deep-locator-actuate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAUrD,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,wBAAwB,CAAC;AAehC,qJAAqJ;AACrJ,MAAM,WAAW,gCAAgC;IAC/C,wIAAwI;IACxI,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAgHD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACxC,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,cAAc,GAAE,gCAAqC,GACpD,OAAO,CAAC,OAAO,CAAC,CA8BlB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gCAAgC,CACpD,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACxC,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,cAAc,GAAE,gCAAqC,GACpD,OAAO,CAAC,OAAO,CAAC,CA8BlB"}