@btraut/browser-bridge 0.11.1 → 0.12.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/CHANGELOG.md CHANGED
@@ -6,6 +6,39 @@ The format is based on "Keep a Changelog", and this project adheres to Semantic
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ _TBD_
10
+
11
+ ## [0.12.1] - 2026-02-17
12
+
13
+ ### Changed
14
+
15
+ - Extension popup now shows a compact `Connected` indicator (green/red) instead of the verbose connection diagnostics panel.
16
+
17
+ ### Fixed
18
+
19
+ - Extension background now preflights Core `/health` before dialing websocket, avoiding noisy `ERR_CONNECTION_REFUSED` extension errors while Core is offline.
20
+
21
+ ## [0.12.0] - 2026-02-17
22
+
23
+ ### Changed
24
+
25
+ - Core runtime bootstrap: CLI and MCP adapter now share one Core readiness/runtime resolution path (default/env/metadata precedence + health/ensure-ready behavior), with new shared parity tests.
26
+ - MCP adapter now enables Core ensure-ready by default when constructing its client, so first tool calls auto-bootstrap Core after cold start.
27
+ - Diagnostics doctor payload/report now carries runtime endpoint/source/process context for caller, Core, and extension components so endpoint/version mismatches are explicit.
28
+ - Extension hello events now include the endpoint settings they are dialing (`core_host`, `core_port`, `core_port_source`) for mismatch diagnostics.
29
+ - Extension Drive socket now tracks explicit connection states (`connecting`, `connected`, `disconnected`, `backoff`) with a status surface (`drive.connection_status`) for UI diagnostics.
30
+ - Popup UI now includes a live connection health panel (state, endpoint/source, last success/failure, next retry) and a `Copy diagnostics` action for bug reports.
31
+ - README/manual docs now include post-reboot startup semantics and an end-to-end endpoint mismatch troubleshooting flow.
32
+ - MCP startup is now lazy; no startup filesystem writes unless initialized by first tool call.
33
+
34
+ ### Fixed
35
+
36
+ - MCP adapter now returns bounded retryable `UNAVAILABLE` envelopes when Core ensure-ready cannot establish health, instead of opaque internal failures.
37
+ - Extension reconnect failures now use throttled warning logs to avoid disconnect spam while preserving exponential backoff behavior.
38
+ - Shared Core readiness now resets failed ensure-ready attempts for next-caller retry, adds bounded health probe timeouts/budget, and covers retry/dedupe behavior with regression tests.
39
+ - Diagnostics now ignores disconnected extension runtime identity for endpoint/version mismatch checks, and extension bridge disconnect clears cached runtime identity fields to prevent stale mismatch reporting.
40
+ - Popup diagnostics now clears cached status on refresh failure (blocking stale copy payloads), resets retry metadata outside backoff state, and announces async connection/copy feedback via live regions.
41
+
9
42
  ## [0.11.1] - 2026-02-16
10
43
 
11
44
  ### Fixed
package/README.md CHANGED
@@ -267,6 +267,8 @@ For normal usage, Browser Bridge is zero-setup:
267
267
  - Core and CLI default to `127.0.0.1:3210`.
268
268
  - The extension also defaults to `3210`.
269
269
  - You do not need `dev activate` unless you intentionally opt into isolated worktree routing.
270
+ - After reboot/cold start, the first CLI or MCP request auto-starts Core (no manual daemon wake-up required).
271
+ - If Core is idle/offline, the extension popup may show `disconnected` or `backoff`; this is expected until Core is reachable again.
270
272
 
271
273
  Optional status check:
272
274
 
@@ -315,6 +317,43 @@ tail -n 80 .context/logs/browser-bridge/mcp-adapter.jsonl
315
317
 
316
318
  - CLI: `browser-bridge diagnostics doctor --session-id <id>`
317
319
  - Reports extension and debugger status alongside session state.
320
+ - Includes runtime context for caller, Core, and extension endpoints so mismatch causes are visible in one run.
321
+ - Popup shows a simple `Connected` indicator (`green` when connected, `red` otherwise).
322
+
323
+ ### End-to-End Connection Troubleshooting Flow
324
+
325
+ Use this exact flow when commands fail after reboot, runtime changes, or worktree switching:
326
+
327
+ 1. Check runtime resolution:
328
+
329
+ ```bash
330
+ browser-bridge dev info --json
331
+ ```
332
+
333
+ 2. Run diagnostics from CLI (captures caller + Core + extension runtime context):
334
+
335
+ ```bash
336
+ browser-bridge diagnostics doctor --json
337
+ ```
338
+
339
+ 3. Open the extension popup and check `Connected`:
340
+ - Green dot: extension is currently connected to Core.
341
+ - Red dot: extension is disconnected or reconnecting.
342
+
343
+ 4. If caller/core/extension endpoints differ in the diagnostics report:
344
+ - Default mode: remove custom host/port env overrides and retry (`BROWSER_BRIDGE_CORE_HOST`, `BROWSER_BRIDGE_CORE_PORT`).
345
+ - Isolated mode: re-run `browser-bridge dev activate --extension-id <id>` for the intended worktree.
346
+
347
+ 5. If the popup stays red and failures continue:
348
+ - Inspect logs:
349
+
350
+ ```bash
351
+ tail -n 80 .context/logs/browser-bridge/cli.jsonl
352
+ tail -n 80 .context/logs/browser-bridge/core.jsonl
353
+ tail -n 80 .context/logs/browser-bridge/mcp-adapter.jsonl
354
+ ```
355
+
356
+ 6. Retry the command once endpoint mismatch is corrected.
318
357
 
319
358
  ## 🔧 Recovery
320
359