@enricai/barnacle 1.12.32 → 1.12.34
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/dist/lib/llm/schemas.d.ts +30 -0
- package/dist/lib/llm/schemas.d.ts.map +1 -1
- package/dist/lib/llm/schemas.js +28 -0
- package/dist/lib/llm/schemas.js.map +1 -1
- package/dist/plugins/config-plugin.d.ts +15 -0
- package/dist/plugins/config-plugin.d.ts.map +1 -1
- package/dist/plugins/config-plugin.js +16 -0
- package/dist/plugins/config-plugin.js.map +1 -1
- package/dist/scraper/errors.d.ts +23 -1
- package/dist/scraper/errors.d.ts.map +1 -1
- package/dist/scraper/errors.js +40 -2
- package/dist/scraper/errors.js.map +1 -1
- package/dist/scraper/flow-runner.d.ts +64 -0
- package/dist/scraper/flow-runner.d.ts.map +1 -1
- package/dist/scraper/flow-runner.js +218 -18
- package/dist/scraper/flow-runner.js.map +1 -1
- package/dist/scripts/recon-browser.d.ts +50 -1
- package/dist/scripts/recon-browser.d.ts.map +1 -1
- package/dist/scripts/recon-browser.js +14 -3
- package/dist/scripts/recon-browser.js.map +1 -1
- package/dist/scripts/recon-generate.d.ts +72 -0
- package/dist/scripts/recon-generate.d.ts.map +1 -1
- package/dist/scripts/recon-generate.js +243 -35
- package/dist/scripts/recon-generate.js.map +1 -1
- package/dist/testmail/client.d.ts +7 -0
- package/dist/testmail/client.d.ts.map +1 -1
- package/dist/testmail/client.js +21 -0
- package/dist/testmail/client.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recon-generate.d.ts","sourceRoot":"","sources":["../../src/scripts/recon-generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"recon-generate.d.ts","sourceRoot":"","sources":["../../src/scripts/recon-generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,8 +52,10 @@ exports.compileActionSteps = compileActionSteps;
|
|
|
52
52
|
exports.collectHeaderBindings = collectHeaderBindings;
|
|
53
53
|
exports.deriveProducerBoundaryBindings = deriveProducerBoundaryBindings;
|
|
54
54
|
exports.emitMultiStepExecuteHttp = emitMultiStepExecuteHttp;
|
|
55
|
+
exports.spliceFacetsIntoStringVariable = spliceFacetsIntoStringVariable;
|
|
55
56
|
exports.findAllObjectArrayFields = findAllObjectArrayFields;
|
|
56
57
|
exports.findAllObjectArrayFieldsOrWholeObject = findAllObjectArrayFieldsOrWholeObject;
|
|
58
|
+
exports.applyDrillParamBindings = applyDrillParamBindings;
|
|
57
59
|
exports.collectResponseLeafValues = collectResponseLeafValues;
|
|
58
60
|
exports.getScanPrimaryCandidateGroupsCallCountForTest = getScanPrimaryCandidateGroupsCallCountForTest;
|
|
59
61
|
exports.resetScanPrimaryCandidateGroupsCallCountForTest = resetScanPrimaryCandidateGroupsCallCountForTest;
|
|
@@ -4379,8 +4381,9 @@ function emitMultiStepExecuteHttp(actions, inputBody, errorSignals, fieldNameMap
|
|
|
4379
4381
|
? replaceWholeValue(withAccessorSwapped, stringValue, replacement)
|
|
4380
4382
|
: withAccessorSwapped;
|
|
4381
4383
|
}, text);
|
|
4382
|
-
|
|
4383
|
-
|
|
4384
|
+
const withDrillParamBindings = applyDrillParamBindings(foldReturnSpec, chainCapture, result);
|
|
4385
|
+
assertNoFrozenVaryingDrillParams("emitMultiStepExecuteHttp", chainCapture, withDrillParamBindings, actions.map((a) => a.capture));
|
|
4386
|
+
return withDrillParamBindings;
|
|
4384
4387
|
};
|
|
4385
4388
|
// Every chain step's response and produces are block-scoped to this
|
|
4386
4389
|
// `for` — they never escape to the rest of the function. That is
|
|
@@ -4625,8 +4628,6 @@ function bindOptionLiteral(headerBindings) {
|
|
|
4625
4628
|
return `, bind: [${entries}]`;
|
|
4626
4629
|
}
|
|
4627
4630
|
// ── code emitters ─────────────────────────────────────────────────────────────
|
|
4628
|
-
/** Generates a complete contract.ts source string for a plugin — exported so
|
|
4629
|
-
* unit tests can drive the emitter directly without spawning the CLI. */
|
|
4630
4631
|
/**
|
|
4631
4632
|
* Splices payload fields into a string variable that packs filter facets as
|
|
4632
4633
|
* delimited `key:value` segments (e.g. a product-catalog `filters` variable
|
|
@@ -4640,8 +4641,18 @@ function bindOptionLiteral(headerBindings) {
|
|
|
4640
4641
|
* delimiter-separated `key:value` segment, and strings whose facet keys
|
|
4641
4642
|
* correlate with none of `fields`, so opaque tokens, JSON blobs, and plain
|
|
4642
4643
|
* literals fall through to the existing JSON.stringify path unchanged.
|
|
4643
|
-
|
|
4644
|
-
|
|
4644
|
+
*
|
|
4645
|
+
* When a matched facet's field is in `optionalFields`, its segment is
|
|
4646
|
+
* emitted as a conditionally-included array element (`...(payload.<field> ?
|
|
4647
|
+
* [...] : [])`) instead of being spliced inline into a flat template, so an
|
|
4648
|
+
* absent optional facet (e.g. a caller who supplies `region` but omits
|
|
4649
|
+
* `brand`) drops its whole `key:value` segment and delimiter at runtime
|
|
4650
|
+
* rather than emitting `key:undefined`. The array is joined with the
|
|
4651
|
+
* delimiter recovered from the string's own first separator, so output
|
|
4652
|
+
* stays byte-identical to the plain template literal whenever no matched
|
|
4653
|
+
* facet is optional (the existing default).
|
|
4654
|
+
*/
|
|
4655
|
+
function spliceFacetsIntoStringVariable(value, fields, optionalFields = new Set()) {
|
|
4645
4656
|
if (typeof value !== "string")
|
|
4646
4657
|
return null;
|
|
4647
4658
|
const segments = value.split(/([|,;])/);
|
|
@@ -4649,22 +4660,62 @@ function spliceFacetsIntoStringVariable(value, fields) {
|
|
|
4649
4660
|
if (!hasFacetShape)
|
|
4650
4661
|
return null;
|
|
4651
4662
|
let hasMatch = false;
|
|
4652
|
-
|
|
4653
|
-
|
|
4654
|
-
if (index % 2 !== 0 || !segment.includes(":"))
|
|
4655
|
-
return escapeForTemplateLiteral(segment);
|
|
4663
|
+
let hasOptionalMatch = false;
|
|
4664
|
+
const matchedFieldFor = (segment) => {
|
|
4656
4665
|
const colonIndex = segment.indexOf(":");
|
|
4657
4666
|
const facetKey = segment.slice(0, colonIndex);
|
|
4658
|
-
|
|
4667
|
+
return fields.find((field) => field.toLowerCase() === facetKey.toLowerCase());
|
|
4668
|
+
};
|
|
4669
|
+
for (let index = 0; index < segments.length; index += 2) {
|
|
4670
|
+
const segment = segments[index];
|
|
4671
|
+
if (!segment.includes(":"))
|
|
4672
|
+
continue;
|
|
4673
|
+
const matchedField = matchedFieldFor(segment);
|
|
4659
4674
|
if (!matchedField)
|
|
4660
|
-
|
|
4675
|
+
continue;
|
|
4661
4676
|
hasMatch = true;
|
|
4662
|
-
|
|
4663
|
-
|
|
4664
|
-
|
|
4677
|
+
if (optionalFields.has(matchedField))
|
|
4678
|
+
hasOptionalMatch = true;
|
|
4679
|
+
}
|
|
4665
4680
|
if (!hasMatch)
|
|
4666
4681
|
return null;
|
|
4667
|
-
|
|
4682
|
+
if (!hasOptionalMatch) {
|
|
4683
|
+
const body = segments
|
|
4684
|
+
.map((segment, index) => {
|
|
4685
|
+
if (index % 2 !== 0 || !segment.includes(":"))
|
|
4686
|
+
return escapeForTemplateLiteral(segment);
|
|
4687
|
+
const matchedField = matchedFieldFor(segment);
|
|
4688
|
+
if (!matchedField)
|
|
4689
|
+
return escapeForTemplateLiteral(segment);
|
|
4690
|
+
const colonIndex = segment.indexOf(":");
|
|
4691
|
+
const facetKey = segment.slice(0, colonIndex);
|
|
4692
|
+
return `${escapeForTemplateLiteral(`${facetKey}:`)}\${payload.${matchedField}}`;
|
|
4693
|
+
})
|
|
4694
|
+
.join("");
|
|
4695
|
+
return `\`${body}\``;
|
|
4696
|
+
}
|
|
4697
|
+
// Each unit carries its OWN trailing delimiter (the literal separator that
|
|
4698
|
+
// followed it in the source string), so dropping an omitted optional
|
|
4699
|
+
// facet's unit removes its segment and delimiter together without
|
|
4700
|
+
// disturbing a differently-delimited neighbor (e.g. "a:1|b:2;c:3" keeps
|
|
4701
|
+
// "|" before b and ";" before c even when b is optional and absent).
|
|
4702
|
+
const elements = [];
|
|
4703
|
+
for (let index = 0; index < segments.length; index += 2) {
|
|
4704
|
+
const segment = segments[index];
|
|
4705
|
+
const trailingDelimiter = segments[index + 1] ?? "";
|
|
4706
|
+
const matchedField = segment.includes(":") ? matchedFieldFor(segment) : undefined;
|
|
4707
|
+
if (!matchedField) {
|
|
4708
|
+
elements.push(`\`${escapeForTemplateLiteral(segment)}${escapeForTemplateLiteral(trailingDelimiter)}\``);
|
|
4709
|
+
continue;
|
|
4710
|
+
}
|
|
4711
|
+
const colonIndex = segment.indexOf(":");
|
|
4712
|
+
const facetKey = segment.slice(0, colonIndex);
|
|
4713
|
+
const segmentLiteral = `\`${escapeForTemplateLiteral(`${facetKey}:`)}\${payload.${matchedField}}${escapeForTemplateLiteral(trailingDelimiter)}\``;
|
|
4714
|
+
elements.push(optionalFields.has(matchedField)
|
|
4715
|
+
? `...(payload.${matchedField} ? [${segmentLiteral}] : [])`
|
|
4716
|
+
: segmentLiteral);
|
|
4717
|
+
}
|
|
4718
|
+
return `[${elements.join(", ")}].join("")`;
|
|
4668
4719
|
}
|
|
4669
4720
|
/**
|
|
4670
4721
|
* Renders the variables literal for the primary-operation getGql() call —
|
|
@@ -4674,15 +4725,20 @@ function spliceFacetsIntoStringVariable(value, fields) {
|
|
|
4674
4725
|
* a string packing facets in a delimited `key:value` grammar (see
|
|
4675
4726
|
* {@link spliceFacetsIntoStringVariable}), a correlated facet's value slot is
|
|
4676
4727
|
* spliced with `payload.<Field>` instead of freezing the whole string; any
|
|
4677
|
-
* other value is emitted verbatim via JSON.stringify.
|
|
4728
|
+
* other value is emitted verbatim via JSON.stringify. `optionalFieldNames`
|
|
4729
|
+
* marks which of `payloadFieldNames` a facet-string splice should treat as
|
|
4730
|
+
* optional (see {@link spliceFacetsIntoStringVariable}); it has no effect on
|
|
4731
|
+
* top-level key correlation.
|
|
4678
4732
|
*/
|
|
4679
|
-
function renderGqlVariablesExpr(variables, payloadFieldNames) {
|
|
4733
|
+
function renderGqlVariablesExpr(variables, payloadFieldNames, optionalFieldNames = new Set()) {
|
|
4680
4734
|
if (variables === null || typeof variables !== "object" || Array.isArray(variables))
|
|
4681
4735
|
return "{}";
|
|
4682
4736
|
const fields = payloadFieldNames ? [...payloadFieldNames] : [];
|
|
4683
4737
|
const entries = Object.entries(variables).map(([key, value]) => {
|
|
4684
4738
|
const matchedField = fields.find((field) => field.toLowerCase() === key.toLowerCase());
|
|
4685
|
-
const facetSpliceExpr = matchedField
|
|
4739
|
+
const facetSpliceExpr = matchedField
|
|
4740
|
+
? null
|
|
4741
|
+
: spliceFacetsIntoStringVariable(value, fields, optionalFieldNames);
|
|
4686
4742
|
const valueExpr = matchedField
|
|
4687
4743
|
? `payload.${matchedField}`
|
|
4688
4744
|
: (facetSpliceExpr ?? JSON.stringify(value));
|
|
@@ -5034,6 +5090,48 @@ function findFrozenVaryingDrillParams(capture, renderedText, allCaptures) {
|
|
|
5034
5090
|
}
|
|
5035
5091
|
return frozen;
|
|
5036
5092
|
}
|
|
5093
|
+
/** Renders a {@link FoldReturnSpec.drillParamBindings} entry's default value
|
|
5094
|
+
* as a JS literal — a `string` default is quoted so the emitted `??` operand
|
|
5095
|
+
* is valid source text, while `int`/`boolean` defaults print as their bare
|
|
5096
|
+
* JS `typeof` (already enforced by {@link DRILL_PARAM_BINDING_TYPEOF} at
|
|
5097
|
+
* parse time). */
|
|
5098
|
+
function formatDrillParamBindingDefault(type, value) {
|
|
5099
|
+
return type === "string" ? JSON.stringify(value) : String(value);
|
|
5100
|
+
}
|
|
5101
|
+
/**
|
|
5102
|
+
* Rewrites the still-literal value of any query param on `text` that has a
|
|
5103
|
+
* {@link FoldReturnSpec.drillParamBindings} entry into a
|
|
5104
|
+
* `${payload.<field> ?? <default>}` accessor — but only when `capture` (the
|
|
5105
|
+
* request `text` was rendered from) matches the spec's OWN
|
|
5106
|
+
* `endpointPattern`, via {@link compileFoldReturnEndpointMatcher}. That
|
|
5107
|
+
* guard is the point: two drill-downs in the same chain can share a query
|
|
5108
|
+
* param name (`adults`), and only the one the flow author actually bound is
|
|
5109
|
+
* allowed to have it rewritten — an unrelated same-shaped endpoint elsewhere
|
|
5110
|
+
* in the chain is left untouched.
|
|
5111
|
+
*
|
|
5112
|
+
* Purely additive: a spec with no `drillParamBindings`, or a capture that
|
|
5113
|
+
* doesn't match `endpointPattern`, returns `text` unchanged. A param already
|
|
5114
|
+
* rewritten to a `${...}` accessor by the threaded-fields substitution pass
|
|
5115
|
+
* (run immediately before this) is left alone too — this only fires on a
|
|
5116
|
+
* value still sitting in the text as a literal.
|
|
5117
|
+
*
|
|
5118
|
+
* Anchored to the exact `key=value` query pair (via a `[?&]key=` prefix,
|
|
5119
|
+
* consuming up to the next `&`) rather than a bare literal-value swap, so a
|
|
5120
|
+
* path segment or unrelated param that happens to hold the same literal
|
|
5121
|
+
* value is never touched.
|
|
5122
|
+
*/
|
|
5123
|
+
function applyDrillParamBindings(spec, capture, text) {
|
|
5124
|
+
if (spec?.drillParamBindings === undefined)
|
|
5125
|
+
return text;
|
|
5126
|
+
if (!compileFoldReturnEndpointMatcher(spec)(capture))
|
|
5127
|
+
return text;
|
|
5128
|
+
return Object.entries(spec.drillParamBindings).reduce((acc, [paramName, binding]) => {
|
|
5129
|
+
const accessor = `\${payload.${binding.payloadField} ?? ${formatDrillParamBindingDefault(binding.type, binding.default)}}`;
|
|
5130
|
+
const escapedParamName = paramName.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
5131
|
+
const paramRx = new RegExp(`([?&]${escapedParamName}=)([^&]*)`, "g");
|
|
5132
|
+
return acc.replace(paramRx, (full, prefix, value) => value.startsWith("${") ? full : `${prefix}${accessor}`);
|
|
5133
|
+
}, text);
|
|
5134
|
+
}
|
|
5037
5135
|
/** Throws when {@link findFrozenVaryingDrillParams} finds any frozen-but-
|
|
5038
5136
|
* varying literal — shared by {@link parameterizeUrl} (below) and
|
|
5039
5137
|
* `emitMultiStepExecuteHttp`'s own `parameterize` so the two emitters can't
|
|
@@ -5611,7 +5709,7 @@ function parseFoldReturnSpec(flowFileContents) {
|
|
|
5611
5709
|
if (foldReturn === undefined || foldReturn === null || typeof foldReturn !== "object") {
|
|
5612
5710
|
return null;
|
|
5613
5711
|
}
|
|
5614
|
-
const { endpointPattern, resultsPath, drillResultsPath, joinFields } = foldReturn;
|
|
5712
|
+
const { endpointPattern, resultsPath, drillResultsPath, joinFields, drillParamBindings } = foldReturn;
|
|
5615
5713
|
if (typeof endpointPattern !== "string" ||
|
|
5616
5714
|
typeof resultsPath !== "string" ||
|
|
5617
5715
|
(drillResultsPath !== undefined &&
|
|
@@ -5621,17 +5719,55 @@ function parseFoldReturnSpec(flowFileContents) {
|
|
|
5621
5719
|
!joinFields.every((f) => typeof f === "string" && f.length > 0)) {
|
|
5622
5720
|
return null;
|
|
5623
5721
|
}
|
|
5722
|
+
const parsedDrillParamBindings = drillParamBindings !== undefined ? parseDrillParamBindings(drillParamBindings) : undefined;
|
|
5723
|
+
if (drillParamBindings !== undefined && parsedDrillParamBindings === null) {
|
|
5724
|
+
return null;
|
|
5725
|
+
}
|
|
5624
5726
|
return {
|
|
5625
5727
|
endpointPattern,
|
|
5626
5728
|
resultsPath,
|
|
5627
5729
|
...(drillResultsPath !== undefined ? { drillResultsPath } : {}),
|
|
5628
5730
|
joinFields,
|
|
5731
|
+
...(parsedDrillParamBindings ? { drillParamBindings: parsedDrillParamBindings } : {}),
|
|
5629
5732
|
};
|
|
5630
5733
|
}
|
|
5631
5734
|
catch {
|
|
5632
5735
|
return null;
|
|
5633
5736
|
}
|
|
5634
5737
|
}
|
|
5738
|
+
/** The JS `typeof` a `drillParamBindings` entry's `default` must match for
|
|
5739
|
+
* its declared `type` — the same "assert the type, then check the default
|
|
5740
|
+
* agrees" pattern the rest of {@link parseFoldReturnSpec} uses for its other
|
|
5741
|
+
* fields, so a mistyped default is rejected at parse time rather than
|
|
5742
|
+
* surfacing as a runtime coercion mismatch downstream. */
|
|
5743
|
+
const DRILL_PARAM_BINDING_TYPEOF = {
|
|
5744
|
+
int: "number",
|
|
5745
|
+
string: "string",
|
|
5746
|
+
boolean: "boolean",
|
|
5747
|
+
};
|
|
5748
|
+
/** Validates the `drillParamBindings` map on an object-form `foldReturn`
|
|
5749
|
+
* block, returning `null` on any malformed entry so the caller can drop the
|
|
5750
|
+
* whole `foldReturn` — mirroring how {@link parseFoldReturnSpec} already
|
|
5751
|
+
* treats a malformed `joinFields`/`drillResultsPath`. */
|
|
5752
|
+
function parseDrillParamBindings(raw) {
|
|
5753
|
+
if (raw === null || typeof raw !== "object" || Array.isArray(raw))
|
|
5754
|
+
return null;
|
|
5755
|
+
const entries = Object.entries(raw);
|
|
5756
|
+
const parsed = {};
|
|
5757
|
+
for (const [paramName, entry] of entries) {
|
|
5758
|
+
if (entry === null || typeof entry !== "object")
|
|
5759
|
+
return null;
|
|
5760
|
+
const { payloadField, type, default: defaultValue, } = entry;
|
|
5761
|
+
if (typeof payloadField !== "string" ||
|
|
5762
|
+
payloadField.length === 0 ||
|
|
5763
|
+
(type !== "int" && type !== "string" && type !== "boolean") ||
|
|
5764
|
+
typeof defaultValue !== DRILL_PARAM_BINDING_TYPEOF[type]) {
|
|
5765
|
+
return null;
|
|
5766
|
+
}
|
|
5767
|
+
parsed[paramName] = { payloadField, type, default: defaultValue };
|
|
5768
|
+
}
|
|
5769
|
+
return parsed;
|
|
5770
|
+
}
|
|
5635
5771
|
/** Reads the value at an exact JSON path out of a response body, or
|
|
5636
5772
|
* `undefined` when any segment doesn't resolve. The exactness is the point:
|
|
5637
5773
|
* {@link findObjectArrayField} is a DFS FIRST-match, so it would silently
|
|
@@ -6571,8 +6707,10 @@ function buildContractChecklist(opts) {
|
|
|
6571
6707
|
outOfTreeChecklistLine,
|
|
6572
6708
|
].filter((line) => line !== "");
|
|
6573
6709
|
}
|
|
6710
|
+
/** Generates a complete contract.ts source string for a plugin — exported so
|
|
6711
|
+
* unit tests can drive the emitter directly without spawning the CLI. */
|
|
6574
6712
|
function emitContractTs(opts) {
|
|
6575
|
-
const { siteId, displayName, pascal, baseUrl, baseHeaders, minTime, safeRps, hasRateLimitProbeData = false, responseBody, responseBodySamples = [responseBody], gql, gqlQuery, endpointPath, gqlOperationName, gqlVariables, auxFiles, multiStepBody, omitExecuteHttp = false, isSubmissionFlow = false, inputBody, hasMultipartStep = false, actionSteps = [], foldReturnSpec = null, discoveredFormFields, fieldOptionsMap, discoveredOptionFields, discoveredRawOptionFields, discoveredAdditionalBodyKeys, discoveredStructuredKeys, payloadFieldNames, headerBindings = [], unpopulatedDeclaredVariables = [], } = opts;
|
|
6713
|
+
const { siteId, displayName, pascal, baseUrl, baseHeaders, minTime, safeRps, hasRateLimitProbeData = false, responseBody, responseBodySamples = [responseBody], gql, gqlQuery, endpointPath, gqlOperationName, gqlVariables, auxFiles, multiStepBody, omitExecuteHttp = false, isSubmissionFlow = false, inputBody, hasMultipartStep = false, actionSteps = [], foldReturnSpec = null, discoveredFormFields, fieldOptionsMap, discoveredOptionFields, discoveredRawOptionFields, discoveredAdditionalBodyKeys, discoveredStructuredKeys, payloadFieldNames, optionalPayloadFieldNames = new Set(), headerBindings = [], unpopulatedDeclaredVariables = [], } = opts;
|
|
6576
6714
|
// This is the CLIENT-level schema — createHttpClient's default, and the
|
|
6577
6715
|
// plugin's caller-facing contract (what executeHttp's return value promises
|
|
6578
6716
|
// its own caller). It does NOT validate any individual call in a multi-step
|
|
@@ -6724,6 +6862,25 @@ function emitContractTs(opts) {
|
|
|
6724
6862
|
"ResumeBase64",
|
|
6725
6863
|
]);
|
|
6726
6864
|
const isReservedByApplicantContactSchema = (name) => Boolean(inputBody) && applicantContactFieldNames.has(name);
|
|
6865
|
+
// A declared foldReturn.drillParamBindings names drill query params that
|
|
6866
|
+
// are caller-driven instead of frozen literals (see
|
|
6867
|
+
// recon-generate-foldreturn-cannot-bind-drill-query-param-to-caller-payload.md)
|
|
6868
|
+
// — each binding's payloadField becomes a typed, defaulted, optional
|
|
6869
|
+
// payload field, so omitting it preserves today's frozen-literal behavior
|
|
6870
|
+
// and supplying it lets the caller drive the drill request. Sorted by
|
|
6871
|
+
// payloadField for the same deterministic-output ordering the other
|
|
6872
|
+
// discovered-field loops already keep.
|
|
6873
|
+
const drillParamBindingEntries = Object.values(foldReturnSpec?.drillParamBindings ?? {}).sort((a, b) => a.payloadField.localeCompare(b.payloadField));
|
|
6874
|
+
for (const binding of drillParamBindingEntries) {
|
|
6875
|
+
if (isReservedByApplicantContactSchema(binding.payloadField))
|
|
6876
|
+
continue;
|
|
6877
|
+
const zod = binding.type === "int"
|
|
6878
|
+
? `z.coerce.number().int().optional().default(${JSON.stringify(binding.default)})`
|
|
6879
|
+
: binding.type === "boolean"
|
|
6880
|
+
? `z.coerce.boolean().optional().default(${JSON.stringify(binding.default)})`
|
|
6881
|
+
: `z.string().optional().default(${JSON.stringify(binding.default)})`;
|
|
6882
|
+
addExtendField(binding.payloadField, ` ${binding.payloadField}: ${zod},`);
|
|
6883
|
+
}
|
|
6727
6884
|
// Multi-step flows that include a multipart upload need the binary asset
|
|
6728
6885
|
// on the payload. A query-type flow (no ApplicantContactSchema base) still
|
|
6729
6886
|
// needs these fields spelled out explicitly.
|
|
@@ -6750,7 +6907,9 @@ function emitContractTs(opts) {
|
|
|
6750
6907
|
for (const name of [...payloadFieldNames].sort()) {
|
|
6751
6908
|
if (isReservedByApplicantContactSchema(name))
|
|
6752
6909
|
continue;
|
|
6753
|
-
|
|
6910
|
+
const zod = name === "Email" ? "z.email()" : "z.string()";
|
|
6911
|
+
const suffix = optionalPayloadFieldNames.has(name) ? ".optional()" : "";
|
|
6912
|
+
addExtendField(name, ` ${name}: ${zod}${suffix},`);
|
|
6754
6913
|
}
|
|
6755
6914
|
}
|
|
6756
6915
|
// Build per-field OPT_<Name> constant declarations + payload-schema enum
|
|
@@ -6962,7 +7121,7 @@ const httpClient = createHttpClient({ schema: ${pascal}ResponseSchema, bottlenec
|
|
|
6962
7121
|
? JSON.stringify(gqlOperationName)
|
|
6963
7122
|
: JSON.stringify(`${pascal}Search`);
|
|
6964
7123
|
const gqlVariablesExpr = gqlOperationName
|
|
6965
|
-
? renderGqlVariablesExpr(gqlVariables, payloadFieldNames)
|
|
7124
|
+
? renderGqlVariablesExpr(gqlVariables, payloadFieldNames, optionalPayloadFieldNames)
|
|
6966
7125
|
: "{ q: payload.query }";
|
|
6967
7126
|
/** Builds the nested `for` loop block(s) — see {@link pathToFoldLoopLines}
|
|
6968
7127
|
* — that fold every resolved plan's drill-down data onto `dataVarName`'s
|
|
@@ -7082,8 +7241,9 @@ const httpClient = createHttpClient({ schema: ${pascal}ResponseSchema, bottlenec
|
|
|
7082
7241
|
return acc;
|
|
7083
7242
|
return acc.replace(new RegExp(`\\b${stringValue.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}\\b`, "g"), `\${${scopedAccessor(varName, field)}}`);
|
|
7084
7243
|
}, withBase);
|
|
7085
|
-
|
|
7086
|
-
|
|
7244
|
+
const withDrillParamBindings = applyDrillParamBindings(foldReturnSpec, chainCapture, result);
|
|
7245
|
+
assertNoFrozenVaryingDrillParams("emitContractTs", chainCapture, withDrillParamBindings, actionSteps.map((s) => s.capture));
|
|
7246
|
+
return withDrillParamBindings;
|
|
7087
7247
|
};
|
|
7088
7248
|
const chainLines = [];
|
|
7089
7249
|
// True once any chain step's parameterized URL actually ends up
|
|
@@ -7435,9 +7595,17 @@ function emitConfigManifest(opts) {
|
|
|
7435
7595
|
const optional = isObj ? step.optional === true : false;
|
|
7436
7596
|
const upload = isObj ? step.upload === true : false;
|
|
7437
7597
|
const submitStep = isObj ? step.submitStep === true : false;
|
|
7438
|
-
|
|
7598
|
+
const emailStep = isObj ? step.emailStep === true : false;
|
|
7599
|
+
const emailStepConfig = isObj ? step.emailStepConfig : undefined;
|
|
7600
|
+
if (!optional && !upload && !submitStep && !emailStep)
|
|
7439
7601
|
return rewritten;
|
|
7440
|
-
return {
|
|
7602
|
+
return {
|
|
7603
|
+
step: rewritten,
|
|
7604
|
+
optional,
|
|
7605
|
+
upload,
|
|
7606
|
+
submitStep,
|
|
7607
|
+
...(emailStep ? { emailStep, emailStepConfig: emailStepConfig ?? {} } : {}),
|
|
7608
|
+
};
|
|
7441
7609
|
}
|
|
7442
7610
|
const field = resolveStepPayloadField(instruction, isObj ? step.payloadField : undefined, isObj ? step.payloadFieldNone : undefined, vocabulary, knownFieldValues);
|
|
7443
7611
|
if (field !== null)
|
|
@@ -7446,9 +7614,17 @@ function emitConfigManifest(opts) {
|
|
|
7446
7614
|
const optional = isObj ? step.optional === true : false;
|
|
7447
7615
|
const upload = isObj ? step.upload === true : false;
|
|
7448
7616
|
const submitStep = isObj ? step.submitStep === true : false;
|
|
7449
|
-
|
|
7617
|
+
const emailStep = isObj ? step.emailStep === true : false;
|
|
7618
|
+
const emailStepConfig = isObj ? step.emailStepConfig : undefined;
|
|
7619
|
+
if (!optional && !upload && !submitStep && !emailStep)
|
|
7450
7620
|
return rewritten;
|
|
7451
|
-
return {
|
|
7621
|
+
return {
|
|
7622
|
+
step: rewritten,
|
|
7623
|
+
optional,
|
|
7624
|
+
upload,
|
|
7625
|
+
submitStep,
|
|
7626
|
+
...(emailStep ? { emailStep, emailStepConfig: emailStepConfig ?? {} } : {}),
|
|
7627
|
+
};
|
|
7452
7628
|
});
|
|
7453
7629
|
// The last step of a submission flow is structurally the submit — force
|
|
7454
7630
|
// submitStep:true even when the source recon-flow.json step never declared
|
|
@@ -7519,12 +7695,39 @@ function emitConfigManifest(opts) {
|
|
|
7519
7695
|
function emitBrowserFlowTs(opts) {
|
|
7520
7696
|
const { siteId, pascal, flowSteps, isSubmissionFlow, hasMultipartStep = false, vocabulary, frameSelector, env = process.env, } = opts;
|
|
7521
7697
|
const payloadFieldNames = new Set();
|
|
7698
|
+
// Widest wins, mirroring the request-surface precedent above: a field is
|
|
7699
|
+
// only optional if EVERY step that registers it does so as optional.
|
|
7700
|
+
const optionalPayloadFieldNames = new Set();
|
|
7701
|
+
const requiredPayloadFieldNames = new Set();
|
|
7702
|
+
const registerFieldOptionality = (field, optional) => {
|
|
7703
|
+
if (optional && !requiredPayloadFieldNames.has(field))
|
|
7704
|
+
optionalPayloadFieldNames.add(field);
|
|
7705
|
+
if (!optional) {
|
|
7706
|
+
requiredPayloadFieldNames.add(field);
|
|
7707
|
+
optionalPayloadFieldNames.delete(field);
|
|
7708
|
+
}
|
|
7709
|
+
};
|
|
7522
7710
|
const hasUploadStep = flowSteps.some((s) => typeof s !== "string" && s.upload === true);
|
|
7523
7711
|
const knownFieldValues = buildKnownFieldValues(flowSteps, vocabulary ?? vocabulary_1.EMPTY_VOCABULARY, env);
|
|
7524
7712
|
let usesThrowawayPassword = false;
|
|
7713
|
+
let usesEmailStep = false;
|
|
7525
7714
|
const stepLiterals = flowSteps.map((step) => {
|
|
7526
7715
|
const isObj = typeof step !== "string";
|
|
7527
7716
|
const instruction = isObj ? step.step : step;
|
|
7717
|
+
// An emailStep is a distinct capability, not an ordinary instruction: it
|
|
7718
|
+
// polls the allocated inbox at runtime rather than reading anything off
|
|
7719
|
+
// the payload, so it bypasses resolveStepPayloadField/the composite-persona
|
|
7720
|
+
// resolver entirely and never contributes a payload.<field> splice — its
|
|
7721
|
+
// instruction is emitted as a plain literal, same as buildStepInstructionExpr
|
|
7722
|
+
// does for a field-less step.
|
|
7723
|
+
if (isObj && step.emailStep === true) {
|
|
7724
|
+
usesEmailStep = true;
|
|
7725
|
+
const optional = step.optional === true;
|
|
7726
|
+
const upload = step.upload === true;
|
|
7727
|
+
const submitStep = step.submitStep === true;
|
|
7728
|
+
const emailStepConfigExpr = JSON.stringify(step.emailStepConfig ?? {});
|
|
7729
|
+
return ` { instruction: ${JSON.stringify(instruction)}, optional: ${optional}, upload: ${upload}, submitStep: ${submitStep}, emailStep: true, emailStepConfig: ${emailStepConfigExpr} },`;
|
|
7730
|
+
}
|
|
7528
7731
|
// ${RECON_PASSWORD} is reserved-tooling, not a domain-vocabulary concern —
|
|
7529
7732
|
// it names a credential the recon capture needed to authenticate, not a
|
|
7530
7733
|
// piece of the caller's applicant identity, so it never reaches
|
|
@@ -7542,16 +7745,20 @@ function emitBrowserFlowTs(opts) {
|
|
|
7542
7745
|
const composite = field === null && !(isObj && step.payloadFieldNone)
|
|
7543
7746
|
? resolveCompositePersonaFields(instruction, knownFieldValues)
|
|
7544
7747
|
: null;
|
|
7545
|
-
|
|
7748
|
+
const optional = isObj ? step.optional === true : false;
|
|
7749
|
+
if (field !== null) {
|
|
7546
7750
|
payloadFieldNames.add(field);
|
|
7751
|
+
registerFieldOptionality(field, optional);
|
|
7752
|
+
}
|
|
7547
7753
|
if (composite !== null) {
|
|
7548
7754
|
payloadFieldNames.add(composite.fieldA);
|
|
7549
7755
|
payloadFieldNames.add(composite.fieldB);
|
|
7756
|
+
registerFieldOptionality(composite.fieldA, optional);
|
|
7757
|
+
registerFieldOptionality(composite.fieldB, optional);
|
|
7550
7758
|
}
|
|
7551
7759
|
const instructionExpr = composite !== null
|
|
7552
7760
|
? buildCompositeStepInstructionExpr(instruction, composite.fieldA, composite.fieldB)
|
|
7553
7761
|
: buildStepInstructionExpr(instruction, field);
|
|
7554
|
-
const optional = isObj ? step.optional === true : false;
|
|
7555
7762
|
const upload = isObj ? step.upload === true : false;
|
|
7556
7763
|
const submitStep = isObj ? step.submitStep === true : false;
|
|
7557
7764
|
return ` { instruction: ${instructionExpr}, optional: ${optional}, upload: ${upload}, submitStep: ${submitStep} },`;
|
|
@@ -7601,7 +7808,7 @@ import type { Stagehand } from "@browserbasehq/stagehand";${isSubmissionFlow ? `
|
|
|
7601
7808
|
import { buildAnthropicClient, buildRephraseModel } from "${ENGINE_PKG}/lib/llm/anthropic-client";
|
|
7602
7809
|
import { getLogger } from "${ENGINE_PKG}/lib/logging";${usesThrowawayPassword ? `\nimport { generateThrowawayPassword } from "${ENGINE_PKG}/lib/random";` : ""}
|
|
7603
7810
|
import { type HealingFlowStep, runHealingFlow, waitForSpaReady } from "${ENGINE_PKG}/scraper/flow-runner";
|
|
7604
|
-
import { guardedExtract } from "${ENGINE_PKG}/scraper/stagehand-guard"
|
|
7811
|
+
import { guardedExtract } from "${ENGINE_PKG}/scraper/stagehand-guard";${usesEmailStep ? `\nimport { testmailInboxFromAddress } from "${ENGINE_PKG}/testmail/client";` : ""}
|
|
7605
7812
|
import ${isSubmissionFlow
|
|
7606
7813
|
? `type { ${pascal}Payload, ${pascal}Response }`
|
|
7607
7814
|
: `{ type ${pascal}Payload, type ${pascal}Response, ${pascal}ResponseSchema }`} from "@/sites/${siteId}/contract";
|
|
@@ -7632,7 +7839,7 @@ export async function run${pascal}BrowserFlow(
|
|
|
7632
7839
|
// networkidle can resolve before a bot-managed/CDN-fronted SPA hydrates; wait for
|
|
7633
7840
|
// the real DOM so the first steps don't probe an empty shell page and skip.
|
|
7634
7841
|
await waitForSpaReady(page, logger);
|
|
7635
|
-
${usesThrowawayPassword ? "\n // Minted once per run — the flow needs a credential to authenticate, but\n // there is no caller-supplied Password field on the payload to splice.\n const throwawayPassword = generateThrowawayPassword();\n" : ""}
|
|
7842
|
+
${usesThrowawayPassword ? "\n // Minted once per run — the flow needs a credential to authenticate, but\n // there is no caller-supplied Password field on the payload to splice.\n const throwawayPassword = generateThrowawayPassword();\n" : ""}${usesEmailStep ? "\n // Resolved once per run from the caller-supplied Email — the emailStep hook\n // polls this inbox rather than a freshly allocated one, since the applicant\n // (not this run) owns the address the ATS actually emails.\n const allocatedInbox = testmailInboxFromAddress(payload.Email);\n" : ""}
|
|
7636
7843
|
const FLOW_STEPS: HealingFlowStep[] = [
|
|
7637
7844
|
${flowStepsBlock}
|
|
7638
7845
|
];
|
|
@@ -7648,7 +7855,7 @@ ${flowStepsBlock}
|
|
|
7648
7855
|
logger,
|
|
7649
7856
|
anthropic: buildAnthropicClient(),
|
|
7650
7857
|
rephraseModel: buildRephraseModel(),
|
|
7651
|
-
uploadFixture: ${uploadFixtureExpr},${frameSelector !== undefined ? `\n frameSelector: ${JSON.stringify(frameSelector)},` : ""}
|
|
7858
|
+
uploadFixture: ${uploadFixtureExpr},${frameSelector !== undefined ? `\n frameSelector: ${JSON.stringify(frameSelector)},` : ""}${usesEmailStep ? "\n allocatedInbox: allocatedInbox," : ""}
|
|
7652
7859
|
});
|
|
7653
7860
|
|
|
7654
7861
|
// Schema-enforced extract via guardedExtract: Stagehand 3.4.0 accepts
|
|
@@ -7685,7 +7892,7 @@ ${flowStepsBlock}
|
|
|
7685
7892
|
}
|
|
7686
7893
|
`}`;
|
|
7687
7894
|
assertNoLeakedPersonaConstant(code, knownFieldValues);
|
|
7688
|
-
return { code, payloadFieldNames };
|
|
7895
|
+
return { code, payloadFieldNames, optionalPayloadFieldNames };
|
|
7689
7896
|
}
|
|
7690
7897
|
/** Generates the site's index.ts barrel — exported so the out-of-tree e2e
|
|
7691
7898
|
* test can drive the emitter directly without spawning the CLI. */
|
|
@@ -8319,6 +8526,7 @@ async function main() {
|
|
|
8319
8526
|
discoveredAdditionalBodyKeys,
|
|
8320
8527
|
discoveredStructuredKeys,
|
|
8321
8528
|
payloadFieldNames: browserFlow.payloadFieldNames,
|
|
8529
|
+
optionalPayloadFieldNames: browserFlow.optionalPayloadFieldNames,
|
|
8322
8530
|
headerBindings,
|
|
8323
8531
|
unpopulatedDeclaredVariables: primaryGraphQLOperation?.unpopulatedDeclaredVariables ?? [],
|
|
8324
8532
|
};
|