clearcote 0.41.0 → 0.41.1

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 CHANGED
@@ -190,7 +190,7 @@ Geo data comes from the offline [geoip-all-in-one](https://github.com/daijro/geo
190
190
 
191
191
  ### Humanized input (`humanize`, `showCursor`)
192
192
 
193
- `humanize: true` installs **one consistent human-input standard** across every Playwright surface (`page.click`/`hover`/`dblclick`/`type`/`fill`/`press`/`selectOption`, `page.mouse.*`, `page.keyboard.type`/`press`, and the `Locator` equivalents incl. `dragTo`), dispatched as **native trusted input** (`isTrusted === true`, `navigator.webdriver` stays `false`). Mouse paths are slightly bowed cubic-beziers from the *last* cursor position (no snap to the corner), walked as a **sum of sub-movements with a min-jerk velocity profile** (a ballistic primary + corrective move — multi-peak velocity, not one symmetric bell); a held `mouse.down()` stays pressed across the move so `down → move → up` is a real drag. Typing is key-by-key with **gaussian inter-key timing** + word-boundary pauses + the occasional fat-finger correction (bulk values over 200 chars stay atomic). Scrolling uses **ease-out inertia** with the occasional reading pause, and moves the pointer over the content first when it isn't already there (a wheel event carries the cursor position). `<select>` options are chosen by stepping the focused, closed dropdown with the arrow keys, so the browser — not a script — emits the `change` event. `showCursor: true` injects a cursor dot for headed runs. Both default off.
193
+ `humanize: true` installs **one consistent human-input standard** across every Playwright surface (`page.click`/`hover`/`dblclick`/`type`/`fill`/`press`/`selectOption`, `page.mouse.*`, `page.keyboard.type`/`press`, and the `Locator` equivalents incl. `dragTo`), dispatched as **native trusted input** (`isTrusted === true`, `navigator.webdriver` stays `false`). Mouse paths are slightly bowed cubic-beziers from the *last* cursor position (no snap to the corner), walked as a **sum of sub-movements with a min-jerk velocity profile** (a ballistic primary + corrective move — multi-peak velocity, not one symmetric bell); a held `mouse.down()` stays pressed across the move so `down → move → up` is a real drag. Typing is key-by-key with **gaussian inter-key timing** + word-boundary pauses + the occasional fat-finger correction + **key rollover** (on some fast pairs the next key goes down before the previous one comes up, at a rate fixed per identity; bulk values over 200 chars stay atomic). Scrolling moves in **whole wheel notches** (100 px on a Windows identity, 120 on Linux, 40 on macOS; the requested distance is rounded to the nearest notch, at least one), because a browser reports every wheel event as one full notch, in short flicks with the occasional reading pause, and moves the pointer over the content first when it isn't already there (a wheel event carries the cursor position). `<select>` options are chosen by stepping the focused, closed dropdown with the arrow keys, so the browser — not a script — emits the `change` event. `showCursor: true` injects a cursor dot for headed runs. Both default off.
194
194
 
195
195
  ### Render-backend coherence check (`checkRenderCoherence`)
196
196
 
@@ -12,6 +12,17 @@ export interface HumanizeOptions {
12
12
  * an addInitScript source string AND when passed to page.evaluate. */
13
13
  export declare const CURSOR_OVERLAY = "(() => {\n if (window.__clearcoteCursor) return; window.__clearcoteCursor = 1;\n const make = () => {\n if (document.getElementById('__clearcote_cursor')) return;\n const d = document.createElement('div'); d.id = '__clearcote_cursor';\n d.style.cssText = 'position:fixed;left:0;top:0;width:20px;height:20px;margin:-10px 0 0 -10px;' +\n 'border-radius:50%;border:2px solid #ff3b3b;background:rgba(255,59,59,.22);' +\n 'box-shadow:0 0 10px rgba(255,59,59,.6);pointer-events:none;z-index:2147483647';\n (document.body || document.documentElement).appendChild(d);\n };\n if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', make); else make();\n document.addEventListener('mousemove', (e) => {\n const d = document.getElementById('__clearcote_cursor');\n if (d) { d.style.left = e.clientX + 'px'; d.style.top = e.clientY + 'px'; }\n }, true);\n})();";
14
14
  /** @internal exported for tests */
15
+ export declare const POINTER_PATH = "Browser.dispatchPointerPath";
16
+ /** @internal exported for tests */
17
+ export declare const POINTER_PATH_LEGACY = "Browser.humanizedClick";
18
+ /** @internal exported for tests. Send `method`, or `legacy` when the engine predates the rename, and
19
+ * remember per `cacheKey` (a Browser, or the context when there is none) which one answered. Any
20
+ * error other than method-not-found propagates as-is: retrying a real failure under the old name
21
+ * would only replay it. */
22
+ export declare function sendEngineCommand(session: {
23
+ send(method: string, params?: any): Promise<any>;
24
+ }, cacheKey: object, method: string, legacy: string, params: Record<string, unknown>): Promise<any>;
25
+ /** @internal exported for tests */
15
26
  export declare const needsShift: (ch: string) => boolean;
16
27
  /** Wrap a single page's input methods + (optionally) inject the cursor overlay. */
17
28
  export declare function attachHumanize(browser: Browser, page: Page, opts: HumanizeOptions): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"humanize.d.ts","sourceRoot":"","sources":["../src/humanize.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAW,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAI9E,MAAM,WAAW,eAAe;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;qGACiG;IACjG,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED;sEACsE;AACtE,eAAO,MAAM,cAAc,o5BAerB,CAAC;AAOP,mCAAmC;AACnC,eAAO,MAAM,UAAU,GAAI,IAAI,MAAM,KAAG,OAAiF,CAAC;AAyB1H,mFAAmF;AACnF,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA+gBvG;AA6JD,mGAAmG;AACnG,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,IAAI,CAc7E;AAED,0FAA0F;AAC1F,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,GACvE,IAAI,CAQN"}
1
+ {"version":3,"file":"humanize.d.ts","sourceRoot":"","sources":["../src/humanize.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAW,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAO9E,MAAM,WAAW,eAAe;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;qGACiG;IACjG,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED;sEACsE;AACtE,eAAO,MAAM,cAAc,o5BAerB,CAAC;AAiBP,mCAAmC;AACnC,eAAO,MAAM,YAAY,gCAAgC,CAAC;AAC1D,mCAAmC;AACnC,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAU5D;;;2BAG2B;AAC3B,wBAAsB,iBAAiB,CACrC,OAAO,EAAE;IAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;CAAE,EAAE,QAAQ,EAAE,MAAM,EAC/E,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9D,OAAO,CAAC,GAAG,CAAC,CAed;AAKD,mCAAmC;AACnC,eAAO,MAAM,UAAU,GAAI,IAAI,MAAM,KAAG,OAAiF,CAAC;AAyB1H,mFAAmF;AACnF,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAilBvG;AA6JD,mGAAmG;AACnG,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,IAAI,CAc7E;AAED,0FAA0F;AAC1F,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,GACvE,IAAI,CAQN"}
package/dist/humanize.js CHANGED
@@ -19,8 +19,8 @@
19
19
  // (slider captchas work) with no separate CDP channel to desync. Typing goes key-by-key through
20
20
  // the native keyboard (trusted; shift handled by the engine) with human inter-key timing. No
21
21
  // special binary command required.
22
- import { makePersona, planMove, dragDwell, clickHold, keyDwell, clickPoint, planAmbient, gaussFrom } from "./motion.js";
23
- import { COVER_CHECK_MS, ISO_IS_FOCUSED, ISO_SELECT_PLAN, ISO_SELECTED_INDEX, ISO_VIEWPORT, worldFor } from "./isolated.js";
22
+ import { makePersona, planMove, dragDwell, clickHold, keyDwell, clickPoint, planAmbient, gaussFrom, rolloverRate, wheelNotches, platformFromNavigator, WHEEL_NOTCH_PX, } from "./motion.js";
23
+ import { COVER_CHECK_MS, ISO_IS_FOCUSED, ISO_PLATFORM, ISO_SELECT_PLAN, ISO_SELECTED_INDEX, ISO_VIEWPORT, worldFor } from "./isolated.js";
24
24
  /** Overlay: a red dot that follows real mousemove events. Idempotent IIFE so it works both as
25
25
  * an addInitScript source string AND when passed to page.evaluate. */
26
26
  export const CURSOR_OVERLAY = `(() => {
@@ -40,6 +40,51 @@ export const CURSOR_OVERLAY = `(() => {
40
40
  }, true);
41
41
  })();`;
42
42
  const rand = (a, b) => a + Math.random() * (b - a);
43
+ const randInt = (a, b) => a + Math.floor(Math.random() * (b - a + 1)); // inclusive
44
+ // Keys a person rolls over (see humanTypeText): lower-case, unshifted, one physical key each.
45
+ // Shifted characters, Enter/Backspace and the typo path keep the plain one-press-at-a-time path.
46
+ const ROLL_KEYS = new Set("abcdefghijklmnopqrstuvwxyz0123456789 ,.;'/-=");
47
+ /** The persona platform when the page cannot say: the SDK's default persona follows the host. */
48
+ const hostWheelPlatform = () => process.platform === "win32" ? "windows" : process.platform === "darwin" ? "macos" : "linux";
49
+ // The engine's pointer-path command. r34 renamed Browser.humanizedClick to Browser.dispatchPointerPath:
50
+ // the old name was listed in /json/protocol for anyone who asked, and "humanizedClick" is known
51
+ // vocabulary, so the method list alone said what the build was for. r33 and older only know the old
52
+ // name, so the new one goes first and the old one is the fallback for a method-not-found only.
53
+ /** @internal exported for tests */
54
+ export const POINTER_PATH = "Browser.dispatchPointerPath";
55
+ /** @internal exported for tests */
56
+ export const POINTER_PATH_LEGACY = "Browser.humanizedClick";
57
+ // Which name each browser answered to, so only its first call can pay for a miss.
58
+ const engineMethodNames = new WeakMap();
59
+ // A CDP method-not-found: the engine predates the name. A raw CDP client sees code -32601;
60
+ // Playwright's CDPSession keeps only the message ("Protocol error (X): 'X' wasn't found").
61
+ const isMethodNotFound = (e) => e?.code === -32601 || /-32601|wasn't found|method not found/i.test(String(e?.message ?? e));
62
+ /** @internal exported for tests. Send `method`, or `legacy` when the engine predates the rename, and
63
+ * remember per `cacheKey` (a Browser, or the context when there is none) which one answered. Any
64
+ * error other than method-not-found propagates as-is: retrying a real failure under the old name
65
+ * would only replay it. */
66
+ export async function sendEngineCommand(session, cacheKey, method, legacy, params) {
67
+ let names = engineMethodNames.get(cacheKey);
68
+ if (!names) {
69
+ names = new Map();
70
+ engineMethodNames.set(cacheKey, names);
71
+ }
72
+ const known = names.get(method);
73
+ if (known)
74
+ return session.send(known, params);
75
+ try {
76
+ const r = await session.send(method, params);
77
+ names.set(method, method);
78
+ return r;
79
+ }
80
+ catch (e) {
81
+ if (!isMethodNotFound(e))
82
+ throw e;
83
+ }
84
+ const r = await session.send(legacy, params);
85
+ names.set(method, legacy);
86
+ return r;
87
+ }
43
88
  // The characters a US-layout keyboard (Playwright's, and the engine's keyboard.getLayoutMap())
44
89
  // types with Shift held: capitals and the shifted symbols.
45
90
  const SHIFTED_SYMBOLS = new Set('~!@#$%^&*()_+{}|:"<>?');
@@ -135,10 +180,11 @@ export async function attachHumanize(browser, page, opts) {
135
180
  st.y = y;
136
181
  };
137
182
  // Engine real-trajectory routing (PRO): send point-to-point moves/clicks through
138
- // Browser.humanizedClick (real recorded human paths for PRO, engine bezier for free,
139
- // tiered by the engine license gate). Held-button DRAGS stay native; falls back to the
140
- // SDK bezier if the method is unavailable (older engine / no browser session).
141
- const eng = { session: null, tid: null, ok: true };
183
+ // Browser.dispatchPointerPath (Browser.humanizedClick before r34, see sendEngineCommand; real
184
+ // recorded human paths for PRO, engine bezier for free, tiered by the engine license gate).
185
+ // Held-button DRAGS stay native; falls back to the SDK bezier if the method is unavailable
186
+ // (older engine / no browser session).
187
+ const eng = { session: null, key: null, tid: null, ok: true };
142
188
  const engineGlide = async (x, y, noClick) => {
143
189
  if (!eng.ok)
144
190
  return false;
@@ -149,12 +195,13 @@ export async function attachHumanize(browser, page, opts) {
149
195
  const info = await tsession.send("Target.getTargetInfo");
150
196
  eng.tid = info.targetInfo.targetId;
151
197
  const br = ctx.browser ? ctx.browser() : null;
198
+ eng.key = br ?? ctx; // the command name is a property of the engine: learn it once per browser
152
199
  eng.session = br ? await br.newBrowserCDPSession() : tsession;
153
200
  }
154
201
  const dx = x - st.x, dy = y - st.y;
155
202
  const dist = Math.sqrt(dx * dx + dy * dy);
156
203
  const dur = Math.min(1.10, Math.max(0.28, 0.30 + dist / 1700)) * (0.85 + 0.30 * Math.random());
157
- await eng.session.send("Browser.humanizedClick", { targetId: eng.tid, x, y, duration: dur, noClick });
204
+ await sendEngineCommand(eng.session, eng.key, POINTER_PATH, POINTER_PATH_LEGACY, { targetId: eng.tid, x, y, duration: dur, noClick });
158
205
  // The engine walks the trajectory in the BROWSER process and answers this command before it
159
206
  // has finished. Without waiting, a following mouse.down() fires at the cursor's STALE
160
207
  // position — measured: a move to (110,58) then a press landed at (981,629), on <body>
@@ -251,7 +298,7 @@ export async function attachHumanize(browser, page, opts) {
251
298
  await glide(x, y);
252
299
  };
253
300
  // down/up are wrapped to TRACK the held state mouse.move needs, and — critically — to make the
254
- // press position DETERMINISTIC. The engine answers humanizedClick before its trajectory has
301
+ // press position DETERMINISTIC. The engine answers its pointer path before the trajectory has
255
302
  // finished walking, and it overruns the `duration` it reports, so sleeping that duration is not
256
303
  // enough: measured on Node, a move to (110,58) was still mid-flight at (416,504) when the press
257
304
  // fired, landing on <body>. Re-issuing a native move to the tracked target immediately before
@@ -268,7 +315,7 @@ export async function attachHumanize(browser, page, opts) {
268
315
  // humanized drag move first, and that move glides and sets `placed`.
269
316
  if (st.placed) {
270
317
  // Re-pin only once a real move has happened — that is what makes st.x/st.y correspond to
271
- // where the engine's cursor actually is. The engine answers humanizedClick before its
318
+ // where the engine's cursor actually is. The engine answers its pointer path before its
272
319
  // trajectory has finished, so without this the press can fire at a stale position.
273
320
  try {
274
321
  await nativeMove(st.x, st.y);
@@ -339,35 +386,65 @@ export async function attachHumanize(browser, page, opts) {
339
386
  }
340
387
  catch { /* best-effort: scroll from wherever the cursor is */ }
341
388
  };
342
- // scroll easing: break into eased chunks of native wheel deltas
389
+ // Pixels per wheel notch for the platform this page claims (WHEEL_NOTCH_PX). Read once per page,
390
+ // lazily on the first wheel, in the isolated world like every other humanize read. A page that
391
+ // cannot say (closed, mid-navigation, no CDP) gets the host's platform. Kept for the life of the
392
+ // page either way: a mouse does not change its notch between two scrolls.
393
+ let notchPx = null;
394
+ const wheelNotchPx = async () => {
395
+ if (notchPx === null) {
396
+ let plat = null;
397
+ try {
398
+ plat = platformFromNavigator(await worldFor(page).evaluate(ISO_PLATFORM));
399
+ }
400
+ catch { /* host below */ }
401
+ notchPx = WHEEL_NOTCH_PX[plat ?? hostWheelPlatform()];
402
+ }
403
+ return notchPx;
404
+ };
405
+ /** Scroll in WHOLE NOTCHES, the only thing a wheel emits. Humanize scrolls whole notches: the
406
+ * delivered total is the requested distance rounded to the nearest notch (at least one), not the
407
+ * exact pixel count.
408
+ *
409
+ * A CDP wheel event always reports wheelDelta ±120 (one notch), whatever its distance. The eased
410
+ * slices this replaced (39/28/20/10/3 px for a 100 px scroll, each at wheelDelta 120, measured on
411
+ * r32/r33) were events no mouse produces: a real notch moves 100 px on Windows, 120 on Linux, 40 on
412
+ * macOS. One axis per event, like a real wheel or tilt, and the notches come in finger-flick bursts. */
343
413
  mouse.wheel = async (dx, dy) => {
344
414
  await scrollAnchor();
345
- const steps = Math.max(5, Math.min(24, Math.round((Math.abs(dx) + Math.abs(dy)) / 60)));
346
- const ease = (u) => 1 - Math.pow(1 - u, 2.2); // ease-OUT: fast flick -> slow inertial settle
347
- let px = 0, py = 0;
348
- for (let i = 1; i <= steps; i++) {
349
- const f = ease(i / steps);
350
- const nxw = Math.round(dx * f), nyw = Math.round(dy * f);
351
- await nativeWheel(nxw - px, nyw - py);
352
- px = nxw;
353
- py = nyw;
415
+ const notch = await wheelNotchPx();
416
+ const plan = [];
417
+ for (let k = wheelNotches(dy, notch); k > 0; k--)
418
+ plan.push([0, Math.sign(dy) * notch]);
419
+ for (let k = wheelNotches(dx, notch); k > 0; k--)
420
+ plan.push([Math.sign(dx) * notch, 0]);
421
+ let burst = randInt(2, 5);
422
+ for (let i = 0; i < plan.length; i++) {
423
+ await nativeWheel(plan[i][0], plan[i][1]);
424
+ if (i === plan.length - 1)
425
+ break;
354
426
  // local sleep, NOT page.waitForTimeout: the latter is a CDP round-trip per call, so it
355
427
  // emits protocol traffic bot-detectors (e.g. reCAPTCHA) can score — a self-inflicted tell
356
428
  // inside the humanize path. setTimeout is off-protocol.
357
- await sleep(rand(10, 38));
429
+ if (--burst === 0) {
430
+ await sleep(rand(110, 320)); // the finger resets for the next flick
431
+ burst = randInt(2, 5);
432
+ }
433
+ else {
434
+ await sleep(rand(18, 55));
435
+ }
358
436
  if (Math.random() < 0.07)
359
- await sleep(rand(40, 120)); // occasional mid-scroll pause (reading)
437
+ await sleep(rand(150, 450)); // occasional mid-scroll pause (reading)
360
438
  // A hand resting on the mouse does not hold it perfectly still through a long scroll. Without
361
- // this a wheel burst is the one input where the pointer coordinate never changes at all.
362
- if (steps >= 10 && i > 2 && i < steps && Math.random() < 0.06) {
439
+ // this a wheel burst is the one input where the pointer coordinate never changes at all. Never
440
+ // while a button is down, where a move is a drag leg.
441
+ if (plan.length >= 6 && !st.held && Math.random() < 0.06) {
363
442
  try {
364
443
  await glide(st.x + gauss() * 3.5, st.y + gauss() * 2.5);
365
444
  }
366
445
  catch { /* drift is cosmetic */ }
367
446
  }
368
447
  }
369
- if (px !== dx || py !== dy)
370
- await nativeWheel(dx - px, dy - py);
371
448
  };
372
449
  // ----------------------------------------------------------------- keyboard
373
450
  const keyboard = page.keyboard;
@@ -398,13 +475,18 @@ export async function attachHumanize(browser, page, opts) {
398
475
  // before the key (35-120 ms) and comes up just after it (10-70 ms), held across a run of them.
399
476
  // Playwright's press("A") alone sent the key with shiftKey=false and no Shift key at all (measured
400
477
  // on r28 with "Ab!") -- input no keyboard produces.
478
+ //
479
+ // Fast pairs ROLL OVER: the next key goes down before the previous one comes up. One press() per
480
+ // character never overlaps (0 of 32 keydowns, measured on r32/r33), a keystroke-dynamics tell;
481
+ // real typists overlap many fast pairs. The share is the persona's rolloverRate, stable per seed.
482
+ const rollRate = rolloverRate(persona);
401
483
  const humanTypeText = async (text) => {
402
484
  const chars = Array.from(text);
403
485
  const n = chars.length;
404
486
  let shift = false;
405
487
  try {
406
488
  for (let i = 0; i < n; i++) {
407
- const ch = chars[i];
489
+ let ch = chars[i];
408
490
  const need = needsShift(ch);
409
491
  if (need && !shift && nativeKbDown && nativeKbUp) {
410
492
  await nativeKbDown("Shift");
@@ -412,7 +494,9 @@ export async function attachHumanize(browser, page, opts) {
412
494
  await sleep(rand(35, 120));
413
495
  }
414
496
  // occasional fat-finger on unshifted alnum chars, then notice + correct
497
+ let typo = false;
415
498
  if (!need && /[a-z0-9]/.test(ch) && Math.random() < 0.02) {
499
+ typo = true;
416
500
  try {
417
501
  await emitKey(nearbyKey(ch));
418
502
  await sleep(rand(120, 300));
@@ -421,11 +505,49 @@ export async function attachHumanize(browser, page, opts) {
421
505
  }
422
506
  catch { /* typo path best-effort */ }
423
507
  }
424
- try {
425
- await emitKey(ch);
508
+ // Rollover of ch and the next char: unshifted single-key pairs only, never a key with itself,
509
+ // never after a typo. keyboard.down inserts the character exactly as press does, so the typed
510
+ // value is unchanged. The overlap leaves ch down alone for at least 8 ms first.
511
+ const nx = chars[i + 1];
512
+ let rolled = false;
513
+ if (nativeKbDown && nativeKbUp && !shift && i + 1 < n && !typo && ROLL_KEYS.has(ch)
514
+ && ROLL_KEYS.has(nx) && ch !== nx && Math.random() < rollRate) {
515
+ const d1 = keyDwell(persona), d2 = keyDwell(persona);
516
+ if (d1 - 8 >= 12) {
517
+ const overlap = rand(12, Math.min(55, d1 - 8));
518
+ try {
519
+ await nativeKbDown(ch);
520
+ await sleep(d1 - overlap);
521
+ await nativeKbDown(nx);
522
+ await sleep(overlap);
523
+ await nativeKbUp(ch);
524
+ await sleep(Math.max(5, d2 - overlap));
525
+ await nativeKbUp(nx);
526
+ }
527
+ catch {
528
+ // never strand a key down for the caller's next keystroke
529
+ try {
530
+ await nativeKbUp(ch);
531
+ }
532
+ catch { /* best-effort */ }
533
+ try {
534
+ await nativeKbUp(nx);
535
+ }
536
+ catch { /* best-effort */ }
537
+ break;
538
+ }
539
+ rolled = true;
540
+ i += 1;
541
+ ch = nx; // nx is typed; the cadence below runs as if after it
542
+ }
426
543
  }
427
- catch {
428
- break;
544
+ if (!rolled) {
545
+ try {
546
+ await emitKey(ch);
547
+ }
548
+ catch {
549
+ break;
550
+ }
429
551
  }
430
552
  if (shift && (i === n - 1 || !needsShift(chars[i + 1]))) {
431
553
  await sleep(rand(10, 70));
@@ -1 +1 @@
1
- {"version":3,"file":"humanize.js","sourceRoot":"","sources":["../src/humanize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"humanize.js","sourceRoot":"","sources":["../src/humanize.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@ export declare function worldFor(page: object): IsolatedWorld;
28
28
  /** How long a trial action may look for a covered click point before the native path takes over. */
29
29
  export declare const COVER_CHECK_MS = 400;
30
30
  export declare const ISO_VIEWPORT = "() => [innerWidth, innerHeight]";
31
+ export declare const ISO_PLATFORM = "() => { const d = navigator.userAgentData; return (d && d.platform) || navigator.platform || ''; }";
31
32
  export declare const ISO_IS_FOCUSED = "(s) => { const e = document.querySelector(s); return !!e && e === document.activeElement; }";
32
33
  export declare const ISO_SELECT_PLAN = "(a) => { const s = document.querySelector(a.sel);\n if (!s || s.multiple || s.disabled) return null;\n const os = [...s.options];\n let i = -1;\n if (a.by === 'index') i = (a.want >= 0 && a.want < os.length) ? a.want : -1;\n else if (a.by === 'label') i = os.findIndex(o => (o.label || o.textContent || '').trim() === String(a.want).trim());\n else i = os.findIndex(o => o.value === a.want);\n if (i < 0 || os[i].disabled) return null;\n return { to: i, from: s.selectedIndex, ret: os[i].value }; }";
33
34
  export declare const ISO_SELECTED_INDEX = "(s) => { const e = document.querySelector(s); return e ? e.selectedIndex : -1; }";
@@ -1 +1 @@
1
- {"version":3,"file":"isolated.d.ts","sourceRoot":"","sources":["../src/isolated.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,qBAAa,aAAa;IAIZ,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC,OAAO,CAAC,GAAG,CAAwB;IACnC,OAAO,CAAC,GAAG,CAAuB;gBAEL,IAAI,EAAE,GAAG;IAEtC,mGAAmG;IAC7F,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAqBrF;AAID,uDAAuD;AACvD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAIpD;AAED,oGAAoG;AACpG,eAAO,MAAM,cAAc,MAAM,CAAC;AAGlC,eAAO,MAAM,YAAY,oCAAoC,CAAC;AAC9D,eAAO,MAAM,cAAc,gGACoE,CAAC;AAChG,eAAO,MAAM,eAAe,uhBAQsC,CAAC;AACnE,eAAO,MAAM,kBAAkB,qFAAqF,CAAC"}
1
+ {"version":3,"file":"isolated.d.ts","sourceRoot":"","sources":["../src/isolated.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,qBAAa,aAAa;IAIZ,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC,OAAO,CAAC,GAAG,CAAwB;IACnC,OAAO,CAAC,GAAG,CAAuB;gBAEL,IAAI,EAAE,GAAG;IAEtC,mGAAmG;IAC7F,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAqBrF;AAID,uDAAuD;AACvD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAIpD;AAED,oGAAoG;AACpG,eAAO,MAAM,cAAc,MAAM,CAAC;AAGlC,eAAO,MAAM,YAAY,oCAAoC,CAAC;AAE9D,eAAO,MAAM,YAAY,uGAAuG,CAAC;AACjI,eAAO,MAAM,cAAc,gGACoE,CAAC;AAChG,eAAO,MAAM,eAAe,uhBAQsC,CAAC;AACnE,eAAO,MAAM,kBAAkB,qFAAqF,CAAC"}
package/dist/isolated.js CHANGED
@@ -62,6 +62,8 @@ export function worldFor(page) {
62
62
  export const COVER_CHECK_MS = 400;
63
63
  // The reads humanize makes, as functions of one JSON argument (run by IsolatedWorld.evaluate).
64
64
  export const ISO_VIEWPORT = "() => [innerWidth, innerHeight]";
65
+ // The platform the page believes (the persona's), for the wheel notch size.
66
+ export const ISO_PLATFORM = "() => { const d = navigator.userAgentData; return (d && d.platform) || navigator.platform || ''; }";
65
67
  export const ISO_IS_FOCUSED = "(s) => { const e = document.querySelector(s); return !!e && e === document.activeElement; }";
66
68
  export const ISO_SELECT_PLAN = `(a) => { const s = document.querySelector(a.sel);
67
69
  if (!s || s.multiple || s.disabled) return null;
@@ -1 +1 @@
1
- {"version":3,"file":"isolated.js","sourceRoot":"","sources":["../src/isolated.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,MAAM,OAAO,aAAa;IAIK;IAHrB,GAAG,GAAmB,IAAI,CAAC;IAC3B,GAAG,GAAkB,IAAI,CAAC;IAElC,YAA6B,IAAS;QAAT,SAAI,GAAJ,IAAI,CAAK;IAAG,CAAC;IAE1C,mGAAmG;IACnG,KAAK,CAAC,QAAQ,CAAc,QAAgB,EAAE,GAAa;QACzD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,kDAAkD;YAChG,IAAI,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,GAAG;oBAAE,IAAI,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAc,CAAC;gBAChC,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;oBACtB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBACjG,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,kBAA4B,CAAC;gBAClD,CAAC;gBACD,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE;oBAC3C,UAAU,EAAE,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI;iBACtG,CAAC,CAAC;gBACH,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAgB;oBAAE,OAAO,SAAS,CAAC;gBAC/C,OAAO,CAAC,CAAC,MAAM,EAAE,KAAU,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,MAAM,MAAM,GAAG,IAAI,OAAO,EAAyB,CAAC;AAEpD,uDAAuD;AACvD,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzB,IAAI,CAAC,CAAC,EAAE,CAAC;QAAC,CAAC,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAAC,CAAC;IAC7D,OAAO,CAAC,CAAC;AACX,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAElC,+FAA+F;AAC/F,MAAM,CAAC,MAAM,YAAY,GAAG,iCAAiC,CAAC;AAC9D,MAAM,CAAC,MAAM,cAAc,GACzB,6FAA6F,CAAC;AAChG,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;kEAQmC,CAAC;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,kFAAkF,CAAC"}
1
+ {"version":3,"file":"isolated.js","sourceRoot":"","sources":["../src/isolated.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,MAAM,OAAO,aAAa;IAIK;IAHrB,GAAG,GAAmB,IAAI,CAAC;IAC3B,GAAG,GAAkB,IAAI,CAAC;IAElC,YAA6B,IAAS;QAAT,SAAI,GAAJ,IAAI,CAAK;IAAG,CAAC;IAE1C,mGAAmG;IACnG,KAAK,CAAC,QAAQ,CAAc,QAAgB,EAAE,GAAa;QACzD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,kDAAkD;YAChG,IAAI,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,GAAG;oBAAE,IAAI,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAc,CAAC;gBAChC,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;oBACtB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBACjG,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,kBAA4B,CAAC;gBAClD,CAAC;gBACD,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE;oBAC3C,UAAU,EAAE,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI;iBACtG,CAAC,CAAC;gBACH,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAgB;oBAAE,OAAO,SAAS,CAAC;gBAC/C,OAAO,CAAC,CAAC,MAAM,EAAE,KAAU,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,MAAM,MAAM,GAAG,IAAI,OAAO,EAAyB,CAAC;AAEpD,uDAAuD;AACvD,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzB,IAAI,CAAC,CAAC,EAAE,CAAC;QAAC,CAAC,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAAC,CAAC;IAC7D,OAAO,CAAC,CAAC;AACX,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAElC,+FAA+F;AAC/F,MAAM,CAAC,MAAM,YAAY,GAAG,iCAAiC,CAAC;AAC9D,4EAA4E;AAC5E,MAAM,CAAC,MAAM,YAAY,GAAG,oGAAoG,CAAC;AACjI,MAAM,CAAC,MAAM,cAAc,GACzB,6FAA6F,CAAC;AAChG,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;kEAQmC,CAAC;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,kFAAkF,CAAC"}
package/dist/motion.d.ts CHANGED
@@ -53,6 +53,29 @@ export declare function clickHold(p: Persona, rng?: Rng): number;
53
53
  /** A human per-key keydown→keyup dwell (ms), right-skewed (a floor + occasional longer holds — the
54
54
  * empirical human dwell shape). Fixes the ~2–3 ms instant-keystroke tell. */
55
55
  export declare function keyDwell(p: Persona, rng?: Rng): number;
56
+ /** Share of eligible key pairs this persona types with ROLLOVER: the next key goes down before the
57
+ * previous one comes up, the way people type fast common pairs. Stable per seed, 0.12–0.38.
58
+ *
59
+ * Measured on r32/r33 before this existed: 0 overlapping keydowns in 30–32 typed keys, because every
60
+ * character was one press() (down, dwell, up) before the next began. Same value as Python
61
+ * `_motion.rollover_rate` and .NET `Motion.RolloverRate`. */
62
+ export declare function rolloverRate(p: Persona): number;
63
+ /** The platforms a wheel notch size is known for (the keys of WHEEL_NOTCH_PX). */
64
+ export type WheelPlatform = "windows" | "linux" | "macos" | "android";
65
+ /** Pixels one wheel notch scrolls, by the platform the persona claims. A wheel event sent over CDP
66
+ * always carries wheelDelta ±120 (input_handler.cc sets wheel_ticks to ±1 whatever the delta), and a
67
+ * real notch is the only event whose distance goes with a 120 wheelDelta:
68
+ * windows 100 = 3 lines × 100/3 px (web_input_event_builders_win.cc, default 3 lines per notch)
69
+ * linux 120 = ui::MouseWheelEvent::kWheelDelta (event.cc); measured 120/−120 per X11 notch
70
+ * macos 40 = kScrollbarPixelsPerCocoaTick (cocoa_event_utils.h)
71
+ * android is not measured; it gets the windows value. */
72
+ export declare const WHEEL_NOTCH_PX: Readonly<Record<WheelPlatform, number>>;
73
+ /** Whole notches for a requested scroll distance: the nearest count, at least one when the caller
74
+ * asked for any scroll at all. A wheel cannot move 39 px; it moves notches. floor(x + 0.5), not
75
+ * Math.round, so the count is the same expression as Python's and .NET's (half rounds up). */
76
+ export declare function wheelNotches(delta: number, notchPx: number): number;
77
+ /** Map navigator.userAgentData.platform / navigator.platform to a WHEEL_NOTCH_PX key (null = unknown). */
78
+ export declare function platformFromNavigator(value: string | null | undefined): WheelPlatform | null;
56
79
  export interface Point {
57
80
  x: number;
58
81
  y: number;
@@ -1 +1 @@
1
- {"version":3,"file":"motion.d.ts","sourceRoot":"","sources":["../src/motion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"motion.d.ts","sourceRoot":"","sources":["../src/motion.ts"],"names":[],"mappings":"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"}
package/dist/motion.js CHANGED
@@ -97,6 +97,49 @@ export function clickHold(p, rng = Math.random) {
97
97
  export function keyDwell(p, rng = Math.random) {
98
98
  return p.keyDwellMinMs + Math.min(1, Math.abs(gaussFrom(rng)) * 0.45) * (p.keyDwellMaxMs - p.keyDwellMinMs);
99
99
  }
100
+ // Salt for the rollover stream. Drawing from mulberry32(seed ^ salt) instead of adding a field to
101
+ // makePersona keeps the persona draw ORDER (and so every existing seed's motor identity) unchanged.
102
+ const ROLLOVER_SALT = 0x9e3779b9;
103
+ /** Share of eligible key pairs this persona types with ROLLOVER: the next key goes down before the
104
+ * previous one comes up, the way people type fast common pairs. Stable per seed, 0.12–0.38.
105
+ *
106
+ * Measured on r32/r33 before this existed: 0 overlapping keydowns in 30–32 typed keys, because every
107
+ * character was one press() (down, dwell, up) before the next began. Same value as Python
108
+ * `_motion.rollover_rate` and .NET `Motion.RolloverRate`. */
109
+ export function rolloverRate(p) {
110
+ return lerp(0.12, 0.38, mulberry32((p.seed ^ ROLLOVER_SALT) >>> 0)());
111
+ }
112
+ /** Pixels one wheel notch scrolls, by the platform the persona claims. A wheel event sent over CDP
113
+ * always carries wheelDelta ±120 (input_handler.cc sets wheel_ticks to ±1 whatever the delta), and a
114
+ * real notch is the only event whose distance goes with a 120 wheelDelta:
115
+ * windows 100 = 3 lines × 100/3 px (web_input_event_builders_win.cc, default 3 lines per notch)
116
+ * linux 120 = ui::MouseWheelEvent::kWheelDelta (event.cc); measured 120/−120 per X11 notch
117
+ * macos 40 = kScrollbarPixelsPerCocoaTick (cocoa_event_utils.h)
118
+ * android is not measured; it gets the windows value. */
119
+ export const WHEEL_NOTCH_PX = { windows: 100, linux: 120, macos: 40, android: 100 };
120
+ /** Whole notches for a requested scroll distance: the nearest count, at least one when the caller
121
+ * asked for any scroll at all. A wheel cannot move 39 px; it moves notches. floor(x + 0.5), not
122
+ * Math.round, so the count is the same expression as Python's and .NET's (half rounds up). */
123
+ export function wheelNotches(delta, notchPx) {
124
+ if (!delta)
125
+ return 0;
126
+ return Math.max(1, Math.floor(Math.abs(delta) / notchPx + 0.5));
127
+ }
128
+ /** Map navigator.userAgentData.platform / navigator.platform to a WHEEL_NOTCH_PX key (null = unknown). */
129
+ export function platformFromNavigator(value) {
130
+ const v = (value || "").toLowerCase();
131
+ if (!v)
132
+ return null;
133
+ if (v.includes("android"))
134
+ return "android"; // before linux: Android's navigator.platform is "Linux armv8l"
135
+ if (v.includes("win"))
136
+ return "windows";
137
+ if (v.includes("mac"))
138
+ return "macos";
139
+ if (v.includes("linux") || v.includes("x11") || v.includes("cros"))
140
+ return "linux";
141
+ return null;
142
+ }
100
143
  const log2 = (x) => Math.log(x) / Math.LN2;
101
144
  const clamp = (v, lo, hi) => Math.max(lo, Math.min(hi, v));
102
145
  /** Cubic bezier point at parameter e (0..1). */
@@ -1 +1 @@
1
- {"version":3,"file":"motion.js","sourceRoot":"","sources":["../src/motion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"motion.js","sourceRoot":"","sources":["../src/motion.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clearcote",
3
- "version": "0.41.0",
3
+ "version": "0.41.1",
4
4
  "description": "Playwright drop-in for the Clearcote anti-fingerprint Chromium build. launch() returns a standard Playwright Browser backed by the verified Clearcote binary, which is auto-downloaded and SHA-256 checked.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",