the pointer moved before it clicked
Check id pointer-movement-precedes-click
What an ordinary browser yields
At least one pointer movement before the first mouse click. N/A for keyboard, touch and pen (severity: warn).
What a detector infers
A mouse reaches a target by crossing the document, and every position it crosses is an event. So a click that arrives when the page has never seen a single pointermove or mousemove was made by a pointer that has never been anywhere - the press is real, the pointer's history is not. This is the row that matters most in the family, because it is the only one that survives a driver doing everything else correctly: CDP's Input.dispatchMouseEvent produces a genuinely trusted click, indistinguishable from a mouse on every field, so every isTrusted row on this page passes it. Measured on Chrome 150, SeleniumBase 4.51.5 - the version that had just removed the tag whitelist and fixed its key events, and which scores 100 on the rest of this suite: seven events (pointerover, mouseover, pointerdown, mousedown, pointerup, mouseup, click) at the same millisecond, and zero movement events across the entire session. The control arm, CDP input driven like a hand, produced 14 movement events across 14 distinct positions before the same click. Restricted to pointerType "mouse" for a reason that is not politeness: a keyboard activation reports pointerType "" and a touch tap reports "touch", and a touch tap genuinely produces no movement at all - scoring either would convict the visitors least able to do anything about it.
How to resolve it
Dispatch a few Input.dispatchMouseEvent "mouseMoved" events along an approach before pressing, rather than pressing at the destination coordinates directly. A press sent to coordinates the pointer has never occupied is not a click a mouse could have made.
Nearby checks in Automation surface
- key events named the key they carried
interaction-key-identity-populatedA keypress the engine generates names the character it is delivering in .key. - the dropdown change came from the browser, not from a script
interaction-select-change-trustThe same isTrusted argument as the click row, on the surface where the shortcut is most common. - the dropdown fired input before change
interaction-select-input-precedes-changeHTML's "send select update notifications" steps fire input and THEN change when a selection is committed, so the pair is what the algorithm… - the text in the field arrived through events
interaction-value-without-eventsText cannot appear in a field without the engine having put it there, and every route the engine offers announces itself with an input event… - arriving over a control and pressing it were separate moments
pointer-arrival-to-press-intervalpointerover fires when the pointer arrives over an element; pointerdown fires when the button goes down. - a held mouse button reported some pressure
pointer-pressure-on-pressPointerEvent.pressure is not a range to model, it is a constant to check. - the document was scrolled by something that can scroll it
scroll-input-attributionA document moves for a reason: a wheel notch, a scroll key, a finger, a scrollbar drag - or a script. - the mouse button was held down for a measurable moment
pointer-press-dwell-durationA mouse button is a mechanical switch. Its contacts bounce for several milliseconds before the signal settles, and the hand above it is far…
Clearcote is a browser built for fingerprint coherence
It is a Chromium fork, maintained by the same people who wrote this reference. It ships as a compiled browser rather than as a stealth script injected into someone else's — which is a description of how it is built, and is not an argument about how it behaves on this check.
This audit takes no position on how Clearcote scores on Automation surface checks, on this one, or anywhere else. It has no baseline corpus of other people's fingerprints to rank you against and no vendor scoreboard — nearly every check is self-referential, asking one browser the same question through two independent APIs and reporting whether both answers can be true at once. It runs identically on any browser, including ours. Run it on yours and read the result yourself.
See the other checks in Automation surface — the family pointer-movement-precedes-click belongs to.