chrome-relay 0.5.17 → 0.5.18

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/cli.js CHANGED
@@ -1077,7 +1077,7 @@ var init_dist = __esm({
1077
1077
  import { Command } from "commander";
1078
1078
 
1079
1079
  // src/index.ts
1080
- var CHROME_RELAY_VERSION = true ? "0.5.17" : "0.0.0-dev";
1080
+ var CHROME_RELAY_VERSION = true ? "0.5.18" : "0.0.0-dev";
1081
1081
 
1082
1082
  // src/commands/shared.ts
1083
1083
  init_dist();
@@ -1320,6 +1320,12 @@ async function runDoctor() {
1320
1320
 
1321
1321
  // src/release-notes.ts
1322
1322
  var RELEASE_NOTES = {
1323
+ "0.5.18": [
1324
+ "Force-visible on attach \u2014 actually fixes Cloudflare-style SPAs now. 0.5.17 had two bugs: (1) missing `Page.enable` before `Page.addScriptToEvaluateOnNewDocument` (the script registration silently failed, so the shim only applied to the current doc \u2014 page reloads dropped it), (2) the JS shim used one try-block so a deprecated `Object.defineProperty(document, 'webkitVisibilityState')` could throw and skip the `document.hasFocus` patch.",
1325
+ "0.5.18 fixes both: enables Page domain first, then applies each patch in its own try/catch. New patches added: `document.hasFocus` (overridden on both instance and Document.prototype), `Emulation.setFocusEmulationEnabled` via CDP, `document.wasDiscarded`. End result: Cloudflare Web Analytics dashboard now fully renders on backgrounded tabs without focus theft (verified live).",
1326
+ "Reverted the `navigate --new` about:blank trampoline from 0.5.17. It was opening about:blank as a stepping stone to attach before page JS ran; user-visible as a ~200ms flash. Removed \u2014 the addScriptToEvaluateOnNewDocument registration in 0.5.18 is robust enough that subsequent reloads pick up the shim cleanly.",
1327
+ "Honest caveat: shim covers visibility + focus gates. If a page detects automation via other means (chrome.runtime.connect probe, navigator.webdriver, debugger evaluation traces), chrome-relay won't help \u2014 those need stealth-mode workarounds separate from visibility."
1328
+ ],
1323
1329
  "0.5.17": [
1324
1330
  "Force-visible on attach (default-on). Modern SPAs (Cloudflare dashboard, Linear, Notion) gate their JS on `document.visibilityState` and stall on backgrounded tabs \u2014 chrome-relay's whole pitch is operate-without-stealing-focus, and that pitch silently broke whenever the page was visibility-gated. Fix runs three CDP calls on every attach: `Page.setWebLifecycleState({state:'active'})` to stop Chrome's rAF/timer throttling, plus a JS shim (installed via `Page.addScriptToEvaluateOnNewDocument` AND `Runtime.evaluate`) that overrides `document.visibilityState` / `document.hidden` so the page's own checks see 'visible.'",
1325
1331
  "Scoped to debugger-attached tabs only \u2014 other tabs the user has open stay normally throttled. Override clears when chrome-relay detaches. User's viewport never changes.",
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // src/index.ts
2
- var CHROME_RELAY_VERSION = true ? "0.5.17" : "0.0.0-dev";
2
+ var CHROME_RELAY_VERSION = true ? "0.5.18" : "0.0.0-dev";
3
3
  export {
4
4
  CHROME_RELAY_VERSION
5
5
  };
@@ -56,7 +56,7 @@ function toBridgeError(unknownErr, fallbackTool) {
56
56
  }
57
57
 
58
58
  // src/index.ts
59
- var CHROME_RELAY_VERSION = true ? "0.5.17" : "0.0.0-dev";
59
+ var CHROME_RELAY_VERSION = true ? "0.5.18" : "0.0.0-dev";
60
60
 
61
61
  // src/release-notes.ts
62
62
  function compareSemver(a, b) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chrome-relay",
3
- "version": "0.5.17",
3
+ "version": "0.5.18",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",