Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 16 Aug 04:01
· 38 commits to main since this release

What's Changed

  • chore: sponsor button, TS6059 fix, and post-publish verification by @ivermin1123 in #11
  • ci: weekly foundation canary for SDK and conformance drift by @ivermin1123 in #13
  • feat(cassette): format v2 — era, http fields, chunks by @ivermin1123 in #14
  • docs(design): HTTP record/replay and dual-era plan for v0.3 by @ivermin1123 in #12
  • refactor(client): extract the transport layer by @ivermin1123 in #15
  • test(transport): unit-test each transport, and pin verify's transport independence by @ivermin1123 in #16
  • feat(client): modern era and auto-detection by @ivermin1123 in #17
  • test(client): the era detection matrix, row by row by @ivermin1123 in #18
  • feat(record): HTTP reverse proxy for JSON exchanges by @ivermin1123 in #19
  • test(record): the HTTP recorder, end to end against stub upstreams by @ivermin1123 in #20
  • feat(record): SSE capture — streams become chunks[] by @ivermin1123 in #21
  • test(record): the SSE parser against the spec, and the streams around it by @ivermin1123 in #22
  • feat(replay): serve an HTTP cassette over Streamable HTTP by @ivermin1123 in #23
  • test(replay): the HTTP matrix, and a real client in both eras by @ivermin1123 in #24
  • feat(replay): emit recorded streams as SSE by @ivermin1123 in #25
  • test(replay): both kinds of stream, read one frame at a time by @ivermin1123 in #26
  • feat(replay): HTTP passthrough, and a lint for the header's own claims by @ivermin1123 in #27
  • test(replay): passthrough writes you can trust, and lint that reads the header by @ivermin1123 in #28
  • chore(v0.3): pay the debts the chain wrote down, and sync the docs by @ivermin1123 in #29
  • chore: release 0.2.0 by @ivermin1123 in #30

Full Changelog: v0.1.2...v0.2.0


A note on this release's red verify-publish job

The verify-publish job went red on this tag. The published package was never affected — 0.2.0 was on npm as latest with matching provenance the whole time. The job itself carried two first-run defects (it had never executed before this release):

  1. the registry-readiness poll and the assertion used different resolvers, so the poll could pass while npx still 404'd — fixed in #31;
  2. npx discarded the @version pin when run from a checkout of this repo — fixed in #32.

Both are fixed, and verify-publish now passes end to end against this exact release:

https://github.com/ivermin1123/mcp-cassette/actions/runs/31927069944

That run is a workflow_dispatch of the same job against 0.2.0 — added in #32 so release infrastructure can be proven without cutting a release.