@enricai/barnacle 1.12.76 → 1.12.78
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/scraper/flow-runner.d.ts +13 -0
- package/dist/scraper/flow-runner.d.ts.map +1 -1
- package/dist/scraper/flow-runner.js +114 -24
- package/dist/scraper/flow-runner.js.map +1 -1
- package/dist/scraper/phantom-click.d.ts +24 -6
- package/dist/scraper/phantom-click.d.ts.map +1 -1
- package/dist/scraper/phantom-click.js +87 -19
- package/dist/scraper/phantom-click.js.map +1 -1
- package/dist/scripts/recon-browser.d.ts +4 -1
- package/dist/scripts/recon-browser.d.ts.map +1 -1
- package/dist/scripts/recon-browser.js +5 -5
- package/dist/scripts/recon-browser.js.map +1 -1
- package/dist/scripts/recon-generate.d.ts +103 -2
- package/dist/scripts/recon-generate.d.ts.map +1 -1
- package/dist/scripts/recon-generate.js +857 -117
- package/dist/scripts/recon-generate.js.map +1 -1
- package/package.json +2 -2
|
@@ -43,10 +43,10 @@ export interface PhantomClickAttempt {
|
|
|
43
43
|
* Mirrors flow-runner's own `isPlausibleStepDestination` gate on its
|
|
44
44
|
* `urlChanged`/`retryUrlChanged` signals: false when the post-URL landed
|
|
45
45
|
* on a destination (e.g. a sign-in gate) that doesn't plausibly
|
|
46
|
-
* corroborate the step's own instruction.
|
|
47
|
-
*
|
|
46
|
+
* corroborate the step's own instruction. Required so no caller can
|
|
47
|
+
* silently fail open; it vetoes every effect signal, not only the URL ones.
|
|
48
48
|
*/
|
|
49
|
-
destinationPlausible
|
|
49
|
+
destinationPlausible: boolean;
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
52
52
|
* Credits a navigation as real only when origin or pathname actually
|
|
@@ -58,14 +58,32 @@ export interface PhantomClickAttempt {
|
|
|
58
58
|
export declare function hasOriginOrPathChanged(preUrl: string, postUrl: string): boolean;
|
|
59
59
|
/** Word-boundary phrase patterns identifying a sign-in/log-in step. */
|
|
60
60
|
export declare const SIGN_IN_PATTERNS: RegExp[];
|
|
61
|
+
/**
|
|
62
|
+
* Splits a step instruction into its comma/"to"/"and"-delimited clauses and
|
|
63
|
+
* keeps only the ones containing a recognized imperative action verb, so
|
|
64
|
+
* pattern matching (e.g. {@link SIGN_IN_PATTERNS}) targets the step's own
|
|
65
|
+
* action rather than descriptive context that merely mentions a page element.
|
|
66
|
+
* Falls back to every clause when none carry a recognized verb, preserving
|
|
67
|
+
* today's conservative whole-text behavior for unparseable instruction shapes
|
|
68
|
+
* rather than silently passing. Exported so other sign-in-shaped-instruction
|
|
69
|
+
* checks (e.g. bugfix-002) can reuse the same clause isolation. Does not split
|
|
70
|
+
* on " to " when it directly follows a {@link TO_COMPLEMENT_VERBS} verb, so
|
|
71
|
+
* "navigate to the sign in page" stays one clause instead of stranding "the
|
|
72
|
+
* sign in page" apart from its governing verb.
|
|
73
|
+
*/
|
|
74
|
+
export declare function splitIntoActionClauses(instruction: string): string[];
|
|
61
75
|
/**
|
|
62
76
|
* Gates whether a landed destination plausibly corroborates a step's own
|
|
63
77
|
* instruction, so a URL change alone is never enough to credit advancement:
|
|
64
78
|
* if the destination is sign-in-shaped but the step itself wasn't about
|
|
65
79
|
* signing in, the page bounced back to an auth gate rather than advancing.
|
|
66
|
-
*
|
|
67
|
-
* {@link
|
|
68
|
-
*
|
|
80
|
+
* Matches {@link SIGN_IN_PATTERNS} only against the instruction's own
|
|
81
|
+
* action clause(s) (see {@link splitIntoActionClauses}), so a step whose
|
|
82
|
+
* surrounding descriptive text merely mentions a sign-in form isn't
|
|
83
|
+
* mistaken for a step that is itself about signing in. Fails open (returns
|
|
84
|
+
* true) on an unparseable postUrl, matching {@link hasOriginOrPathChanged}'s
|
|
85
|
+
* own try/catch style, since an unparseable URL gives no basis for a
|
|
86
|
+
* sign-in-shaped veto.
|
|
69
87
|
*/
|
|
70
88
|
export declare function isPlausibleStepDestination(stepInstruction: string, postUrl: string): boolean;
|
|
71
89
|
export type PhantomClickVerdict =
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phantom-click.d.ts","sourceRoot":"","sources":["../../src/scraper/phantom-click.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,yEAAyE;IACzE,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAC;IACjC,GAAG,EAAE,oBAAoB,CAAC;IAC1B,IAAI,EAAE,oBAAoB,CAAC;IAC3B;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,oBAAoB,
|
|
1
|
+
{"version":3,"file":"phantom-click.d.ts","sourceRoot":"","sources":["../../src/scraper/phantom-click.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,yEAAyE;IACzE,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAC;IACjC,GAAG,EAAE,oBAAoB,CAAC;IAC1B,IAAI,EAAE,oBAAoB,CAAC;IAC3B;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAWD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAE/E;AAED,uEAAuE;AACvE,eAAO,MAAM,gBAAgB,UAA0C,CAAC;AAwDxE;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAapE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAa5F;AAED,MAAM,MAAM,mBAAmB;AAC7B,0FAA0F;AACxF,SAAS;AACX,mEAAmE;GACjE,WAAW;AACb,kKAAkK;GAChK,YAAY,CAAC;AAEjB;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,mBAAmB,CAkBtF"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.TRIVIAL_DOM_DELTA_BYTES = exports.SIGN_IN_PATTERNS = void 0;
|
|
11
11
|
exports.hasOriginOrPathChanged = hasOriginOrPathChanged;
|
|
12
|
+
exports.splitIntoActionClauses = splitIntoActionClauses;
|
|
12
13
|
exports.isPlausibleStepDestination = isPlausibleStepDestination;
|
|
13
14
|
exports.classifyPhantomClick = classifyPhantomClick;
|
|
14
15
|
function originAndPathOf(url) {
|
|
@@ -36,14 +37,89 @@ exports.SIGN_IN_PATTERNS = [/\bsign[\s-]?in\b/, /\blog[\s-]?in\b/];
|
|
|
36
37
|
function normalizeForPatternMatch(instruction) {
|
|
37
38
|
return instruction.replace(/\s+/g, " ").trim().toLowerCase();
|
|
38
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Closed list of recognized step-instruction imperative verbs, mirroring the
|
|
42
|
+
* closed-list style of recon-browser.ts's ACCOUNT_CREATION_PATTERNS/
|
|
43
|
+
* SUBMIT_SHAPED_INSTRUCTION_PATTERNS, used to isolate a step instruction's
|
|
44
|
+
* own action clause(s) from surrounding descriptive context.
|
|
45
|
+
*/
|
|
46
|
+
const STEP_ACTION_VERBS = [
|
|
47
|
+
"click",
|
|
48
|
+
"tap",
|
|
49
|
+
"press",
|
|
50
|
+
"select",
|
|
51
|
+
"choose",
|
|
52
|
+
"check",
|
|
53
|
+
"uncheck",
|
|
54
|
+
"toggle",
|
|
55
|
+
"fill",
|
|
56
|
+
"type",
|
|
57
|
+
"enter",
|
|
58
|
+
"input",
|
|
59
|
+
"upload",
|
|
60
|
+
"attach",
|
|
61
|
+
"drag",
|
|
62
|
+
"drop",
|
|
63
|
+
"scroll",
|
|
64
|
+
"submit",
|
|
65
|
+
"switch",
|
|
66
|
+
"navigate",
|
|
67
|
+
"open",
|
|
68
|
+
"expand",
|
|
69
|
+
"collapse",
|
|
70
|
+
"confirm",
|
|
71
|
+
"agree",
|
|
72
|
+
"accept",
|
|
73
|
+
"continue",
|
|
74
|
+
];
|
|
75
|
+
const STEP_ACTION_VERB_PATTERN = new RegExp(`\\b(?:${STEP_ACTION_VERBS.join("|")})\\b`);
|
|
76
|
+
/**
|
|
77
|
+
* Verbs whose own direct complement is introduced by "to" (e.g. "navigate to
|
|
78
|
+
* the sign in page"), so splitting on " to " must NOT sever them from that
|
|
79
|
+
* complement the way it severs e.g. "click sign in to continue" into
|
|
80
|
+
* independent clauses — doing so would strand the verb's own target text
|
|
81
|
+
* (which is where a sign-in-shaped match actually lives) in a clause with no
|
|
82
|
+
* recognized action verb, and {@link splitIntoActionClauses} would then
|
|
83
|
+
* discard it as non-action descriptive context.
|
|
84
|
+
*/
|
|
85
|
+
const TO_COMPLEMENT_VERBS = ["navigate", "go", "switch", "scroll", "open", "proceed"];
|
|
86
|
+
/**
|
|
87
|
+
* Splits a step instruction into its comma/"to"/"and"-delimited clauses and
|
|
88
|
+
* keeps only the ones containing a recognized imperative action verb, so
|
|
89
|
+
* pattern matching (e.g. {@link SIGN_IN_PATTERNS}) targets the step's own
|
|
90
|
+
* action rather than descriptive context that merely mentions a page element.
|
|
91
|
+
* Falls back to every clause when none carry a recognized verb, preserving
|
|
92
|
+
* today's conservative whole-text behavior for unparseable instruction shapes
|
|
93
|
+
* rather than silently passing. Exported so other sign-in-shaped-instruction
|
|
94
|
+
* checks (e.g. bugfix-002) can reuse the same clause isolation. Does not split
|
|
95
|
+
* on " to " when it directly follows a {@link TO_COMPLEMENT_VERBS} verb, so
|
|
96
|
+
* "navigate to the sign in page" stays one clause instead of stranding "the
|
|
97
|
+
* sign in page" apart from its governing verb.
|
|
98
|
+
*/
|
|
99
|
+
function splitIntoActionClauses(instruction) {
|
|
100
|
+
const normalized = normalizeForPatternMatch(instruction);
|
|
101
|
+
const toComplementPattern = new RegExp(`\\b(?:${TO_COMPLEMENT_VERBS.join("|")}) to `);
|
|
102
|
+
const toPlaceholder = "__BARNACLE_TO__";
|
|
103
|
+
const protectedText = normalized.replace(toComplementPattern, (match) => match.replace(" to ", ` ${toPlaceholder} `));
|
|
104
|
+
const clauses = protectedText
|
|
105
|
+
.split(/,| (?:to|and) /)
|
|
106
|
+
.map((clause) => clause.trim().replace(toPlaceholder, "to"))
|
|
107
|
+
.filter((clause) => clause.length > 0);
|
|
108
|
+
const actionClauses = clauses.filter((clause) => STEP_ACTION_VERB_PATTERN.test(clause));
|
|
109
|
+
return actionClauses.length > 0 ? actionClauses : clauses;
|
|
110
|
+
}
|
|
39
111
|
/**
|
|
40
112
|
* Gates whether a landed destination plausibly corroborates a step's own
|
|
41
113
|
* instruction, so a URL change alone is never enough to credit advancement:
|
|
42
114
|
* if the destination is sign-in-shaped but the step itself wasn't about
|
|
43
115
|
* signing in, the page bounced back to an auth gate rather than advancing.
|
|
44
|
-
*
|
|
45
|
-
* {@link
|
|
46
|
-
*
|
|
116
|
+
* Matches {@link SIGN_IN_PATTERNS} only against the instruction's own
|
|
117
|
+
* action clause(s) (see {@link splitIntoActionClauses}), so a step whose
|
|
118
|
+
* surrounding descriptive text merely mentions a sign-in form isn't
|
|
119
|
+
* mistaken for a step that is itself about signing in. Fails open (returns
|
|
120
|
+
* true) on an unparseable postUrl, matching {@link hasOriginOrPathChanged}'s
|
|
121
|
+
* own try/catch style, since an unparseable URL gives no basis for a
|
|
122
|
+
* sign-in-shaped veto.
|
|
47
123
|
*/
|
|
48
124
|
function isPlausibleStepDestination(stepInstruction, postUrl) {
|
|
49
125
|
const pathname = (() => {
|
|
@@ -59,8 +135,8 @@ function isPlausibleStepDestination(stepInstruction, postUrl) {
|
|
|
59
135
|
const landedOnSignIn = exports.SIGN_IN_PATTERNS.some((p) => p.test(pathname.toLowerCase()));
|
|
60
136
|
if (!landedOnSignIn)
|
|
61
137
|
return true;
|
|
62
|
-
const
|
|
63
|
-
return exports.SIGN_IN_PATTERNS.some((p) => p.test(
|
|
138
|
+
const actionClauses = splitIntoActionClauses(stepInstruction);
|
|
139
|
+
return actionClauses.some((clause) => exports.SIGN_IN_PATTERNS.some((p) => p.test(clause)));
|
|
64
140
|
}
|
|
65
141
|
/**
|
|
66
142
|
* Bytes of body-HTML growth treated as noise rather than a real DOM effect.
|
|
@@ -83,21 +159,13 @@ function classifyPhantomClick(attempt) {
|
|
|
83
159
|
return "unresolved";
|
|
84
160
|
const networkDelta = attempt.post.networkCount - attempt.pre.networkCount;
|
|
85
161
|
const bytesDelta = attempt.post.bodyHtmlLength - attempt.pre.bodyHtmlLength;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
//
|
|
90
|
-
//
|
|
91
|
-
// byte delta whose magnitude stays below the byte floor. Authoritative
|
|
92
|
-
// and element-scoped (`verifyDomEffect` read it off the clicked element, not a
|
|
93
|
-
// page-wide fingerprint), so an unrelated element's change can't fake it. NOT
|
|
94
|
-
// on a submit-shaped step: a submit must prove itself via network/URL, or the
|
|
95
|
-
// cascade's phantom-verdict-driven escalation to the deep submit locator would
|
|
96
|
-
// be defeated by a stray self-toggle on the submit button.
|
|
162
|
+
if (!attempt.destinationPlausible)
|
|
163
|
+
return "phantom";
|
|
164
|
+
const urlChanged = hasOriginOrPathChanged(attempt.pre.url, attempt.post.url);
|
|
165
|
+
// Element-scoped selection flip; not on a submit-shaped step, which must
|
|
166
|
+
// prove itself via network/URL or the deep-submit escalation is defeated.
|
|
97
167
|
const elementStateChanged = !attempt.isSubmitShapedStep && attempt.elementStateChanged === true;
|
|
98
|
-
//
|
|
99
|
-
// itself via network/URL, so a mere DOM-byte reflow (growth OR shrink) must
|
|
100
|
-
// not lift the verdict off `phantom` either.
|
|
168
|
+
// A submit-shaped step likewise ignores a mere DOM-byte reflow.
|
|
101
169
|
const bytesChangedSignificantly = !attempt.isSubmitShapedStep && Math.abs(bytesDelta) >= exports.TRIVIAL_DOM_DELTA_BYTES;
|
|
102
170
|
const hasEffect = networkDelta !== 0 || urlChanged || elementStateChanged || bytesChangedSignificantly;
|
|
103
171
|
return hasEffect ? "effective" : "phantom";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phantom-click.js","sourceRoot":"","sources":["../../src/scraper/phantom-click.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG
|
|
1
|
+
{"version":3,"file":"phantom-click.js","sourceRoot":"","sources":["../../src/scraper/phantom-click.ts"],"names":[],"mappings":"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"}
|
|
@@ -488,7 +488,10 @@ export declare function hasPageAlreadyAdvancedPastStep(stepStartUrl: string, cur
|
|
|
488
488
|
* siblings `isReplanReproposingFailedStep`/`isReplanCycle`. Matches on word
|
|
489
489
|
* boundaries (not plain substring) so instructions like "redesign in the
|
|
490
490
|
* layout" or "assign in the reviewer field" don't false-positive on "sign
|
|
491
|
-
* in".
|
|
491
|
+
* in". Scopes the Sign-In match to the step's own action clause (via
|
|
492
|
+
* `splitIntoActionClauses`, shared with `isPlausibleStepDestination`) so a
|
|
493
|
+
* step that merely mentions sign-in in descriptive context isn't mistaken
|
|
494
|
+
* for one that is itself about signing in. Pure.
|
|
492
495
|
*/
|
|
493
496
|
export declare function isReplanRegressingAcrossAuthBoundary(newSteps: readonly NormalizedStep[], completedSteps: readonly string[]): boolean;
|
|
494
497
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recon-browser.d.ts","sourceRoot":"","sources":["../../src/scripts/recon-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAMH,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAE/C,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGnF,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AA4B3B,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,SAAS,EAEd,KAAK,eAAe,EAKpB,KAAK,mBAAmB,EAgBzB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"recon-browser.d.ts","sourceRoot":"","sources":["../../src/scripts/recon-browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1231,7 +1231,10 @@ const ACCOUNT_CREATION_PATTERNS = [
|
|
|
1231
1231
|
* siblings `isReplanReproposingFailedStep`/`isReplanCycle`. Matches on word
|
|
1232
1232
|
* boundaries (not plain substring) so instructions like "redesign in the
|
|
1233
1233
|
* layout" or "assign in the reviewer field" don't false-positive on "sign
|
|
1234
|
-
* in".
|
|
1234
|
+
* in". Scopes the Sign-In match to the step's own action clause (via
|
|
1235
|
+
* `splitIntoActionClauses`, shared with `isPlausibleStepDestination`) so a
|
|
1236
|
+
* step that merely mentions sign-in in descriptive context isn't mistaken
|
|
1237
|
+
* for one that is itself about signing in. Pure.
|
|
1235
1238
|
*/
|
|
1236
1239
|
function isReplanRegressingAcrossAuthBoundary(newSteps, completedSteps) {
|
|
1237
1240
|
const hasAccountCreation = completedSteps.some((s) => {
|
|
@@ -1240,10 +1243,7 @@ function isReplanRegressingAcrossAuthBoundary(newSteps, completedSteps) {
|
|
|
1240
1243
|
});
|
|
1241
1244
|
if (!hasAccountCreation)
|
|
1242
1245
|
return false;
|
|
1243
|
-
return newSteps.some((s) =>
|
|
1244
|
-
const norm = normalizeInstruction(s.instruction);
|
|
1245
|
-
return phantom_click_1.SIGN_IN_PATTERNS.some((p) => p.test(norm));
|
|
1246
|
-
});
|
|
1246
|
+
return newSteps.some((s) => (0, phantom_click_1.splitIntoActionClauses)(s.instruction).some((clause) => phantom_click_1.SIGN_IN_PATTERNS.some((p) => p.test(clause))));
|
|
1247
1247
|
}
|
|
1248
1248
|
/** Word-boundary phrase patterns identifying submit/finalize wording in a step's own instruction text. */
|
|
1249
1249
|
const SUBMIT_SHAPED_INSTRUCTION_PATTERNS = [
|