@enricai/barnacle 1.6.2 → 1.6.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.
- package/README.md +23 -18
- package/dist/api/errors.d.ts +3 -3
- package/dist/api/errors.d.ts.map +1 -1
- package/dist/api/errors.js +4 -4
- package/dist/api/errors.js.map +1 -1
- package/dist/api/helpers/reply.d.ts +1 -1
- package/dist/api/helpers/reply.js +1 -1
- package/dist/cache/keyed-ttl-cache.d.ts +4 -4
- package/dist/cache/keyed-ttl-cache.js +2 -2
- package/dist/lib/applicant-payload.d.ts +4 -4
- package/dist/lib/applicant-payload.js +4 -4
- package/dist/lib/application-address.d.ts +3 -3
- package/dist/lib/application-address.js +5 -5
- package/dist/lib/application-address.js.map +1 -1
- package/dist/lib/application-resume.d.ts +4 -4
- package/dist/lib/application-resume.js +4 -4
- package/dist/lib/dispatch-metrics.js +1 -1
- package/dist/lib/llm/judges/verify-submit.d.ts +1 -1
- package/dist/lib/llm/judges/verify-submit.js +1 -1
- package/dist/lib/llm/schemas.js +3 -3
- package/dist/lib/phone.d.ts +1 -1
- package/dist/lib/phone.js +1 -1
- package/dist/lib/telemetry/call-types.d.ts +1 -1
- package/dist/lib/telemetry/call-types.js +1 -1
- package/dist/lib/tracking-click.d.ts +5 -3
- package/dist/lib/tracking-click.d.ts.map +1 -1
- package/dist/lib/tracking-click.js +5 -3
- package/dist/lib/tracking-click.js.map +1 -1
- package/dist/lib/us-states.d.ts +1 -1
- package/dist/lib/us-states.js +1 -1
- package/dist/plugins/loader.js +2 -2
- package/dist/scraper/cookie-jar.d.ts +2 -2
- package/dist/scraper/cookie-jar.js +2 -2
- package/dist/scraper/errors.d.ts +1 -12
- package/dist/scraper/errors.d.ts.map +1 -1
- package/dist/scraper/errors.js +2 -16
- package/dist/scraper/errors.js.map +1 -1
- package/dist/scraper/flow-runner.d.ts +43 -27
- package/dist/scraper/flow-runner.d.ts.map +1 -1
- package/dist/scraper/flow-runner.js +70 -60
- package/dist/scraper/flow-runner.js.map +1 -1
- package/dist/scraper/http-client.d.ts +11 -1
- package/dist/scraper/http-client.d.ts.map +1 -1
- package/dist/scraper/http-client.js +90 -3
- package/dist/scraper/http-client.js.map +1 -1
- package/dist/scraper/raw-fetch.d.ts +2 -2
- package/dist/scraper/raw-fetch.js +1 -1
- package/dist/scraper/require-response-field.d.ts +1 -1
- package/dist/scraper/require-response-field.js +1 -1
- package/dist/scraper/session-warmup.d.ts +1 -1
- package/dist/scraper/session-warmup.js +1 -1
- package/dist/scripts/migrate-telemetry-dir-names.d.ts +2 -2
- package/dist/scripts/migrate-telemetry-dir-names.d.ts.map +1 -1
- package/dist/scripts/migrate-telemetry-dir-names.js +1 -1
- package/dist/scripts/recon-browser.d.ts +2 -2
- package/dist/scripts/recon-browser.js +14 -14
- package/dist/scripts/recon-browser.js.map +1 -1
- package/dist/scripts/recon-generate.d.ts +24 -0
- package/dist/scripts/recon-generate.d.ts.map +1 -1
- package/dist/scripts/recon-generate.js +23 -7
- package/dist/scripts/recon-generate.js.map +1 -1
- package/dist/scripts/recon-replay-jobs.d.ts +9 -4
- package/dist/scripts/recon-replay-jobs.d.ts.map +1 -1
- package/dist/scripts/recon-replay-jobs.js +15 -8
- package/dist/scripts/recon-replay-jobs.js.map +1 -1
- package/dist/scripts/recon-shared.d.ts +10 -0
- package/dist/scripts/recon-shared.d.ts.map +1 -1
- package/dist/scripts/recon-shared.js +25 -0
- package/dist/scripts/recon-shared.js.map +1 -1
- package/dist/site-plugin.d.ts +4 -4
- package/dist/testing/persona-fixture.d.ts +4 -4
- package/dist/testing/persona-fixture.d.ts.map +1 -1
- package/dist/testing/persona-fixture.js +4 -4
- package/dist/testing/persona-fixture.js.map +1 -1
- package/dist/types/dispatch-metrics.d.ts +1 -1
- package/dist/types/dispatch-metrics.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -124,9 +124,9 @@ Each file is a JSON object:
|
|
|
124
124
|
"timestamp": "2026-07-18T12:34:56.789Z",
|
|
125
125
|
"cookies": [
|
|
126
126
|
{
|
|
127
|
-
"name": "
|
|
127
|
+
"name": "_acme_attr",
|
|
128
128
|
"value": "abc123",
|
|
129
|
-
"domain": ".
|
|
129
|
+
"domain": ".acme.example",
|
|
130
130
|
"path": "/",
|
|
131
131
|
"expires": 1234567890,
|
|
132
132
|
"size": 20,
|
|
@@ -144,7 +144,7 @@ Field reference (mirrors CDP's `Network.Cookie` type verbatim — no remapping b
|
|
|
144
144
|
| Field | Meaning |
|
|
145
145
|
| --- | --- |
|
|
146
146
|
| `name` / `value` | The cookie's name and value. |
|
|
147
|
-
| `domain` | Scope, e.g. `.
|
|
147
|
+
| `domain` | Scope, e.g. `.acme.example` (all subdomains) vs. `apply.acme.example` (exact host) — the detail needed to tell a click-domain cookie from an apply-domain cookie. |
|
|
148
148
|
| `path` | Cookie path scope. |
|
|
149
149
|
| `expires` | Raw CDP epoch-seconds number; `-1` means a session cookie (also reflected in `session: true`). Not reformatted — read it as CDP reports it. |
|
|
150
150
|
| `size` | Cookie size in bytes, as reported by CDP. |
|
|
@@ -154,7 +154,7 @@ Field reference (mirrors CDP's `Network.Cookie` type verbatim — no remapping b
|
|
|
154
154
|
|
|
155
155
|
If the CDP call fails, the file still writes but with an empty `cookies` array and an `error` string field carrying the failure message — cookie telemetry is best-effort and never aborts the run.
|
|
156
156
|
|
|
157
|
-
**Diffing what a phase established:** to isolate what a specific traversal (e.g.
|
|
157
|
+
**Diffing what a phase established:** to isolate what a specific traversal (e.g. a tracking-click redirect) minted, diff its `post-step` snapshot against the `pre-step` snapshot for the *next* step — cookies present in the later file but absent from the earlier one were established during that step:
|
|
158
158
|
|
|
159
159
|
```bash
|
|
160
160
|
diff <(jq -S .cookies <run-dir>/cookies/004-post-step-click-the-apply-button.json) \
|
|
@@ -501,8 +501,7 @@ When the smoke test fails: re-run `pnpm run recon:browser` → diff `<run-dir>/g
|
|
|
501
501
|
| `HttpBotChallengeError` | 401 / 403 | **Yes** | Residential proxy IP may get through |
|
|
502
502
|
| `HttpServerError` | 5xx | **Yes** | Server-side outage; recovery strategy is the same |
|
|
503
503
|
| `HttpRateLimitError` | 429 | **No** | A 429 means the configured rps ceiling is too high. Routing to the browser path would just hit the same ceiling and waste a Steel session. The right response is to lower the Bottleneck `minTime` in `contract.ts` and re-deploy. |
|
|
504
|
-
| `HttpUrlLockedError` | 429 | **No** |
|
|
505
|
-
| `OracleTokenExpiredError` | Any | **No** | Oracle HCM returned a plain-text `ORA_IRC_TOKEN_EXPIRED` sentinel. Retryable so p-retry keeps retrying, but distinct from `UnknownScraperError` so the encompass http-flow can catch exactly this class and re-mint the AccessCode before retrying. |
|
|
504
|
+
| `HttpUrlLockedError` | 429 | **No** | A plugin's `classifyResponseBody` detected a terminal resource-lock sentinel — the URL is locked at the target's end. Neither a retry nor a browser session can succeed; the caller must back off and surface a "retry later" state. |
|
|
506
505
|
| `UnknownScraperError` | Any | **No** | Transient network failure or unclassified non-JSON response. `createHttpClient` retries up to 2 times internally; if all attempts fail, the error propagates as `ScrapeFailureError`. |
|
|
507
506
|
|
|
508
507
|
### Cache deduplication
|
|
@@ -906,8 +905,8 @@ Every response — success or error — uses the same envelope shape so clients
|
|
|
906
905
|
| 2003 | `SCRAPE_FAILURE` | Browser automation failed after retries |
|
|
907
906
|
| 2004 | `CAPTCHA_ENCOUNTERED` | CAPTCHA challenge could not be resolved |
|
|
908
907
|
| 2005 | `EMPTY_RESULTS` | Scrape succeeded but returned no data |
|
|
909
|
-
| 2006 | `VERIFICATION_TRIGGER_FAILED` | OTP trigger to
|
|
910
|
-
| 2007 | `RESUME_INVALID_OTP` | Provided OTP was rejected by
|
|
908
|
+
| 2006 | `VERIFICATION_TRIGGER_FAILED` | OTP trigger to the target site failed |
|
|
909
|
+
| 2007 | `RESUME_INVALID_OTP` | Provided OTP was rejected by the target site |
|
|
911
910
|
| 2008 | `URL_LOCKED` | Upstream vendor locked the target URL; back off and retry later |
|
|
912
911
|
|
|
913
912
|
Full definitions: `src/api/schemas/common.ts`.
|
|
@@ -928,16 +927,22 @@ Each registered plugin exposes a POST route following the default convention:
|
|
|
928
927
|
answers are absent (e.g. Gender, Degree, EducationLevel, SignatureFullName) or
|
|
929
928
|
a repeat-applicant OTP challenge, `/run` returns HTTP 200 with
|
|
930
929
|
`{ needsUserInfo: true, missingFields: [{ field, question }], requiresOtp }`
|
|
931
|
-
instead of a submission result, so
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
930
|
+
instead of a submission result, so the caller can collect the gaps and hand back.
|
|
931
|
+
|
|
932
|
+
Plugins declare their own extra routes via `meta.extraRoutes`, which core registers
|
|
933
|
+
uniformly — the engine has no per-site knowledge. Route paths are declared as
|
|
934
|
+
`:siteId` templates, so the concrete path is whatever the plugin's `siteId` is. Two
|
|
935
|
+
conventional shapes a plugin may add:
|
|
936
|
+
|
|
937
|
+
- `POST /v1/<siteId>/resume` — body = the full original candidate payload plus
|
|
938
|
+
`collectedData` (and `otpCode` where the site issues an OTP challenge); re-runs the
|
|
939
|
+
hot path with the collected answers merged in; returns the same `{ verified }`
|
|
940
|
+
envelope as `/run`, or `2007 RESUME_INVALID_OTP` if the OTP is rejected
|
|
941
|
+
- `POST /v1/<siteId>/trigger-otp` — body `{ offerId, email }`; asks the target site to
|
|
942
|
+
email an OTP to a repeat applicant; returns `{ success: true }` or a
|
|
943
|
+
`2006 VERIFICATION_TRIGGER_FAILED` error envelope
|
|
944
|
+
|
|
945
|
+
See `examples/plugins/acme-jobs.plugin.json` for a runnable declaration.
|
|
941
946
|
|
|
942
947
|
Operational routes:
|
|
943
948
|
- `GET /healthz` — liveness probe
|
package/dist/api/errors.d.ts
CHANGED
|
@@ -71,9 +71,9 @@ export declare class EmptyResultsApiError extends ApiError {
|
|
|
71
71
|
constructor(message?: string);
|
|
72
72
|
}
|
|
73
73
|
/**
|
|
74
|
-
* The OTP a candidate supplied to /resume was rejected by
|
|
75
|
-
* surfaces as a 401/403 on the first
|
|
76
|
-
* generic scrape failure so
|
|
74
|
+
* The OTP a candidate supplied to /resume was rejected by the target site, which
|
|
75
|
+
* typically surfaces as a 401/403 on the first authenticated call. Distinct from a
|
|
76
|
+
* generic scrape failure so the caller can re-prompt for the code rather than
|
|
77
77
|
* treating the resume as terminally failed.
|
|
78
78
|
*/
|
|
79
79
|
export declare class InvalidOtpError extends ApiError {
|
package/dist/api/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwC,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAE5F;;;;GAIG;AACH,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,eAAe,EAAE,CAAC;KAC5B,CAAC;CACH;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAgCzD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED;;;;GAIG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,UAAU,EAAE,MAAM,CAAC;IAEnC,YAAY,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,SAAU,EAKjE;CACF;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,YAAY,OAAO,SAA4C,EAE9D;CACF;AAED,qBAAa,mBAAoB,SAAQ,QAAQ;IAC/C,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED,qBAAa,qBAAsB,SAAQ,QAAQ;IACjD,YAAY,OAAO,SAAwB,EAE1C;CACF;AAED;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,YAAY,OAAO,SAA2D,EAE7E;CACF;AAED,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,YAAY,OAAO,SAA0C,EAE5D;CACF;AAED,qBAAa,uBAAwB,SAAQ,QAAQ;IACnD,YAAY,OAAO,SAA2C,EAE7D;CACF;AAED,qBAAa,oBAAqB,SAAQ,QAAQ;IAChD,YAAY,OAAO,SAA6C,EAE/D;CACF;AAED;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAO,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwC,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAE5F;;;;GAIG;AACH,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,eAAe,EAAE,CAAC;KAC5B,CAAC;CACH;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAgCzD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED;;;;GAIG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,UAAU,EAAE,MAAM,CAAC;IAEnC,YAAY,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,SAAU,EAKjE;CACF;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,YAAY,OAAO,SAA4C,EAE9D;CACF;AAED,qBAAa,mBAAoB,SAAQ,QAAQ;IAC/C,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED,qBAAa,qBAAsB,SAAQ,QAAQ;IACjD,YAAY,OAAO,SAAwB,EAE1C;CACF;AAED;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,YAAY,OAAO,SAA2D,EAE7E;CACF;AAED,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,YAAY,OAAO,SAA0C,EAE5D;CACF;AAED,qBAAa,uBAAwB,SAAQ,QAAQ;IACnD,YAAY,OAAO,SAA2C,EAE7D;CACF;AAED,qBAAa,oBAAqB,SAAQ,QAAQ;IAChD,YAAY,OAAO,SAA6C,EAE/D;CACF;AAED;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAO,SAAiD,EAEnE;CACF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,MAAM,EACf,UAAU,SAAU,GACnB,gBAAgB,CAgBlB"}
|
package/dist/api/errors.js
CHANGED
|
@@ -129,13 +129,13 @@ class EmptyResultsApiError extends ApiError {
|
|
|
129
129
|
}
|
|
130
130
|
exports.EmptyResultsApiError = EmptyResultsApiError;
|
|
131
131
|
/**
|
|
132
|
-
* The OTP a candidate supplied to /resume was rejected by
|
|
133
|
-
* surfaces as a 401/403 on the first
|
|
134
|
-
* generic scrape failure so
|
|
132
|
+
* The OTP a candidate supplied to /resume was rejected by the target site, which
|
|
133
|
+
* typically surfaces as a 401/403 on the first authenticated call. Distinct from a
|
|
134
|
+
* generic scrape failure so the caller can re-prompt for the code rather than
|
|
135
135
|
* treating the resume as terminally failed.
|
|
136
136
|
*/
|
|
137
137
|
class InvalidOtpError extends ApiError {
|
|
138
|
-
constructor(message = "provided OTP was rejected by
|
|
138
|
+
constructor(message = "provided OTP was rejected by the target site") {
|
|
139
139
|
super(common_1.ERROR_CODES.RESUME_INVALID_OTP, message);
|
|
140
140
|
}
|
|
141
141
|
}
|
package/dist/api/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAqC;AACrC,yDAAiE;AAEjE,iDAA4F;AAsB5F;;;;;;;;GAQG;AACH,2BAAkC,IAAe;IAC/C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,oBAAW,CAAC,uBAAuB;YACtC,OAAO,+BAAW,CAAC,eAAe,CAAC;QACrC,KAAK,oBAAW,CAAC,mBAAmB;YAClC,OAAO,+BAAW,CAAC,YAAY,CAAC;QAClC,KAAK,oBAAW,CAAC,cAAc,CAAC;QAChC,KAAK,oBAAW,CAAC,eAAe,CAAC;QACjC,KAAK,oBAAW,CAAC,aAAa;YAC5B,OAAO,+BAAW,CAAC,WAAW,CAAC;QACjC,KAAK,oBAAW,CAAC,kBAAkB,CAAC;QACpC,KAAK,oBAAW,CAAC,eAAe;YAC9B,OAAO,+BAAW,CAAC,SAAS,CAAC;QAC/B,KAAK,oBAAW,CAAC,iBAAiB,CAAC;QACnC,KAAK,oBAAW,CAAC,UAAU;YACzB,OAAO,+BAAW,CAAC,iBAAiB,CAAC;QACvC,KAAK,oBAAW,CAAC,QAAQ;YACvB,OAAO,+BAAW,CAAC,eAAe,CAAC;QACrC,KAAK,oBAAW,CAAC,aAAa;YAC5B,OAAO,+BAAW,CAAC,SAAS,CAAC;QAC/B,KAAK,oBAAW,CAAC,iBAAiB,CAAC;QACnC,KAAK,oBAAW,CAAC,aAAa,CAAC;QAC/B,KAAK,oBAAW,CAAC,YAAY,CAAC;QAC9B,KAAK,oBAAW,CAAC,cAAc,CAAC;QAChC,KAAK,oBAAW,CAAC,mBAAmB,CAAC;QACrC,KAAK,oBAAW,CAAC,2BAA2B;YAC1C,OAAO,+BAAW,CAAC,qBAAqB,CAAC;QAC3C,KAAK,oBAAW,CAAC,kBAAkB;YACjC,OAAO,+BAAW,CAAC,WAAW,CAAC;QACjC;YACE,OAAO,+BAAW,CAAC,qBAAqB,CAAC;IAC7C,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,0BAAiC,MAAc;IAC7C,IAAI,CAAC;QACH,OAAO,IAAA,mCAAe,EAAC,MAAM,CAAC;aAC3B,WAAW,EAAE;aACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,MAAM,EAAE,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,cAAsB,SAAQ,KAAK;IACjB,IAAI,CAAY;IAChB,UAAU,CAAS;IAEnC,YAAY,IAAe,EAAE,OAAe,EAAE,UAAU,GAAG,OAAO;QAChE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;;AAED,uBAA+B,SAAQ,QAAQ;IAC7C,YAAY,OAAO,GAAG,yCAAyC;QAC7D,KAAK,CAAC,oBAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;CACF;;AAED,yBAAiC,SAAQ,QAAQ;IAC/C,YAAY,OAAe;QACzB,KAAK,CAAC,oBAAW,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;CACF;;AAED,2BAAmC,SAAQ,QAAQ;IACjD,YAAY,OAAO,GAAG,qBAAqB;QACzC,KAAK,CAAC,oBAAW,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;CACF;;AAED;;;;GAIG;AACH,oBAA4B,SAAQ,QAAQ;IAC1C,YAAY,OAAO,GAAG,wDAAwD;QAC5E,KAAK,CAAC,oBAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;CACF;;AAED,wBAAgC,SAAQ,QAAQ;IAC9C,YAAY,OAAO,GAAG,uCAAuC;QAC3D,KAAK,CAAC,oBAAW,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;;AAED,6BAAqC,SAAQ,QAAQ;IACnD,YAAY,OAAO,GAAG,wCAAwC;QAC5D,KAAK,CAAC,oBAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;CACF;;AAED,0BAAkC,SAAQ,QAAQ;IAChD,YAAY,OAAO,GAAG,0CAA0C;QAC9D,KAAK,CAAC,oBAAW,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;CACF;;AAED;;;;;GAKG;AACH,qBAA6B,SAAQ,QAAQ;IAC3C,YAAY,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import type { ErrorCode } from "../../api/schemas/common";
|
|
|
3
3
|
import type { DispatchMetrics } from "../../types/dispatch-metrics";
|
|
4
4
|
/**
|
|
5
5
|
* Sends a standard error envelope on the given reply, optionally including
|
|
6
|
-
* dispatch metrics so
|
|
6
|
+
* dispatch metrics so the caller can forward step-level detail even on failures.
|
|
7
7
|
*/
|
|
8
8
|
export declare function replyWithError(reply: FastifyReply, code: ErrorCode, message: string, detailType?: string, statusOverride?: number, metrics?: DispatchMetrics): void;
|
|
9
9
|
//# sourceMappingURL=reply.d.ts.map
|
|
@@ -4,7 +4,7 @@ exports.replyWithError = replyWithError;
|
|
|
4
4
|
const errors_1 = require("../../api/errors");
|
|
5
5
|
/**
|
|
6
6
|
* Sends a standard error envelope on the given reply, optionally including
|
|
7
|
-
* dispatch metrics so
|
|
7
|
+
* dispatch metrics so the caller can forward step-level detail even on failures.
|
|
8
8
|
*/
|
|
9
9
|
function replyWithError(reply, code, message, detailType, statusOverride, metrics) {
|
|
10
10
|
const envelope = (0, errors_1.buildErrorEnvelope)(code, message, detailType);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Generic per-key TTL cache factory with single-flight warmup coalescing.
|
|
3
3
|
*
|
|
4
|
-
* Why this exists: both `src/cache/response-cache.ts` and
|
|
5
|
-
* `
|
|
4
|
+
* Why this exists: both `src/cache/response-cache.ts` and a plugin's
|
|
5
|
+
* `tokens/cache.ts` independently hand-roll the same
|
|
6
6
|
* inFlight Map + LRUCache wiring. Any future site needing a per-key token
|
|
7
7
|
* or session cache would copy it a third time. This factory captures the
|
|
8
8
|
* shared invariant — promise registered synchronously before any yield so
|
|
@@ -33,8 +33,8 @@ export interface KeyedTtlCache<T extends object> {
|
|
|
33
33
|
* in-flight promise is written to the map *synchronously* — before any
|
|
34
34
|
* microtask yield — guaranteeing that every concurrent caller for the same
|
|
35
35
|
* key awaits the same promise instead of kicking off a duplicate warmup.
|
|
36
|
-
* See the same pattern at `response-cache.ts:108-111` and
|
|
37
|
-
* `
|
|
36
|
+
* See the same pattern at `response-cache.ts:108-111` and a plugin's
|
|
37
|
+
* `tokens/cache.ts:124-125`.
|
|
38
38
|
*
|
|
39
39
|
* `getOrWarm` returns `{ ...value }` (a shallow copy) to each caller so
|
|
40
40
|
* that an in-place mutation of the master cache entry (e.g. rotating a
|
|
@@ -13,8 +13,8 @@ const lru_cache_1 = require("lru-cache");
|
|
|
13
13
|
* in-flight promise is written to the map *synchronously* — before any
|
|
14
14
|
* microtask yield — guaranteeing that every concurrent caller for the same
|
|
15
15
|
* key awaits the same promise instead of kicking off a duplicate warmup.
|
|
16
|
-
* See the same pattern at `response-cache.ts:108-111` and
|
|
17
|
-
* `
|
|
16
|
+
* See the same pattern at `response-cache.ts:108-111` and a plugin's
|
|
17
|
+
* `tokens/cache.ts:124-125`.
|
|
18
18
|
*
|
|
19
19
|
* `getOrWarm` returns `{ ...value }` (a shallow copy) to each caller so
|
|
20
20
|
* that an in-place mutation of the master cache entry (e.g. rotating a
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared Zod schema for the applicant identity, address, and resume fields
|
|
3
|
-
* that
|
|
4
|
-
*
|
|
5
|
-
* source of truth so a field-type change propagates to every
|
|
6
|
-
*
|
|
3
|
+
* that JSON-envelope ATS plugins require on every submission. Multiple
|
|
4
|
+
* production plugins declare the same 13 fields; this module is the single
|
|
5
|
+
* source of truth so a field-type change propagates to every plugin of this
|
|
6
|
+
* shape from one place.
|
|
7
7
|
*
|
|
8
8
|
* Diverging fields (Email, BaseUrl, ClickUrl, JobId, Answers) stay in each
|
|
9
9
|
* plugin's own contract because their types or presence differ across plugins.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* Shared Zod schema for the applicant identity, address, and resume fields
|
|
4
|
-
* that
|
|
5
|
-
*
|
|
6
|
-
* source of truth so a field-type change propagates to every
|
|
7
|
-
*
|
|
4
|
+
* that JSON-envelope ATS plugins require on every submission. Multiple
|
|
5
|
+
* production plugins declare the same 13 fields; this module is the single
|
|
6
|
+
* source of truth so a field-type change propagates to every plugin of this
|
|
7
|
+
* shape from one place.
|
|
8
8
|
*
|
|
9
9
|
* Diverging fields (Email, BaseUrl, ClickUrl, JobId, Answers) stay in each
|
|
10
10
|
* plugin's own contract because their types or presence differ across plugins.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Shared Zod fragment for the six address fields that
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Shared Zod fragment for the six address fields that multiple production ATS
|
|
3
|
+
* plugins require on every submission. Extracted so a field-type change
|
|
4
|
+
* propagates from one place to every consumer.
|
|
5
5
|
*/
|
|
6
6
|
import { z } from "zod/v4";
|
|
7
7
|
export declare const ApplicantAddressSchema: z.ZodObject<{
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Shared Zod fragment for the six address fields that
|
|
4
|
-
*
|
|
5
|
-
*
|
|
3
|
+
* Shared Zod fragment for the six address fields that multiple production ATS
|
|
4
|
+
* plugins require on every submission. Extracted so a field-type change
|
|
5
|
+
* propagates from one place to every consumer.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.ApplicantAddressSchema = void 0;
|
|
@@ -13,8 +13,8 @@ exports.ApplicantAddressSchema = v4_1.z.object({
|
|
|
13
13
|
State: v4_1.z.string().min(1),
|
|
14
14
|
PostalCode: v4_1.z.string().min(1),
|
|
15
15
|
Country: v4_1.z.string().min(1),
|
|
16
|
-
/** Applicant's home county. Required by some tenants
|
|
17
|
-
*
|
|
16
|
+
/** Applicant's home county. Required by some tenants before submit
|
|
17
|
+
* unlocks. */
|
|
18
18
|
County: v4_1.z.string().min(1),
|
|
19
19
|
});
|
|
20
20
|
//# sourceMappingURL=application-address.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-address.js","sourceRoot":"","sources":["../../src/lib/application-address.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,+BAA2B;AAEd,QAAA,sBAAsB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC7C,WAAW,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,UAAU,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B;
|
|
1
|
+
{"version":3,"file":"application-address.js","sourceRoot":"","sources":["../../src/lib/application-address.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,+BAA2B;AAEd,QAAA,sBAAsB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC7C,WAAW,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,UAAU,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B;kBACc;IACd,MAAM,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Shared Zod schema for the resume attachment block that
|
|
3
|
-
* plugins require on every submission.
|
|
2
|
+
* Shared Zod schema for the resume attachment block that JSON-envelope ATS
|
|
3
|
+
* plugins require on every submission. Multiple production plugins declare
|
|
4
4
|
* the same four fields; this fragment is extracted so the Buffer/instanceof
|
|
5
5
|
* constraint and the base64 twin are defined once and propagate to every
|
|
6
|
-
*
|
|
6
|
+
* plugin of this shape from one source of truth.
|
|
7
7
|
*
|
|
8
8
|
* `Resume` must be a real Node.js Buffer — multipart form builders call
|
|
9
9
|
* `fd.append("Resume", payload.Resume, ...)` which requires an actual Buffer
|
|
10
10
|
* instance, not a base64 string. `ResumeBase64` carries the same bytes
|
|
11
|
-
* pre-encoded for JSON payloads (e.g. the
|
|
11
|
+
* pre-encoded for JSON payloads (e.g. the `interruption_check` body).
|
|
12
12
|
*/
|
|
13
13
|
import { z } from "zod/v4";
|
|
14
14
|
export declare const ApplicantResumeSchema: z.ZodObject<{
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Shared Zod schema for the resume attachment block that
|
|
4
|
-
* plugins require on every submission.
|
|
3
|
+
* Shared Zod schema for the resume attachment block that JSON-envelope ATS
|
|
4
|
+
* plugins require on every submission. Multiple production plugins declare
|
|
5
5
|
* the same four fields; this fragment is extracted so the Buffer/instanceof
|
|
6
6
|
* constraint and the base64 twin are defined once and propagate to every
|
|
7
|
-
*
|
|
7
|
+
* plugin of this shape from one source of truth.
|
|
8
8
|
*
|
|
9
9
|
* `Resume` must be a real Node.js Buffer — multipart form builders call
|
|
10
10
|
* `fd.append("Resume", payload.Resume, ...)` which requires an actual Buffer
|
|
11
11
|
* instance, not a base64 string. `ResumeBase64` carries the same bytes
|
|
12
|
-
* pre-encoded for JSON payloads (e.g. the
|
|
12
|
+
* pre-encoded for JSON payloads (e.g. the `interruption_check` body).
|
|
13
13
|
*/
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.ApplicantResumeSchema = void 0;
|
|
@@ -5,7 +5,7 @@ exports.MetricsCollector = void 0;
|
|
|
5
5
|
* Lightweight step-timing accumulator for a single dispatch invocation.
|
|
6
6
|
* Instantiated per-request in the dispatch layer, threaded through
|
|
7
7
|
* SitePluginContext, and finalized into a DispatchMetrics payload that
|
|
8
|
-
* ships in the response body for
|
|
8
|
+
* ships in the response body for caller → Segment forwarding.
|
|
9
9
|
*/
|
|
10
10
|
const date_fns_1 = require("date-fns");
|
|
11
11
|
/** Accumulates step-level timing for a single dispatch, producing a DispatchMetrics payload for the response. */
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* Empirically validated 2026-06-11 on two production failure cases:
|
|
8
8
|
* - Case A (was wrongly flagged as failure by the regex): verdict=true,
|
|
9
9
|
* correctly identified dom_signal="uapp-universal-submitted-page" and
|
|
10
|
-
* url_signal="
|
|
10
|
+
* url_signal="/<vendor>/applied".
|
|
11
11
|
* - Case B (genuinely stuck, 10 ng-invalid markers, no success DOM):
|
|
12
12
|
* verdict=false with a coherent reason about why submission failed.
|
|
13
13
|
*
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* Empirically validated 2026-06-11 on two production failure cases:
|
|
9
9
|
* - Case A (was wrongly flagged as failure by the regex): verdict=true,
|
|
10
10
|
* correctly identified dom_signal="uapp-universal-submitted-page" and
|
|
11
|
-
* url_signal="
|
|
11
|
+
* url_signal="/<vendor>/applied".
|
|
12
12
|
* - Case B (genuinely stuck, 10 ng-invalid markers, no success DOM):
|
|
13
13
|
* verdict=false with a coherent reason about why submission failed.
|
|
14
14
|
*
|
package/dist/lib/llm/schemas.js
CHANGED
|
@@ -38,9 +38,9 @@ exports.RECON_FLOW_STEP_SCHEMA = v4_1.z.union([
|
|
|
38
38
|
* When true, the step is treated as the canonical submit click for the
|
|
39
39
|
* `submitEndpointPattern` verifier even when its position in the flow
|
|
40
40
|
* is not the last index. The pre-2026-06-15 implementation gated the
|
|
41
|
-
* pre-submit DOM probe on `isFinalStep` only, but real
|
|
42
|
-
* put the submit click in the middle of the step list (
|
|
43
|
-
* Submit was at index 55/328) and follow it with post-submit
|
|
41
|
+
* pre-submit DOM probe on `isFinalStep` only, but real production flows
|
|
42
|
+
* put the submit click in the middle of the step list (one measured
|
|
43
|
+
* tenant's Submit was at index 55/328) and follow it with post-submit
|
|
44
44
|
* verification steps. With this flag set, the probe + verifier fire
|
|
45
45
|
* at the actual submit click, not at the unrelated last step.
|
|
46
46
|
*/
|
package/dist/lib/phone.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Parses a US phone string into area code and subscriber number.
|
|
3
|
-
*
|
|
3
|
+
* Some ATS backends require the phone split into `areaCode` (first 3 digits) and
|
|
4
4
|
* `number` (remaining digits). Inputs shorter than 10 digits get an empty
|
|
5
5
|
* `areaCode` so the partial number is still submitted as-is.
|
|
6
6
|
*/
|
package/dist/lib/phone.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.parsePhone = parsePhone;
|
|
4
4
|
/**
|
|
5
5
|
* Parses a US phone string into area code and subscriber number.
|
|
6
|
-
*
|
|
6
|
+
* Some ATS backends require the phone split into `areaCode` (first 3 digits) and
|
|
7
7
|
* `number` (remaining digits). Inputs shorter than 10 digits get an empty
|
|
8
8
|
* `areaCode` so the partial number is still submitted as-is.
|
|
9
9
|
*/
|
|
@@ -26,7 +26,7 @@ export declare const CALL_TYPE_STAGEHAND_EXTRACT = "stagehand-extract";
|
|
|
26
26
|
/**
|
|
27
27
|
* Haiku 4.5 judge for submit-success verification. Replaces the per-site
|
|
28
28
|
* regex (`submitEndpointPattern`) that mislabeled successful submits as
|
|
29
|
-
* failures whenever
|
|
29
|
+
* failures whenever a site used a different POST URL than the regex
|
|
30
30
|
* expected. The judge receives evidence (recent network captures, page
|
|
31
31
|
* URL/title, unfocused observe, site criteria) and returns a discriminated
|
|
32
32
|
* verdict — verified=true requires multi-signal corroboration to prevent
|
|
@@ -29,7 +29,7 @@ exports.CALL_TYPE_STAGEHAND_EXTRACT = "stagehand-extract";
|
|
|
29
29
|
/**
|
|
30
30
|
* Haiku 4.5 judge for submit-success verification. Replaces the per-site
|
|
31
31
|
* regex (`submitEndpointPattern`) that mislabeled successful submits as
|
|
32
|
-
* failures whenever
|
|
32
|
+
* failures whenever a site used a different POST URL than the regex
|
|
33
33
|
* expected. The judge receives evidence (recent network captures, page
|
|
34
34
|
* URL/title, unfocused observe, site criteria) and returns a discriminated
|
|
35
35
|
* verdict — verified=true requires multi-signal corroboration to prevent
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Fire-and-forget background click for
|
|
2
|
+
* Fire-and-forget background click for vendor click-tracking URLs.
|
|
3
3
|
* After a successful submission, Barnacle navigates to the tracking URL
|
|
4
|
-
* in a short-lived Browserbase session so
|
|
4
|
+
* in a short-lived Browserbase session so the tracking vendor records the
|
|
5
|
+
* Click event.
|
|
5
6
|
*
|
|
6
|
-
* Navigation pattern is proven against click
|
|
7
|
+
* Navigation pattern is proven against production click-tracking domains
|
|
8
|
+
* with advancedStealth.
|
|
7
9
|
* No CDP behavioral signals are needed; those are only required when extracting
|
|
8
10
|
* DataDome tokens for subsequent Node HTTP requests.
|
|
9
11
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking-click.d.ts","sourceRoot":"","sources":["../../src/lib/tracking-click.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tracking-click.d.ts","sourceRoot":"","sources":["../../src/lib/tracking-click.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA0DH;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAK3E;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAO3E"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Fire-and-forget background click for
|
|
3
|
+
* Fire-and-forget background click for vendor click-tracking URLs.
|
|
4
4
|
* After a successful submission, Barnacle navigates to the tracking URL
|
|
5
|
-
* in a short-lived Browserbase session so
|
|
5
|
+
* in a short-lived Browserbase session so the tracking vendor records the
|
|
6
|
+
* Click event.
|
|
6
7
|
*
|
|
7
|
-
* Navigation pattern is proven against click
|
|
8
|
+
* Navigation pattern is proven against production click-tracking domains
|
|
9
|
+
* with advancedStealth.
|
|
8
10
|
* No CDP behavioral signals are needed; those are only required when extracting
|
|
9
11
|
* DataDome tokens for subsequent Node HTTP requests.
|
|
10
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking-click.js","sourceRoot":"","sources":["../../src/lib/tracking-click.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"tracking-click.js","sourceRoot":"","sources":["../../src/lib/tracking-click.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/us-states.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared US state and territory name→abbreviation map. Extracted from
|
|
3
|
-
* site-specific copies in
|
|
3
|
+
* site-specific copies in multiple plugins so any plugin can
|
|
4
4
|
* resolve a full state name (or a 2-letter code) to an uppercase abbreviation
|
|
5
5
|
* without duplicating this data.
|
|
6
6
|
*
|
package/dist/lib/us-states.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* Shared US state and territory name→abbreviation map. Extracted from
|
|
4
|
-
* site-specific copies in
|
|
4
|
+
* site-specific copies in multiple plugins so any plugin can
|
|
5
5
|
* resolve a full state name (or a 2-letter code) to an uppercase abbreviation
|
|
6
6
|
* without duplicating this data.
|
|
7
7
|
*
|
package/dist/plugins/loader.js
CHANGED
|
@@ -278,8 +278,8 @@ async function registerRoutes(app, cfg, plugins) {
|
|
|
278
278
|
}
|
|
279
279
|
/**
|
|
280
280
|
* Fastify registers each `method+url` exactly once, but several plugins declare
|
|
281
|
-
* the SAME parameterized extra route (e.g. `POST /v1/:siteId/resume` for
|
|
282
|
-
*
|
|
281
|
+
* the SAME parameterized extra route (e.g. `POST /v1/:siteId/resume` for two
|
|
282
|
+
* or more sibling plugins). Registering per-plugin throws
|
|
283
283
|
* `FST_ERR_DUPLICATED_ROUTE` and crashes boot.
|
|
284
284
|
*
|
|
285
285
|
* We group extra routes by `method+path` and register each unique path once.
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Cookie-jar snapshot capture via CDP `Network.getAllCookies`. `document.cookie`
|
|
3
3
|
* and Stagehand's own cookie helpers can't see HttpOnly cookies, and
|
|
4
4
|
* `Page.getCookies`/`Network.getCookies` only return cookies scoped to the
|
|
5
|
-
* current frame's URLs — a journey that navigated click
|
|
6
|
-
* apply
|
|
5
|
+
* current frame's URLs — a journey that navigated a click-tracking domain ->
|
|
6
|
+
* an apply domain would miss the click-domain cookies once on the apply
|
|
7
7
|
* page. `Network.getAllCookies` returns the whole-browser jar regardless of
|
|
8
8
|
* the page's current URL, which is what attribution analysis needs.
|
|
9
9
|
*/
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Cookie-jar snapshot capture via CDP `Network.getAllCookies`. `document.cookie`
|
|
4
4
|
* and Stagehand's own cookie helpers can't see HttpOnly cookies, and
|
|
5
5
|
* `Page.getCookies`/`Network.getCookies` only return cookies scoped to the
|
|
6
|
-
* current frame's URLs — a journey that navigated click
|
|
7
|
-
* apply
|
|
6
|
+
* current frame's URLs — a journey that navigated a click-tracking domain ->
|
|
7
|
+
* an apply domain would miss the click-domain cookies once on the apply
|
|
8
8
|
* page. `Network.getAllCookies` returns the whole-browser jar regardless of
|
|
9
9
|
* the page's current URL, which is what attribution analysis needs.
|
|
10
10
|
*/
|
package/dist/scraper/errors.d.ts
CHANGED
|
@@ -149,22 +149,11 @@ export declare class HttpRateLimitError extends ScraperError {
|
|
|
149
149
|
* HTTP request nor a fresh Stagehand browser session can succeed. The caller must
|
|
150
150
|
* back off and surface a "retry later" state rather than burning a Steel session.
|
|
151
151
|
* Kept distinct from HttpRateLimitError so metrics/logs (classifyDispatchError)
|
|
152
|
-
* can tell a
|
|
152
|
+
* can tell a resource lock apart from a self-inflicted 429 rate limit.
|
|
153
153
|
*/
|
|
154
154
|
export declare class HttpUrlLockedError extends ScraperError {
|
|
155
155
|
constructor(message?: string);
|
|
156
156
|
}
|
|
157
|
-
/**
|
|
158
|
-
* @deprecated Removed in 2.0.0. Oracle-specific and no longer thrown by the
|
|
159
|
-
* engine — response-body sentinel detection now lives in the plugin via
|
|
160
|
-
* `HttpClientOptions.classifyResponseBody`. A plugin that needs a retryable
|
|
161
|
-
* token-expiry signal should define its own `ScraperError` subclass (see the
|
|
162
|
-
* encompasshealth plugin). Retained only so existing importers of
|
|
163
|
-
* `@enricai/barnacle/scraper/errors` keep resolving under a minor release.
|
|
164
|
-
*/
|
|
165
|
-
export declare class OracleTokenExpiredError extends ScraperError {
|
|
166
|
-
constructor(message?: string);
|
|
167
|
-
}
|
|
168
157
|
/**
|
|
169
158
|
* Structured result returned (not thrown) by the hot path when it cannot
|
|
170
159
|
* complete the application because the user must supply additional data.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/scraper/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;GAIG;AACH,8BAAsB,YAAa,SAAQ,KAAK;IAC9C,SAAgB,SAAS,EAAE,OAAO,CAAC;IAEnC,YAAY,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAI9C;CACF;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,YAAY,OAAO,SAAkC,EAEpD;CACF;AAED;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,YAAY,OAAO,SAA+B,EAEjD;CACF;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,YAAY;IACpD,YAAY,OAAO,SAA6B,EAE/C;CACF;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,YAAY,OAAO,SAA8B,EAEhD;CACF;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,YAAY,OAAO,SAA4B,EAE9C;CACF;AAED,0GAA0G;AAC1G,MAAM,MAAM,yBAAyB,GACjC,mBAAmB,GACnB,yBAAyB,GACzB,cAAc,GACd,6BAA6B,GAC7B,uBAAuB,GACvB,mBAAmB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IACzC,YACE,OAAO,SAA2D,EAClE,IAAI,GAAE,yBAA+C,EAItD;CACF;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,YAAY,OAAO,SAAkC,EAEpD;CACF;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,YAAY,OAAO,SAAwC,EAE1D;CACF;AAED;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,YAAY,OAAO,SAA0B,EAE5C;CACF;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,YAAY,OAAO,SAAiC,EAEnD;CACF;AAED;;;;;;;;;GASG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,YAAY,OAAO,SAA2B,EAE7C;CACF;AAED
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/scraper/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;GAIG;AACH,8BAAsB,YAAa,SAAQ,KAAK;IAC9C,SAAgB,SAAS,EAAE,OAAO,CAAC;IAEnC,YAAY,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAI9C;CACF;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,YAAY,OAAO,SAAkC,EAEpD;CACF;AAED;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,YAAY,OAAO,SAA+B,EAEjD;CACF;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,YAAY;IACpD,YAAY,OAAO,SAA6B,EAE/C;CACF;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,YAAY,OAAO,SAA8B,EAEhD;CACF;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,YAAY,OAAO,SAA4B,EAE9C;CACF;AAED,0GAA0G;AAC1G,MAAM,MAAM,yBAAyB,GACjC,mBAAmB,GACnB,yBAAyB,GACzB,cAAc,GACd,6BAA6B,GAC7B,uBAAuB,GACvB,mBAAmB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IACzC,YACE,OAAO,SAA2D,EAClE,IAAI,GAAE,yBAA+C,EAItD;CACF;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,YAAY,OAAO,SAAkC,EAEpD;CACF;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,YAAY,OAAO,SAAwC,EAE1D;CACF;AAED;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,YAAY,OAAO,SAA0B,EAE5C;CACF;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,YAAY,OAAO,SAAiC,EAEnD;CACF;AAED;;;;;;;;;GASG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,YAAY,OAAO,SAA2B,EAE7C;CACF;AAED;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,KAAK,CAAC;IAChB,aAAa,EAAE,IAAI,CAAC;IACpB,aAAa,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrD,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAuB,SAAQ,YAAY;IACtD,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,YAAY,WAAW,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAI1D;CACF"}
|
package/dist/scraper/errors.js
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* and the diagnostic it represents.
|
|
14
14
|
*/
|
|
15
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
-
exports.MissingFormMapKeyError = exports.
|
|
16
|
+
exports.MissingFormMapKeyError = exports.HttpUrlLockedError = exports.HttpRateLimitError = exports.HttpServerError = exports.HttpBotChallengeError = exports.HttpSchemaError = exports.StepVerificationError = exports.UnknownScraperError = exports.SessionTimeoutError = exports.SelectorFailureError = exports.EmptyResultsError = exports.CaptchaError = exports.ScraperError = void 0;
|
|
17
17
|
/**
|
|
18
18
|
* Base class for all scraper-internal errors. Each subclass encodes a
|
|
19
19
|
* distinct recovery policy (retryable or not) that retry.ts and loader.ts
|
|
@@ -186,7 +186,7 @@ exports.HttpRateLimitError = HttpRateLimitError;
|
|
|
186
186
|
* HTTP request nor a fresh Stagehand browser session can succeed. The caller must
|
|
187
187
|
* back off and surface a "retry later" state rather than burning a Steel session.
|
|
188
188
|
* Kept distinct from HttpRateLimitError so metrics/logs (classifyDispatchError)
|
|
189
|
-
* can tell a
|
|
189
|
+
* can tell a resource lock apart from a self-inflicted 429 rate limit.
|
|
190
190
|
*/
|
|
191
191
|
class HttpUrlLockedError extends ScraperError {
|
|
192
192
|
constructor(message = "requisition url locked") {
|
|
@@ -194,20 +194,6 @@ class HttpUrlLockedError extends ScraperError {
|
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
196
|
exports.HttpUrlLockedError = HttpUrlLockedError;
|
|
197
|
-
/**
|
|
198
|
-
* @deprecated Removed in 2.0.0. Oracle-specific and no longer thrown by the
|
|
199
|
-
* engine — response-body sentinel detection now lives in the plugin via
|
|
200
|
-
* `HttpClientOptions.classifyResponseBody`. A plugin that needs a retryable
|
|
201
|
-
* token-expiry signal should define its own `ScraperError` subclass (see the
|
|
202
|
-
* encompasshealth plugin). Retained only so existing importers of
|
|
203
|
-
* `@enricai/barnacle/scraper/errors` keep resolving under a minor release.
|
|
204
|
-
*/
|
|
205
|
-
class OracleTokenExpiredError extends ScraperError {
|
|
206
|
-
constructor(message = "oracle token expired (ORA_IRC_TOKEN_EXPIRED)") {
|
|
207
|
-
super(message, true);
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
exports.OracleTokenExpiredError = OracleTokenExpiredError;
|
|
211
197
|
/**
|
|
212
198
|
* Thrown when code that translates stable semantic field keys (`address.city`,
|
|
213
199
|
* `firstName`, `applicantGender`) into tenant-specific GUIDs via a runtime
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/scraper/errors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH;;;;GAIG;AACH,kBAAmC,SAAQ,KAAK;IAC9B,SAAS,CAAU;IAEnC,YAAY,OAAe,EAAE,SAAkB;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;;AAED;;;GAGG;AACH,kBAA0B,SAAQ,YAAY;IAC5C,YAAY,OAAO,GAAG,+BAA+B;QACnD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;GAIG;AACH,uBAA+B,SAAQ,YAAY;IACjD,YAAY,OAAO,GAAG,4BAA4B;QAChD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;GAIG;AACH,0BAAkC,SAAQ,YAAY;IACpD,YAAY,OAAO,GAAG,0BAA0B;QAC9C,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;CACF;;AAED;;;;GAIG;AACH,yBAAiC,SAAQ,YAAY;IACnD,YAAY,OAAO,GAAG,2BAA2B;QAC/C,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;CACF;;AAED;;;GAGG;AACH,yBAAiC,SAAQ,YAAY;IACnD,YAAY,OAAO,GAAG,yBAAyB;QAC7C,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;CACF;;AAWD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,2BAAmC,SAAQ,YAAY;IAC5C,IAAI,CAA4B;IACzC,YACE,OAAO,GAAG,wDAAwD,EAClE,IAAI,GAA8B,mBAAmB;QAErD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;;AAED;;;;GAIG;AACH,qBAA6B,SAAQ,YAAY;IAC/C,YAAY,OAAO,GAAG,+BAA+B;QACnD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;GAGG;AACH,2BAAmC,SAAQ,YAAY;IACrD,YAAY,OAAO,GAAG,qCAAqC;QACzD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;;GAKG;AACH,qBAA6B,SAAQ,YAAY;IAC/C,YAAY,OAAO,GAAG,uBAAuB;QAC3C,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;;GAKG;AACH,wBAAgC,SAAQ,YAAY;IAClD,YAAY,OAAO,GAAG,8BAA8B;QAClD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;;;;;;GASG;AACH,wBAAgC,SAAQ,YAAY;IAClD,YAAY,OAAO,GAAG,wBAAwB;QAC5C,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/scraper/errors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH;;;;GAIG;AACH,kBAAmC,SAAQ,KAAK;IAC9B,SAAS,CAAU;IAEnC,YAAY,OAAe,EAAE,SAAkB;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;;AAED;;;GAGG;AACH,kBAA0B,SAAQ,YAAY;IAC5C,YAAY,OAAO,GAAG,+BAA+B;QACnD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;GAIG;AACH,uBAA+B,SAAQ,YAAY;IACjD,YAAY,OAAO,GAAG,4BAA4B;QAChD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;GAIG;AACH,0BAAkC,SAAQ,YAAY;IACpD,YAAY,OAAO,GAAG,0BAA0B;QAC9C,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;CACF;;AAED;;;;GAIG;AACH,yBAAiC,SAAQ,YAAY;IACnD,YAAY,OAAO,GAAG,2BAA2B;QAC/C,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;CACF;;AAED;;;GAGG;AACH,yBAAiC,SAAQ,YAAY;IACnD,YAAY,OAAO,GAAG,yBAAyB;QAC7C,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;CACF;;AAWD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,2BAAmC,SAAQ,YAAY;IAC5C,IAAI,CAA4B;IACzC,YACE,OAAO,GAAG,wDAAwD,EAClE,IAAI,GAA8B,mBAAmB;QAErD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;;AAED;;;;GAIG;AACH,qBAA6B,SAAQ,YAAY;IAC/C,YAAY,OAAO,GAAG,+BAA+B;QACnD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;GAGG;AACH,2BAAmC,SAAQ,YAAY;IACrD,YAAY,OAAO,GAAG,qCAAqC;QACzD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;;GAKG;AACH,qBAA6B,SAAQ,YAAY;IAC/C,YAAY,OAAO,GAAG,uBAAuB;QAC3C,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;;GAKG;AACH,wBAAgC,SAAQ,YAAY;IAClD,YAAY,OAAO,GAAG,8BAA8B;QAClD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAED;;;;;;;;;GASG;AACH,wBAAgC,SAAQ,YAAY;IAClD,YAAY,OAAO,GAAG,wBAAwB;QAC5C,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;;AAeD;;;;;;;;;;;;;GAaG;AACH,4BAAoC,SAAQ,YAAY;IAC7C,WAAW,CAAoB;IAC/B,OAAO,CAAS;IACzB,YAAY,WAA8B,EAAE,OAAe;QACzD,KAAK,CAAC,mCAAmC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QACzF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF"}
|