@enricai/barnacle 1.6.3 → 1.6.5
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 +1 -0
- package/dist/scraper/http-client.d.ts +14 -2
- package/dist/scraper/http-client.d.ts.map +1 -1
- package/dist/scraper/http-client.js +5 -1
- package/dist/scraper/http-client.js.map +1 -1
- package/dist/scraper/rate-limited-json-client.d.ts +1 -1
- package/dist/scraper/rate-limited-json-client.d.ts.map +1 -1
- package/dist/scripts/recon-generate-multicall-fixture.d.ts +36 -0
- package/dist/scripts/recon-generate-multicall-fixture.d.ts.map +1 -0
- package/dist/scripts/recon-generate-multicall-fixture.js +102 -0
- package/dist/scripts/recon-generate-multicall-fixture.js.map +1 -0
- package/dist/scripts/recon-generate.d.ts +25 -0
- package/dist/scripts/recon-generate.d.ts.map +1 -1
- package/dist/scripts/recon-generate.js +106 -38
- package/dist/scripts/recon-generate.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +23 -0
- package/dist/server.js.map +1 -1
- package/dist/site-plugin.d.ts +6 -0
- package/dist/site-plugin.d.ts.map +1 -1
- package/dist/testing/replay-integration-suite.d.mts.map +1 -1
- package/dist/testing/replay-integration-suite.mjs.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -338,6 +338,7 @@ interface SitePlugin<TPayload, TResult> {
|
|
|
338
338
|
| `taskTimeoutMs?` | `number` | Override the pool's 60-minute per-task hang ceiling for this plugin only — set when the site's normal latency is well below the default and a faster failure is preferable |
|
|
339
339
|
| `apiVersion?` | `string` | Semver range targeting a plugin API version (e.g. `"^1.0.0"`); core disables the plugin on a major-version mismatch. Absent means "accept any version." |
|
|
340
340
|
| `extraRoutes?` | `readonly SitePluginExtraRoute[]` | Extra non-run routes (OTP trigger, resume, etc.) that core registers as authenticated Fastify routes at startup. See `SitePluginExtraRoute` in `src/site-plugin.ts`. |
|
|
341
|
+
| `onShutdown?` | `() => Promise<void>` | Optional cleanup for background work the plugin launched fire-and-forget, awaited during graceful shutdown so in-flight work is not abandoned and sessions are not leaked. Mirrors the engine's own drain functions. Bounded by a per-plugin timeout, so a hanging drain cannot stall shutdown. Module plugins only — config-only `*.plugin.json` manifests are pure JSON and cannot declare a function. |
|
|
341
342
|
|
|
342
343
|
### Full plugin skeleton (hot path + browser fallback)
|
|
343
344
|
|
|
@@ -98,8 +98,12 @@ export interface HttpClientOptions<TResponse> {
|
|
|
98
98
|
* the browser `RequestInit` API — keeps the interface portable and prevents
|
|
99
99
|
* callers from bypassing the Bottleneck or Zod layers by passing raw fetch
|
|
100
100
|
* options that the client doesn't know about.
|
|
101
|
+
*
|
|
102
|
+
* `TOverride` defaults to `unknown` for callers that don't need the per-call
|
|
103
|
+
* `schema` escape hatch — `HttpRequestInit` (no type argument) still behaves
|
|
104
|
+
* exactly as before.
|
|
101
105
|
*/
|
|
102
|
-
export interface HttpRequestInit {
|
|
106
|
+
export interface HttpRequestInit<TOverride = unknown> {
|
|
103
107
|
method?: string;
|
|
104
108
|
headers?: Record<string, string>;
|
|
105
109
|
body?: string;
|
|
@@ -112,6 +116,14 @@ export interface HttpRequestInit {
|
|
|
112
116
|
* until the server closes it (~15min for testmail livequery).
|
|
113
117
|
*/
|
|
114
118
|
signal?: AbortSignal;
|
|
119
|
+
/**
|
|
120
|
+
* Validates this call's response against `schema` instead of the client's
|
|
121
|
+
* default schema — the escape hatch a multi-call chain with heterogeneous
|
|
122
|
+
* response shapes needs, since `createHttpClient`'s `schema` option is a
|
|
123
|
+
* single client-wide default (see `HttpClientOptions.schema`). Omitted
|
|
124
|
+
* calls keep validating against the client default exactly as before.
|
|
125
|
+
*/
|
|
126
|
+
schema?: ZodType<TOverride>;
|
|
115
127
|
}
|
|
116
128
|
/**
|
|
117
129
|
* Factory that creates a typed direct-HTTP request function pre-wired with
|
|
@@ -134,5 +146,5 @@ export interface HttpRequestInit {
|
|
|
134
146
|
* Wraps transient network errors in `UnknownScraperError` and retries up to
|
|
135
147
|
* 2 times with exponential backoff before propagating.
|
|
136
148
|
*/
|
|
137
|
-
export declare function createHttpClient<TResponse>(options: HttpClientOptions<TResponse>): (url: string, init?: HttpRequestInit) => Promise<
|
|
149
|
+
export declare function createHttpClient<TResponse>(options: HttpClientOptions<TResponse>): <TOverride = TResponse>(url: string, init?: HttpRequestInit<TOverride>) => Promise<TOverride>;
|
|
138
150
|
//# sourceMappingURL=http-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/scraper/http-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAEzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,EAKL,KAAK,YAAY,EAElB,MAAM,kBAAkB,CAAC;AAc1B;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;OAUG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB,CAAC,SAAS;IAC1C,+DAA+D;IAC/D,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B,yEAAyE;IACzE,UAAU,EAAE,UAAU,CAAC;IACvB,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC9C;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC7B;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,KAAK,YAAY,GAAG,SAAS,CAAC;CAC5F;AAED
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/scraper/http-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAEzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,EAKL,KAAK,YAAY,EAElB,MAAM,kBAAkB,CAAC;AAc1B;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;OAUG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB,CAAC,SAAS;IAC1C,+DAA+D;IAC/D,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B,yEAAyE;IACzE,UAAU,EAAE,UAAU,CAAC;IACvB,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC9C;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC7B;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,KAAK,YAAY,GAAG,SAAS,CAAC;CAC5F;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe,CAAC,SAAS,GAAG,OAAO;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CAC7B;AA+GD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EACxC,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,GACpC,CAAC,SAAS,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,CA+L/F"}
|
|
@@ -191,6 +191,10 @@ function createHttpClient(options) {
|
|
|
191
191
|
// binding declares.
|
|
192
192
|
const targetHeaderCasing = new Map();
|
|
193
193
|
return async (url, init = {}) => {
|
|
194
|
+
// A per-call `init.schema` supersedes the client-level default for this
|
|
195
|
+
// call only — see HttpRequestInit.schema for why a multi-call chain with
|
|
196
|
+
// heterogeneous response shapes needs this escape hatch.
|
|
197
|
+
const activeSchema = init.schema ?? schema;
|
|
194
198
|
return bottleneck.schedule(() => (0, p_retry_1.default)(async () => {
|
|
195
199
|
const method = init.method ?? "GET";
|
|
196
200
|
const initHeaders = init.headers ?? {};
|
|
@@ -296,7 +300,7 @@ function createHttpClient(options) {
|
|
|
296
300
|
throw classified.retryable ? classified : new p_retry_1.AbortError(classified);
|
|
297
301
|
}
|
|
298
302
|
const body = parseJsonOrThrowRetryable(rawText, url);
|
|
299
|
-
const parsed =
|
|
303
|
+
const parsed = activeSchema.safeParse(body);
|
|
300
304
|
if (!parsed.success) {
|
|
301
305
|
logger.warn(`http schema mismatch from ${url}: ${parsed.error.issues.map((i) => i.message).join("; ")}`);
|
|
302
306
|
// Schema mismatch — not transient, abort retry.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/scraper/http-client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAmD;AACnD,yCAAiC;AAGjC,mDAA6C;AAG7C,2CAA0C;AAC1C,6CAO0B;AAE1B,MAAM,MAAM,GAAG,IAAA,mBAAS,EAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;AAE1D;;;;;;;GAOG;AACH,IAAI,mBAAmB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/scraper/http-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,5 +38,5 @@ export interface RateLimitedJsonClientOptions<TResponse> {
|
|
|
38
38
|
* and site-specific `extraHeaders`; the factory owns the limiter lifecycle and
|
|
39
39
|
* the header merge order (hints first, extraHeaders on top).
|
|
40
40
|
*/
|
|
41
|
-
export declare function createRateLimitedJsonClient<TResponse>(opts: RateLimitedJsonClientOptions<TResponse>): (url: string, init?: HttpRequestInit) => Promise<
|
|
41
|
+
export declare function createRateLimitedJsonClient<TResponse>(opts: RateLimitedJsonClientOptions<TResponse>): <TOverride = TResponse>(url: string, init?: HttpRequestInit<TOverride>) => Promise<TOverride>;
|
|
42
42
|
//# sourceMappingURL=rate-limited-json-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limited-json-client.d.ts","sourceRoot":"","sources":["../../src/scraper/rate-limited-json-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGhF;;;;;GAKG;AACH,MAAM,WAAW,4BAA4B,CAAC,SAAS;IACrD,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gEAAgE;IAChE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;CAC7E;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EACnD,IAAI,EAAE,4BAA4B,CAAC,SAAS,CAAC,GAC5C,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,KAAK,OAAO,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"rate-limited-json-client.d.ts","sourceRoot":"","sources":["../../src/scraper/rate-limited-json-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGhF;;;;;GAKG;AACH,MAAM,WAAW,4BAA4B,CAAC,SAAS;IACrD,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gEAAgE;IAChE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;CAC7E;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EACnD,IAAI,EAAE,4BAA4B,CAAC,SAAS,CAAC,GAC5C,CAAC,SAAS,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,CAgB/F"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { Capture } from "../scripts/recon-shared";
|
|
2
|
+
/** Structural mirror of recon-generate.ts's internal (unexported) `ActionStep` —
|
|
3
|
+
* `capture`/`varName`/`produces`/`isMultipart`/`isCrossDomain`, per
|
|
4
|
+
* recon-generate.ts:1384-1397. Kept local rather than imported since the
|
|
5
|
+
* source type isn't exported and every consumer of `selectPayloadAction` only
|
|
6
|
+
* needs the `capture` field structurally (recon-generate.ts:313). */
|
|
7
|
+
export interface MulticallFixtureStep {
|
|
8
|
+
capture: Capture;
|
|
9
|
+
varName: string;
|
|
10
|
+
produces: never[];
|
|
11
|
+
isMultipart: boolean;
|
|
12
|
+
isCrossDomain: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Reproduces the disneycruise G1/G2 report's recon capture set: a
|
|
16
|
+
* feature-toggle read, an anonymous auth mint, and an inventory search
|
|
17
|
+
* re-queried with two distinct bodies (the report's "×N" `available-products/`
|
|
18
|
+
* calls). Each of the three response SHAPES named in the report (toggles
|
|
19
|
+
* array, `{result,successful}` auth mint, `{totalPages,totalAvailableCruises,
|
|
20
|
+
* products[]}` inventory) is disjoint from the others so tests can assert the
|
|
21
|
+
* generator distinguishes per-call shapes instead of collapsing them to one
|
|
22
|
+
* (G2). `available-products/` is emitted twice with different request bodies
|
|
23
|
+
* — one step alone cannot carry `selectPayloadAction`'s re-query signature
|
|
24
|
+
* (recon-generate.ts:313-334 requires >=2 steps at the same endpointKey with
|
|
25
|
+
* distinct requestPostData) — so `selectPayloadAction` picks it over the
|
|
26
|
+
* toggle/auth calls that merely opened the flow.
|
|
27
|
+
*/
|
|
28
|
+
export declare function buildMulticallHeterogeneousActionSteps(): MulticallFixtureStep[];
|
|
29
|
+
/**
|
|
30
|
+
* Same call sequence, plus a terminal drill-down call whose response is a
|
|
31
|
+
* single itinerary rather than the search result — reproducing G1's
|
|
32
|
+
* "last call ≠ the flow's subject" condition (a `POST available-sailings/`
|
|
33
|
+
* fired after the user picks one itinerary from the products list).
|
|
34
|
+
*/
|
|
35
|
+
export declare function buildMulticallHeterogeneousActionStepsWithDrillDown(): MulticallFixtureStep[];
|
|
36
|
+
//# sourceMappingURL=recon-generate-multicall-fixture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recon-generate-multicall-fixture.d.ts","sourceRoot":"","sources":["../../src/scripts/recon-generate-multicall-fixture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEtD;;;;qEAIqE;AACrE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;CACxB;AAkDD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sCAAsC,IAAI,oBAAoB,EAAE,CAmC/E;AAED;;;;;GAKG;AACH,wBAAgB,mDAAmD,IAAI,oBAAoB,EAAE,CAU5F"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildMulticallHeterogeneousActionSteps = buildMulticallHeterogeneousActionSteps;
|
|
4
|
+
exports.buildMulticallHeterogeneousActionStepsWithDrillDown = buildMulticallHeterogeneousActionStepsWithDrillDown;
|
|
5
|
+
function buildCapture(overrides) {
|
|
6
|
+
return {
|
|
7
|
+
timestamp: overrides.timestamp,
|
|
8
|
+
phase: "action",
|
|
9
|
+
method: "POST",
|
|
10
|
+
url: overrides.url,
|
|
11
|
+
status: 200,
|
|
12
|
+
requestHeaders: { "Content-Type": "application/json" },
|
|
13
|
+
requestPostData: overrides.requestPostData,
|
|
14
|
+
responseHeaders: { "content-type": "application/json" },
|
|
15
|
+
responseBody: overrides.responseBody,
|
|
16
|
+
operationName: null,
|
|
17
|
+
query: null,
|
|
18
|
+
variables: null,
|
|
19
|
+
decodedParams: null,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const TOGGLES_URL = "https://api.example.com/dcl-apps-productavail-spa/toggles/product-avail";
|
|
23
|
+
const AUTHZ_URL = "https://api.example.com/dcl-apps-productavail-vas/authz/private";
|
|
24
|
+
const AVAILABLE_PRODUCTS_URL = "https://api.example.com/dcl-apps-productavail-vas/available-products/";
|
|
25
|
+
const AVAILABLE_SAILINGS_URL = "https://api.example.com/dcl-apps-productavail-vas/available-sailings/";
|
|
26
|
+
function buildStep(varName, overrides) {
|
|
27
|
+
return {
|
|
28
|
+
capture: buildCapture(overrides),
|
|
29
|
+
varName,
|
|
30
|
+
produces: [],
|
|
31
|
+
isMultipart: false,
|
|
32
|
+
isCrossDomain: false,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Reproduces the disneycruise G1/G2 report's recon capture set: a
|
|
37
|
+
* feature-toggle read, an anonymous auth mint, and an inventory search
|
|
38
|
+
* re-queried with two distinct bodies (the report's "×N" `available-products/`
|
|
39
|
+
* calls). Each of the three response SHAPES named in the report (toggles
|
|
40
|
+
* array, `{result,successful}` auth mint, `{totalPages,totalAvailableCruises,
|
|
41
|
+
* products[]}` inventory) is disjoint from the others so tests can assert the
|
|
42
|
+
* generator distinguishes per-call shapes instead of collapsing them to one
|
|
43
|
+
* (G2). `available-products/` is emitted twice with different request bodies
|
|
44
|
+
* — one step alone cannot carry `selectPayloadAction`'s re-query signature
|
|
45
|
+
* (recon-generate.ts:313-334 requires >=2 steps at the same endpointKey with
|
|
46
|
+
* distinct requestPostData) — so `selectPayloadAction` picks it over the
|
|
47
|
+
* toggle/auth calls that merely opened the flow.
|
|
48
|
+
*/
|
|
49
|
+
function buildMulticallHeterogeneousActionSteps() {
|
|
50
|
+
return [
|
|
51
|
+
buildStep("r0", {
|
|
52
|
+
url: TOGGLES_URL,
|
|
53
|
+
requestPostData: "[]",
|
|
54
|
+
responseBody: [{ name: "feature-a", enabled: true }],
|
|
55
|
+
timestamp: "2024-01-01T00:00:00Z",
|
|
56
|
+
}),
|
|
57
|
+
buildStep("r1", {
|
|
58
|
+
url: AUTHZ_URL,
|
|
59
|
+
requestPostData: "{}",
|
|
60
|
+
responseBody: { result: "anonymous", successful: true },
|
|
61
|
+
timestamp: "2024-01-01T00:00:01Z",
|
|
62
|
+
}),
|
|
63
|
+
buildStep("r2", {
|
|
64
|
+
url: AVAILABLE_PRODUCTS_URL,
|
|
65
|
+
requestPostData: '{"page":1}',
|
|
66
|
+
responseBody: {
|
|
67
|
+
totalPages: 5,
|
|
68
|
+
totalAvailableCruises: 699,
|
|
69
|
+
products: [{ productId: "p1" }],
|
|
70
|
+
},
|
|
71
|
+
timestamp: "2024-01-01T00:00:02Z",
|
|
72
|
+
}),
|
|
73
|
+
buildStep("r3", {
|
|
74
|
+
url: AVAILABLE_PRODUCTS_URL,
|
|
75
|
+
requestPostData: '{"page":2}',
|
|
76
|
+
responseBody: {
|
|
77
|
+
totalPages: 5,
|
|
78
|
+
totalAvailableCruises: 699,
|
|
79
|
+
products: [{ productId: "p2" }],
|
|
80
|
+
},
|
|
81
|
+
timestamp: "2024-01-01T00:00:03Z",
|
|
82
|
+
}),
|
|
83
|
+
];
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Same call sequence, plus a terminal drill-down call whose response is a
|
|
87
|
+
* single itinerary rather than the search result — reproducing G1's
|
|
88
|
+
* "last call ≠ the flow's subject" condition (a `POST available-sailings/`
|
|
89
|
+
* fired after the user picks one itinerary from the products list).
|
|
90
|
+
*/
|
|
91
|
+
function buildMulticallHeterogeneousActionStepsWithDrillDown() {
|
|
92
|
+
return [
|
|
93
|
+
...buildMulticallHeterogeneousActionSteps(),
|
|
94
|
+
buildStep("r4", {
|
|
95
|
+
url: AVAILABLE_SAILINGS_URL,
|
|
96
|
+
requestPostData: '{"productId":"p1"}',
|
|
97
|
+
responseBody: { sailings: [{ sailingId: "s1" }], exchangeRate: 1.0 },
|
|
98
|
+
timestamp: "2024-01-01T00:00:04Z",
|
|
99
|
+
}),
|
|
100
|
+
];
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=recon-generate-multicall-fixture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recon-generate-multicall-fixture.js","sourceRoot":"","sources":["../../src/scripts/recon-generate-multicall-fixture.ts"],"names":[],"mappings":";;;;AAeA,SAAS,YAAY,CAAC,SAKrB;IACC,OAAO;QACL,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,SAAS,CAAC,GAAG;QAClB,MAAM,EAAE,GAAG;QACX,cAAc,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACtD,eAAe,EAAE,SAAS,CAAC,eAAe;QAC1C,eAAe,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACvD,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,aAAa,EAAE,IAAI;QACnB,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI;QACf,aAAa,EAAE,IAAI;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAG,yEAAyE,CAAC;AAC9F,MAAM,SAAS,GAAG,iEAAiE,CAAC;AACpF,MAAM,sBAAsB,GAC1B,uEAAuE,CAAC;AAC1E,MAAM,sBAAsB,GAC1B,uEAAuE,CAAC;AAE1E,SAAS,SAAS,CAChB,OAAe,EACf,SAKC;IAED,OAAO;QACL,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;QAChC,OAAO;QACP,QAAQ,EAAE,EAAE;QACZ,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE,KAAK;KACrB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH;IACE,OAAO;QACL,SAAS,CAAC,IAAI,EAAE;YACd,GAAG,EAAE,WAAW;YAChB,eAAe,EAAE,IAAI;YACrB,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YACpD,SAAS,EAAE,sBAAsB;SAClC,CAAC;QACF,SAAS,CAAC,IAAI,EAAE;YACd,GAAG,EAAE,SAAS;YACd,eAAe,EAAE,IAAI;YACrB,YAAY,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE;YACvD,SAAS,EAAE,sBAAsB;SAClC,CAAC;QACF,SAAS,CAAC,IAAI,EAAE;YACd,GAAG,EAAE,sBAAsB;YAC3B,eAAe,EAAE,YAAY;YAC7B,YAAY,EAAE;gBACZ,UAAU,EAAE,CAAC;gBACb,qBAAqB,EAAE,GAAG;gBAC1B,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;aAChC;YACD,SAAS,EAAE,sBAAsB;SAClC,CAAC;QACF,SAAS,CAAC,IAAI,EAAE;YACd,GAAG,EAAE,sBAAsB;YAC3B,eAAe,EAAE,YAAY;YAC7B,YAAY,EAAE;gBACZ,UAAU,EAAE,CAAC;gBACb,qBAAqB,EAAE,GAAG;gBAC1B,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;aAChC;YACD,SAAS,EAAE,sBAAsB;SAClC,CAAC;KACH,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH;IACE,OAAO;QACL,GAAG,sCAAsC,EAAE;QAC3C,SAAS,CAAC,IAAI,EAAE;YACd,GAAG,EAAE,sBAAsB;YAC3B,eAAe,EAAE,oBAAoB;YACrC,YAAY,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE;YACpE,SAAS,EAAE,sBAAsB;SAClC,CAAC;KACH,CAAC;AACJ,CAAC"}
|
|
@@ -77,6 +77,31 @@ export declare function inferZodSchemaFromSamples(samples: readonly unknown[], d
|
|
|
77
77
|
export declare function selectPayloadAction<T extends {
|
|
78
78
|
capture: Capture;
|
|
79
79
|
}>(steps: readonly T[]): T | null;
|
|
80
|
+
/**
|
|
81
|
+
* Picks the action whose response body `executeHttp` should return.
|
|
82
|
+
*
|
|
83
|
+
* Defaults to the last action, which is right for a transactional/submission
|
|
84
|
+
* flow: the final call is the terminal success signal the caller wants back.
|
|
85
|
+
* It is wrong when the flow is a read/search whose last call happens to be an
|
|
86
|
+
* incidental drill-down (e.g. previewing one result) rather than the search
|
|
87
|
+
* result itself — the same re-queried-endpoint signal `selectPayloadAction`
|
|
88
|
+
* uses to find the flow's subject applies here: an endpoint hit repeatedly
|
|
89
|
+
* with varying, non-void bodies is what the flow is about, and its most
|
|
90
|
+
* recent response is the freshest instance of that answer.
|
|
91
|
+
*/
|
|
92
|
+
export declare function selectReturnAction<T extends {
|
|
93
|
+
capture: Capture;
|
|
94
|
+
}>(steps: readonly T[]): T | null;
|
|
95
|
+
/**
|
|
96
|
+
* Picks the response body used to infer the emitted contract's response
|
|
97
|
+
* shape. MUST target the same call `selectReturnAction` returns — a
|
|
98
|
+
* submission flow's `executeHttp` and its inferred type/schema have to agree
|
|
99
|
+
* on which call they describe, or the emitted type disagrees with the value
|
|
100
|
+
* actually returned. Falls back to the replay body for single-endpoint sites.
|
|
101
|
+
*/
|
|
102
|
+
export declare function selectEffectiveResponseBody<T extends {
|
|
103
|
+
capture: Capture;
|
|
104
|
+
}>(isSubmissionFlow: boolean, actionSteps: readonly T[], replayResponseBody: unknown): unknown;
|
|
80
105
|
interface ActionCapture {
|
|
81
106
|
capture: Capture;
|
|
82
107
|
index: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recon-generate.d.ts","sourceRoot":"","sources":["../../src/scripts/recon-generate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAiBH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EACL,KAAK,OAAO,EAKb,MAAM,wBAAwB,CAAC;AA2EhC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,OAAO,EACnB,UAAU,GAAE,eAAmD,GAC9D,MAAM,GAAG,IAAI,CAoBf;AAUD,UAAU,SAAS;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,KAAK,SAAI,EACT,MAAM,SAAK,EACX,IAAI,GAAE,SAAc,GACnB,MAAM,CA+DR;
|
|
1
|
+
{"version":3,"file":"recon-generate.d.ts","sourceRoot":"","sources":["../../src/scripts/recon-generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
24
24
|
exports.resolveStepPayloadField = resolveStepPayloadField;
|
|
25
25
|
exports.inferZodSchemaFromSamples = inferZodSchemaFromSamples;
|
|
26
26
|
exports.selectPayloadAction = selectPayloadAction;
|
|
27
|
+
exports.selectReturnAction = selectReturnAction;
|
|
28
|
+
exports.selectEffectiveResponseBody = selectEffectiveResponseBody;
|
|
27
29
|
exports.extractActionSequence = extractActionSequence;
|
|
28
30
|
exports.detectFormSchemaFieldNames = detectFormSchemaFieldNames;
|
|
29
31
|
exports.walkSetCookiePairs = walkSetCookiePairs;
|
|
@@ -271,6 +273,31 @@ function isVoidResponse(body) {
|
|
|
271
273
|
return body.length === 0;
|
|
272
274
|
return Object.keys(body).length === 0;
|
|
273
275
|
}
|
|
276
|
+
/**
|
|
277
|
+
* Finds actions whose endpoint was re-hit with a varying, non-void body —
|
|
278
|
+
* the signature of a search/inventory endpoint the page queries repeatedly,
|
|
279
|
+
* as opposed to an endpoint that merely fired once or repeated an identical
|
|
280
|
+
* (retry) or void (chatter/beacon) call. Shared by `selectPayloadAction` and
|
|
281
|
+
* `selectReturnAction`, which each pick a different fallback when nothing
|
|
282
|
+
* was re-queried.
|
|
283
|
+
*/
|
|
284
|
+
function findRequeriedActions(steps) {
|
|
285
|
+
const bodiesByEndpoint = new Map();
|
|
286
|
+
for (const step of steps) {
|
|
287
|
+
const key = endpointKey(step.capture.url);
|
|
288
|
+
const bodies = bodiesByEndpoint.get(key) ?? new Set();
|
|
289
|
+
bodies.add(step.capture.requestPostData ?? "");
|
|
290
|
+
bodiesByEndpoint.set(key, bodies);
|
|
291
|
+
}
|
|
292
|
+
return steps.filter((step) => {
|
|
293
|
+
const bodies = bodiesByEndpoint.get(endpointKey(step.capture.url));
|
|
294
|
+
if (!bodies || bodies.size < 2)
|
|
295
|
+
return false;
|
|
296
|
+
// An endpoint re-hit with varying bodies but nothing to show for it is
|
|
297
|
+
// chatter — client-side error reporting, beacons — not the flow's subject.
|
|
298
|
+
return !isVoidResponse(step.capture.responseBody);
|
|
299
|
+
});
|
|
300
|
+
}
|
|
274
301
|
/**
|
|
275
302
|
* Picks the action whose request body should define the payload schema.
|
|
276
303
|
*
|
|
@@ -292,23 +319,40 @@ function selectPayloadAction(steps) {
|
|
|
292
319
|
const first = steps[0];
|
|
293
320
|
if (!first)
|
|
294
321
|
return null;
|
|
295
|
-
const
|
|
296
|
-
for (const step of steps) {
|
|
297
|
-
const key = endpointKey(step.capture.url);
|
|
298
|
-
const bodies = bodiesByEndpoint.get(key) ?? new Set();
|
|
299
|
-
bodies.add(step.capture.requestPostData ?? "");
|
|
300
|
-
bodiesByEndpoint.set(key, bodies);
|
|
301
|
-
}
|
|
302
|
-
const requeried = steps.filter((step) => {
|
|
303
|
-
const bodies = bodiesByEndpoint.get(endpointKey(step.capture.url));
|
|
304
|
-
if (!bodies || bodies.size < 2)
|
|
305
|
-
return false;
|
|
306
|
-
// An endpoint re-hit with varying bodies but nothing to show for it is
|
|
307
|
-
// chatter — client-side error reporting, beacons — not the flow's subject.
|
|
308
|
-
return !isVoidResponse(step.capture.responseBody);
|
|
309
|
-
});
|
|
322
|
+
const requeried = findRequeriedActions(steps);
|
|
310
323
|
return requeried[0] ?? first;
|
|
311
324
|
}
|
|
325
|
+
/**
|
|
326
|
+
* Picks the action whose response body `executeHttp` should return.
|
|
327
|
+
*
|
|
328
|
+
* Defaults to the last action, which is right for a transactional/submission
|
|
329
|
+
* flow: the final call is the terminal success signal the caller wants back.
|
|
330
|
+
* It is wrong when the flow is a read/search whose last call happens to be an
|
|
331
|
+
* incidental drill-down (e.g. previewing one result) rather than the search
|
|
332
|
+
* result itself — the same re-queried-endpoint signal `selectPayloadAction`
|
|
333
|
+
* uses to find the flow's subject applies here: an endpoint hit repeatedly
|
|
334
|
+
* with varying, non-void bodies is what the flow is about, and its most
|
|
335
|
+
* recent response is the freshest instance of that answer.
|
|
336
|
+
*/
|
|
337
|
+
function selectReturnAction(steps) {
|
|
338
|
+
const last = steps[steps.length - 1] ?? null;
|
|
339
|
+
if (!last)
|
|
340
|
+
return null;
|
|
341
|
+
const requeried = findRequeriedActions(steps);
|
|
342
|
+
return requeried[requeried.length - 1] ?? last;
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Picks the response body used to infer the emitted contract's response
|
|
346
|
+
* shape. MUST target the same call `selectReturnAction` returns — a
|
|
347
|
+
* submission flow's `executeHttp` and its inferred type/schema have to agree
|
|
348
|
+
* on which call they describe, or the emitted type disagrees with the value
|
|
349
|
+
* actually returned. Falls back to the replay body for single-endpoint sites.
|
|
350
|
+
*/
|
|
351
|
+
function selectEffectiveResponseBody(isSubmissionFlow, actionSteps, replayResponseBody) {
|
|
352
|
+
if (!isSubmissionFlow)
|
|
353
|
+
return replayResponseBody;
|
|
354
|
+
return selectReturnAction(actionSteps)?.capture.responseBody ?? replayResponseBody;
|
|
355
|
+
}
|
|
312
356
|
function deriveBaseUrl(captures) {
|
|
313
357
|
for (const c of captures) {
|
|
314
358
|
try {
|
|
@@ -1875,7 +1919,14 @@ function emitMultiStepExecuteHttp(actions, inputBody, errorSignals, fieldNameMap
|
|
|
1875
1919
|
.join(", ")} },`
|
|
1876
1920
|
: "";
|
|
1877
1921
|
const bodyArg = bodyTemplate ? `body: \`${bodyTemplate}\`,` : "";
|
|
1878
|
-
|
|
1922
|
+
// G2: each call gets its own schema, inferred from this step's captured
|
|
1923
|
+
// response — the client-level schema (z.unknown() for multi-step flows,
|
|
1924
|
+
// see emitContractTs) stays the plugin's caller-facing contract, not what
|
|
1925
|
+
// validates any individual call. Without this override, HttpRequestInit.schema
|
|
1926
|
+
// would default to the client's z.unknown() and narrowing the caller-facing
|
|
1927
|
+
// contract would enforce that narrowed shape on every call in the chain.
|
|
1928
|
+
const schemaExpr = inferZodSchema(cap.responseBody);
|
|
1929
|
+
rendered.push({ url, method: cap.method, headersExpr, bodyArg, schemaExpr });
|
|
1879
1930
|
}
|
|
1880
1931
|
// Identifier scan against the rendered text — captures `${foo}`, `${foo.bar}`,
|
|
1881
1932
|
// etc. The first segment (anchored at `${`) is the binding's name. Closed
|
|
@@ -1895,9 +1946,11 @@ function emitMultiStepExecuteHttp(actions, inputBody, errorSignals, fieldNameMap
|
|
|
1895
1946
|
}
|
|
1896
1947
|
}
|
|
1897
1948
|
}
|
|
1898
|
-
// The
|
|
1899
|
-
|
|
1900
|
-
|
|
1949
|
+
// The relevance-selected step's var is also referenced by the closing
|
|
1950
|
+
// `return { data }` — see selectReturnAction.
|
|
1951
|
+
const returnAction = selectReturnAction(actions);
|
|
1952
|
+
if (returnAction)
|
|
1953
|
+
referencedNames.add(returnAction.varName);
|
|
1901
1954
|
// Base64 Content overrides reference variables inside function calls
|
|
1902
1955
|
// (e.g. buildBase64Content(payload, questionnaireId, ...)) that the
|
|
1903
1956
|
// ${name} regex above doesn't capture. Add them explicitly.
|
|
@@ -1997,6 +2050,7 @@ function emitMultiStepExecuteHttp(actions, inputBody, errorSignals, fieldNameMap
|
|
|
1997
2050
|
if (joined !== "") {
|
|
1998
2051
|
lines.push(` ${joined}`);
|
|
1999
2052
|
}
|
|
2053
|
+
lines.push(` schema: ${r.schemaExpr},`);
|
|
2000
2054
|
if (needsBinding) {
|
|
2001
2055
|
lines.push(` })) as Record<string, unknown>;`);
|
|
2002
2056
|
}
|
|
@@ -2026,8 +2080,8 @@ function emitMultiStepExecuteHttp(actions, inputBody, errorSignals, fieldNameMap
|
|
|
2026
2080
|
}
|
|
2027
2081
|
lines.push("");
|
|
2028
2082
|
}
|
|
2029
|
-
const
|
|
2030
|
-
lines.push(` return { data: ${
|
|
2083
|
+
const returnVar = returnAction ? returnAction.varName : "undefined";
|
|
2084
|
+
lines.push(` return { data: ${returnVar} };`);
|
|
2031
2085
|
return lines.join("\n");
|
|
2032
2086
|
}
|
|
2033
2087
|
function summariseResponseShape(value) {
|
|
@@ -2065,16 +2119,25 @@ function bindOptionLiteral(headerBindings) {
|
|
|
2065
2119
|
* unit tests can drive the emitter directly without spawning the CLI. */
|
|
2066
2120
|
function emitContractTs(opts) {
|
|
2067
2121
|
const { siteId, pascal, baseUrl, baseHeaders, minTime, safeRps, responseBody, gql, gqlQuery, endpointPath, auxFiles, multiStepBody, inputBody, hasMultipartStep = false, discoveredFormFields, fieldOptionsMap, discoveredOptionFields, discoveredRawOptionFields, discoveredAdditionalBodyKeys, payloadFieldNames, base64ContentHelper = "", headerBindings = [], } = opts;
|
|
2068
|
-
//
|
|
2069
|
-
//
|
|
2070
|
-
//
|
|
2122
|
+
// This is the CLIENT-level schema — createHttpClient's default, and the
|
|
2123
|
+
// plugin's caller-facing contract (what executeHttp's return value promises
|
|
2124
|
+
// its own caller). It does NOT validate any individual call in a multi-step
|
|
2125
|
+
// flow: emitMultiStepExecuteHttp threads a per-call `schema:` override
|
|
2126
|
+
// (inferred from that step's own capture) onto every httpClient(...)
|
|
2127
|
+
// invocation, so heterogeneous per-call shapes are each checked against
|
|
2128
|
+
// their own inferred schema regardless of what this client-level schema is.
|
|
2071
2129
|
//
|
|
2072
|
-
//
|
|
2073
|
-
// shape is the plugin's OWN contract with its
|
|
2074
|
-
// a field that appears in zero
|
|
2075
|
-
//
|
|
2076
|
-
//
|
|
2077
|
-
//
|
|
2130
|
+
// For multi-step flows this stays z.unknown(), not an unfinished schema: a
|
|
2131
|
+
// submission flow's terminal shape is the plugin's OWN contract with its
|
|
2132
|
+
// caller (e.g. { verified: boolean }), a field that appears in zero
|
|
2133
|
+
// captured responses. Inferring a schema from the captures would emit the
|
|
2134
|
+
// wrong shape with false confidence. z.unknown() plus the generated
|
|
2135
|
+
// `[ ] Narrow ResponseSchema` checklist item is the intended hand-off to
|
|
2136
|
+
// the plugin author, who alone knows that contract — narrowing it only
|
|
2137
|
+
// changes what executeHttp promises its caller, and is now safe to do
|
|
2138
|
+
// without affecting per-call validation. Single-endpoint plugins keep the
|
|
2139
|
+
// inferred schema, since there both roles (client default and sole call)
|
|
2140
|
+
// coincide.
|
|
2078
2141
|
const responseSchemaExpr = multiStepBody ? `z.unknown()` : inferZodSchema(responseBody);
|
|
2079
2142
|
// Multi-step flows that include a multipart upload need the binary asset
|
|
2080
2143
|
// on the payload. Add Resume/ResumeContentType/ResumeFilename as required
|
|
@@ -2251,12 +2314,20 @@ const httpClient = createHttpClient({ schema: ${pascal}ResponseSchema, bottlenec
|
|
|
2251
2314
|
const queryChecklistLine = gql
|
|
2252
2315
|
? `\n * [ ] Trim UI-only fields from ${pascal.toUpperCase()}_QUERY (keep only fields you need)`
|
|
2253
2316
|
: "";
|
|
2317
|
+
// Multi-step flows validate each call against its own per-call inferred
|
|
2318
|
+
// schema (emitMultiStepExecuteHttp) — narrowing ResponseSchema only changes
|
|
2319
|
+
// what executeHttp promises ITS OWN caller, never a per-call validator, so
|
|
2320
|
+
// the checklist item must say that explicitly. Single-endpoint plugins have
|
|
2321
|
+
// exactly one call, so the client schema and that call's validator are the
|
|
2322
|
+
// same schema and the shorter wording stays accurate.
|
|
2323
|
+
const narrowSchemaChecklistLine = multiStepBody
|
|
2324
|
+
? `\n * [ ] Narrow ${pascal}ResponseSchema to match what executeHttp should promise ITS CALLER — this is the plugin's own return-value contract, not a per-call validator (each call in the flow is already checked against its own inferred schema)`
|
|
2325
|
+
: `\n * [ ] Narrow ${pascal}ResponseSchema to match the real response shape`;
|
|
2254
2326
|
const camel = siteId.replace(/-([a-z])/g, (_, c) => c.toUpperCase());
|
|
2255
2327
|
return `/**
|
|
2256
2328
|
* Generated by recon-generate.ts — review before shipping.
|
|
2257
2329
|
*
|
|
2258
|
-
* Checklist:${queryChecklistLine}
|
|
2259
|
-
* [ ] Narrow ${pascal}ResponseSchema to match the real response shape
|
|
2330
|
+
* Checklist:${queryChecklistLine}${narrowSchemaChecklistLine}
|
|
2260
2331
|
* [ ] Adjust ${pascal}PayloadSchema to your actual request parameters
|
|
2261
2332
|
* [ ] Verify BASE_HEADERS — remove any that aren't load-bearing
|
|
2262
2333
|
* [ ] Out-of-tree: \`pnpm add bottleneck zod\` — this file imports both
|
|
@@ -2986,12 +3057,9 @@ async function main() {
|
|
|
2986
3057
|
: multiStepBody;
|
|
2987
3058
|
const hasMultipartStep = actionSteps.some((s) => s.isMultipart);
|
|
2988
3059
|
const headerBindings = collectHeaderBindings(actionSteps);
|
|
2989
|
-
//
|
|
2990
|
-
//
|
|
2991
|
-
|
|
2992
|
-
const effectiveResponseBody = isSubmissionFlow
|
|
2993
|
-
? (actionSteps[actionSteps.length - 1].capture.responseBody ?? responseBody)
|
|
2994
|
-
: responseBody;
|
|
3060
|
+
// Shape inference targets the SAME call executeHttp returns — see
|
|
3061
|
+
// selectEffectiveResponseBody — so the two surfaces can't describe different calls.
|
|
3062
|
+
const effectiveResponseBody = selectEffectiveResponseBody(isSubmissionFlow, actionSteps, responseBody);
|
|
2995
3063
|
logger.info(`generating plugin for ${siteId} (${gql ? "GraphQL" : isSubmissionFlow ? `submission flow, ${actionSteps.length} steps` : "single-endpoint REST"}, baseUrl: ${baseUrl})`);
|
|
2996
3064
|
if (emit === "config") {
|
|
2997
3065
|
(0, node_fs_1.mkdirSync)(outDir, { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recon-generate.js","sourceRoot":"","sources":["../../src/scripts/recon-generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"recon-generate.js","sourceRoot":"","sources":["../../src/scripts/recon-generate.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAMjE,OAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAMjE,OAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAsB/E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAsB9C;;;;GAIG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAC1C,eAAe,CAAC,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,CAAC,CAC3E,CAsHA"}
|
package/dist/server.js
CHANGED
|
@@ -28,7 +28,22 @@ const discover_1 = require("./plugins/discover");
|
|
|
28
28
|
const loader_1 = require("./plugins/loader");
|
|
29
29
|
const pool_1 = require("./scraper/pool");
|
|
30
30
|
const logger = (0, logging_1.getLogger)({ name: "server" });
|
|
31
|
+
const PLUGIN_SHUTDOWN_TIMEOUT_MS = 30_000;
|
|
31
32
|
(0, http_1.configureHttpDispatcher)();
|
|
33
|
+
/**
|
|
34
|
+
* Awaits a single plugin's onShutdown, bounded so a hanging plugin cannot
|
|
35
|
+
* stall the rest of the shutdown sequence — mirrors drainTrackingClicks's
|
|
36
|
+
* own Promise.race guard.
|
|
37
|
+
*/
|
|
38
|
+
async function drainPlugin(plugin, timeoutMs) {
|
|
39
|
+
const onShutdown = plugin.meta.onShutdown;
|
|
40
|
+
if (!onShutdown)
|
|
41
|
+
return;
|
|
42
|
+
await Promise.race([
|
|
43
|
+
onShutdown(),
|
|
44
|
+
new Promise((resolve) => setTimeout(resolve, timeoutMs)),
|
|
45
|
+
]);
|
|
46
|
+
}
|
|
32
47
|
/**
|
|
33
48
|
* Builds a configured (but not-yet-listening) Fastify instance. Split out
|
|
34
49
|
* from `main()` so tests can call `buildServer()` and use `inject()`
|
|
@@ -120,6 +135,14 @@ async function buildServer() {
|
|
|
120
135
|
catch (err) {
|
|
121
136
|
logger.warn(`drainTrackingClicks failed during shutdown: ${(0, errors_1.toErrorMessage)(err).slice(0, 200)}`);
|
|
122
137
|
}
|
|
138
|
+
for (const plugin of plugins) {
|
|
139
|
+
try {
|
|
140
|
+
await drainPlugin(plugin, PLUGIN_SHUTDOWN_TIMEOUT_MS);
|
|
141
|
+
}
|
|
142
|
+
catch (err) {
|
|
143
|
+
logger.warn(`plugin onShutdown failed during shutdown site=${plugin.meta.siteId}: ${(0, errors_1.toErrorMessage)(err).slice(0, 200)}`);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
123
146
|
try {
|
|
124
147
|
await (0, statsd_1.shutdownStatsD)();
|
|
125
148
|
}
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAyC;AAEzC,iEAAgD;AAChD,6DAA4C;AAC5C,qEAAmD;AACnD,+DAA8C;AAC9C,qEAAmD;AACnD,sDAA+E;AAC/E,yEAImC;AACnC,8DAA4C;AAC5C,gFAA6D;AAC7D,oFAAiE;AACjE,gDAAmD;AACnD,8EAAgF;AAChF,qCAA+D;AAC/D,yCAA8C;AAC9C,qCAAqD;AACrD,2CAA0C;AAC1C,yCAA8C;AAC9C,qDAA2E;AAC3E,yDAA2D;AAC3D,iDAAoD;AACpD,6CAAkD;AAClD,yCAA2C;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/site-plugin.d.ts
CHANGED
|
@@ -134,6 +134,12 @@ export interface SitePluginMeta {
|
|
|
134
134
|
* success reply.
|
|
135
135
|
*/
|
|
136
136
|
extraRoutes?: readonly SitePluginExtraRoute[];
|
|
137
|
+
/**
|
|
138
|
+
* Optional cleanup for background work the plugin launched fire-and-forget.
|
|
139
|
+
* Awaited during graceful shutdown so in-flight work is not abandoned and
|
|
140
|
+
* sessions are not leaked. Mirrors the engine's own drain functions.
|
|
141
|
+
*/
|
|
142
|
+
onShutdown?: () => Promise<void>;
|
|
137
143
|
}
|
|
138
144
|
/**
|
|
139
145
|
* Runtime dependencies injected by core immediately before `execute()` is called.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"site-plugin.d.ts","sourceRoot":"","sources":["../src/site-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,WAAW,2BAA2B,CAAC,KAAK,GAAG,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAC5F,4FAA4F;IAC5F,IAAI,EAAE,KAAK,CAAC;IACZ,8FAA8F;IAC9F,MAAM,EAAE,OAAO,CAAC;IAChB,0CAA0C;IAC1C,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC,6CAA6C;IAC7C,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpD;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+EAA+E;IAC/E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,OAAO,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC7F;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,8EAA8E;IAC9E,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,kFAAkF;IAClF,UAAU,EAAE,OAAO,CAAC;IACpB,uFAAuF;IACvF,cAAc,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;OAMG;IACH,8BAA8B,CAAC,EAAE,8BAA8B,CAAC;IAChE;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"site-plugin.d.ts","sourceRoot":"","sources":["../src/site-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replay-integration-suite.d.mts","sourceRoot":"","sources":["../../src/testing/replay-integration-suite.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EACV,wBAAwB,EACxB,aAAa,EACb,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAI9B,mGAAmG;AACnG,KAAK,UAAU,CAAC,IAAI,IAAI;IAAE,IAAI,EAAE,IAAI,EAAE,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjF;;;GAGG;AACH,MAAM,WAAW,6BAA6B,CAAC,IAAI;IACjD,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACtE;;;OAGG;IACH,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC;IAC3D;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;CAC/D;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,SAAS,MAAM,EAC9D,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EACxB,IAAI,EAAE,6BAA6B,CAAC,IAAI,CAAC,GACxC,IAAI,
|
|
1
|
+
{"version":3,"file":"replay-integration-suite.d.mts","sourceRoot":"","sources":["../../src/testing/replay-integration-suite.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EACV,wBAAwB,EACxB,aAAa,EACb,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAI9B,mGAAmG;AACnG,KAAK,UAAU,CAAC,IAAI,IAAI;IAAE,IAAI,EAAE,IAAI,EAAE,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjF;;;GAGG;AACH,MAAM,WAAW,6BAA6B,CAAC,IAAI;IACjD,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACtE;;;OAGG;IACH,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC;IAC3D;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;CAC/D;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,SAAS,MAAM,EAC9D,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EACxB,IAAI,EAAE,6BAA6B,CAAC,IAAI,CAAC,GACxC,IAAI,CA8BN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replay-integration-suite.mjs","sourceRoot":"","sources":["../../src/testing/replay-integration-suite.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAG9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAOpE,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAgCnC;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,MAAwB,EACxB,IAAyC;IAEzC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExE,MAAM,IAAI,GACR,MAAM,IAAI,MAAM;QACd,CAAC,CAAC,MAAM,CAAC,IAAI;QACb,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAY,CAAC;IAE7F,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE;QAClE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"replay-integration-suite.mjs","sourceRoot":"","sources":["../../src/testing/replay-integration-suite.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAG9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAOpE,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAgCnC;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,MAAwB,EACxB,IAAyC;IAEzC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExE,MAAM,IAAI,GACR,MAAM,IAAI,MAAM;QACd,CAAC,CAAC,MAAM,CAAC,IAAI;QACb,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAY,CAAC;IAE7F,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE;QAClE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CACX,6CAA6C,EAC7C;YACE,OAAO,EAAE,kBAAkB;SAC5B,EACD,KAAK,EAAE,GAAG,EAAE,EAAE;YACZ,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,iBAAiB,CAAC;gBAC1C,MAAM,EAAE,MAAiD;gBACzD,OAAO,EAAG,GAA+B,CAAC,OAAiB;gBAC3D,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC;gBACjD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9B,CAAC,CAAC;YAEH,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC;YACvC,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@enricai/barnacle",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.5",
|
|
4
4
|
"description": "Site-agnostic browser automation engine. POST a structured payload to a typed endpoint; Barnacle drives a Steel + Stagehand session through the target site and returns a structured result.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Enricai",
|
|
@@ -265,7 +265,7 @@
|
|
|
265
265
|
},
|
|
266
266
|
"dependencies": {
|
|
267
267
|
"@ai-sdk/amazon-bedrock": "^5.0.17",
|
|
268
|
-
"@anthropic-ai/sdk": "^0.
|
|
268
|
+
"@anthropic-ai/sdk": "^0.112.3",
|
|
269
269
|
"@aws-sdk/client-s3": "^3.1085.0",
|
|
270
270
|
"@browserbasehq/stagehand": "^3.6.0",
|
|
271
271
|
"@fastify/compress": "^9.0.0",
|