chrome-relay 0.5.4 → 0.5.6

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
@@ -43,7 +43,7 @@ var RelayError = class extends Error {
43
43
  };
44
44
 
45
45
  // src/index.ts
46
- var CHROME_RELAY_VERSION = true ? "0.5.4" : "0.0.0-dev";
46
+ var CHROME_RELAY_VERSION = true ? "0.5.6" : "0.0.0-dev";
47
47
 
48
48
  // src/install/install.ts
49
49
  import os from "os";
@@ -196,6 +196,18 @@ async function callTool(name, args) {
196
196
 
197
197
  // src/release-notes.ts
198
198
  var RELEASE_NOTES = {
199
+ "0.5.6": [
200
+ "BEHAVIOR CHANGE \u2014 `chrome-relay network har --with-bodies` is now strict by default (code-quality-hardening PR 4). When ANY body fails to fetch, the call throws `partial_success_disallowed` with details about which entries failed.",
201
+ "New `--best-effort-bodies` flag restores the legacy behavior: HAR still emits, missing/errored bodies are recorded per-entry in `_chrome_relay.bodyState` and `_chrome_relay.bodyError` (with code, message, and phase).",
202
+ "New `bodyState: 'error'` value (was just 'missing' before). 'error' fires when the CDP call threw; 'missing' fires when the body returned empty. Lets the caller distinguish 'Chrome GC'd it' from 'still in flight' from 'permission denied.'"
203
+ ],
204
+ "0.5.5": [
205
+ "BEHAVIOR CHANGE \u2014 `chrome_navigate --new` no longer silently falls back to 'wherever Chrome picks' when an explicit routing intent fails (code-quality-hardening PR 3).",
206
+ "`navigate --new --tab <id>` where <id> doesn't exist now throws `target_not_found` instead of silently letting Chrome drop the tab in the focused (often the user's) window.",
207
+ "`navigate --new --group <name>` where the group-join fails now throws `partial_success_disallowed`. The new tab IS created (we don't roll back) so the agent can clean it up; the error details include `createdTabId` and `groupName`.",
208
+ "Both new strict paths accept `allowPartial: true` as an arg to opt back into the legacy best-effort behavior. With allowPartial, the success result carries `partial: true` and a `warnings[]` array naming what didn't happen.",
209
+ "Tightened `chrome_navigate` argument errors to RelayError(invalid_arguments) \u2014 missing url, non-numeric tabId."
210
+ ],
199
211
  "0.5.4": [
200
212
  "Strict target routing (code-quality-hardening PR 2). Within a single scope, --tab / --workspace / --group are mutually exclusive \u2014 passing more than one on the same subcommand (or both at the program level) now fails with `target_conflict` and exit code 2.",
201
213
  "Cross-scope override is still allowed but visible: `chrome-relay --workspace W <cmd> --workspace W2` works, but stderr prints a `target_overridden: workspace W \u2192 W2` notice so the agent (or user) knows what happened.",
@@ -779,13 +791,14 @@ Notes:
779
791
  await run("chrome_network", args);
780
792
  });
781
793
  tabOpt(netFilterOpts(
782
- network.command("har").description("Emit HAR-compatible JSON for the captured entries.").option("--with-bodies", "fetch response bodies before emitting (best-effort; bodies GC'd by Chrome become null)")
794
+ network.command("har").description("Emit HAR-compatible JSON for the captured entries.").option("--with-bodies", "fetch response bodies before emitting; strict by default \u2014 fails if any body cannot be fetched").option("--best-effort-bodies", "with --with-bodies: keep the HAR even when some bodies are missing/errored (legacy behavior); per-entry _chrome_relay.bodyState/bodyError records what failed")
783
795
  )).action(async (opts) => {
784
796
  const args = { ...baseArgs(opts), ...netFilterArgs(opts), action: "har" };
785
797
  if (opts.withBodies) args.withBodies = true;
786
- else {
798
+ if (opts.bestEffortBodies) args.bestEffortBodies = true;
799
+ if (!opts.withBodies) {
787
800
  process.stderr.write(
788
- "[chrome-relay] HAR exported WITHOUT response bodies. Pass --with-bodies to include them (best-effort; bodies older than ~30s may be unavailable).\n"
801
+ "[chrome-relay] HAR exported WITHOUT response bodies. Pass --with-bodies to include them (strict by default; add --best-effort-bodies to allow per-entry misses).\n"
789
802
  );
790
803
  }
791
804
  await run("chrome_network", args);
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // src/index.ts
2
- var CHROME_RELAY_VERSION = true ? "0.5.4" : "0.0.0-dev";
2
+ var CHROME_RELAY_VERSION = true ? "0.5.6" : "0.0.0-dev";
3
3
  export {
4
4
  CHROME_RELAY_VERSION
5
5
  };
@@ -48,7 +48,7 @@ function toBridgeError(unknownErr, fallbackTool) {
48
48
  }
49
49
 
50
50
  // src/index.ts
51
- var CHROME_RELAY_VERSION = true ? "0.5.4" : "0.0.0-dev";
51
+ var CHROME_RELAY_VERSION = true ? "0.5.6" : "0.0.0-dev";
52
52
 
53
53
  // src/release-notes.ts
54
54
  function compareSemver(a, b) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chrome-relay",
3
- "version": "0.5.4",
3
+ "version": "0.5.6",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",