Patch release — set_breakpoint reliability fix. No API changes: the 48-tool surface from v0.2.0 is unchanged.
Fixed
set_breakpointno longer spirals into a non-recoverableinternal_error(#24, PR #25). After a re-navigation / HMR re-parse theScriptStorecould hold two records for one bundle URL, so the candidate loop issued collidingDebugger.setBreakpointByUrlcalls; the throw escaped before any record was stored, so the idempotency guard could never short-circuit — the source line stayed permanently un-settable for the session and an agent trusting the error would burn its iteration budget. Dedup now keys on physical CDP identity(sessionId, url, line, col)across all matching script records, plus a generated-layer idempotency guard (already-set/breakpoint_conflict). Surfaced by the kimi-k2.6 L4 eval run (deep-source-map/compute-step) — a code issue, not a model one.
Known follow-up
- #26 — two deferred, non-blocking findings from the PR #25 review pass: (1) an orphaned mid-loop bind can re-create the same spiral via a different door (candidate k>1 failing after
1..k-1already bound, with no record stored); (2) duplicate-record collapse keeps the oldestscript_id, which can stale out a follow-upget_script_source. Both pre-existing/latent and judged non-blocking; tracked for a later patch.
Install
npm install -g cdp-mcp@0.2.2
Published from CI via GitHub Actions OIDC trusted publishing, with SLSA build provenance.
Full changelog: v0.2.1...v0.2.2