Skip to content

fix: relax extension version check, enable all adapter tests#520

Merged
jackwener merged 4 commits intomainfrom
claude/cranky-panini
Mar 27, 2026
Merged

fix: relax extension version check, enable all adapter tests#520
jackwener merged 4 commits intomainfrom
claude/cranky-panini

Conversation

@jackwener
Copy link
Copy Markdown
Owner

Summary

  • Remove per-command version mismatch warning from hot path (execution.ts)
  • doctor: only flag major version mismatch (e.g. v1.x vs v2.x), minor/patch differences are ignored
  • Clean up unused chalk and PKG_VERSION imports from execution.ts
  • Enable all adapter tests via src/clis/**/*.test.ts wildcard (was hand-listing 13 adapters, missing 13+ others)
  • Fix apple-podcasts test to include url field that was added to the adapter

Test plan

  • npm run test:adapter — 60 files, 303 tests pass
  • opencli doctor with mismatched minor version shows no issue
  • opencli doctor with mismatched major version shows issue

- Fail-fast guard in execution.ts: when daemon is running but extension
  is not connected, immediately surface a setup guide instead of waiting
  for the 30s connect timeout

- Extension version handshake: extension sends `hello` with its version
  on WebSocket connect; daemon stores it and exposes via /status; CLI
  warns on mismatch in both execution path and `opencli doctor`

- `opencli doctor` now shows extension version inline and reports
  version mismatch as an actionable issue

- Non-blocking npm update checker: registers a process exit hook so the
  update notice appears after command output (same pattern as npm/gh/yarn);
  background fetch writes to ~/.opencli/update-check.json for next run

- postinstall: print Browser Bridge setup instructions after shell
  completion install for first-time global install users

Bug fixes caught in review:
- discover.ts: add AbortController timeout to checkDaemonStatus() fetch,
  move clearTimeout after res.json() to cover body streaming
- daemon.ts: clear extensionVersion and reject pending requests in
  ws.on('error') handler, not just ws.on('close')
- update-check.ts: skip update notice when process exits with non-zero
  code; read cache once at module load to avoid double disk I/O;
  guard isNewer() against NaN from pre-release version strings
@jackwener jackwener force-pushed the claude/cranky-panini branch from bd735d3 to 9f3b145 Compare March 27, 2026 16:05
@jackwener jackwener merged commit 0f3021a into main Mar 27, 2026
23 of 25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant