You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Root cause: Runtime.addBinding is async — on page navigation, the bridge
script (via addScriptToEvaluateOnNewDocument) fires BEFORE Chrome
registers __rrwebPush in the new execution context. For fast-solving
managed Turnstile widgets (Ahrefs), the token is available within ms
of page load. emit() silently dropped the event, tokenReported=true
prevented retries, and awaitResolutionRace waited the full 60s timeout
for a signal that was permanently lost.
Fix: Buffer events in emit() and flush via 50ms poll when the binding
appears. Also includes trace improvements from production analysis:
- Add click timing attributes to cf.resolutionRace span
- Fix empty cf.domain for malformed URLs
- Update tab.url span attribute on navigation
- Add screencast.fps/duration_s attributes
- Add solved_set_size warning log (>50)
- Add BridgeEvent timing type to union
- Add vitest JSON reporter for test output capture
0 commit comments