docs: backfill the 0.6.x changelog and check in a corrected CLAUDE.md - #9
Merged
Merged
Conversation
Prep for publishing 0.6.2. **CHANGELOG** stopped at 0.5.0 while three releases shipped. Anyone reading it to find out whether the R1.6 ack-ordering fix is in a given version would conclude it does not exist. Backfills: - 0.6.0 — TSP frame multiplexing over the mediator socket (`onTspFrame`) - 0.6.1 — REST auth realigned to the current VTA wire contract; the legacy `atm/1.0/*` types meant auth could not succeed at all - 0.6.2 — hand inbound messages to the consumer before acking the mediator, with the consumer-visible note that `onMessage` may now return an awaited promise and delivery is at-least-once **CLAUDE.md** was untracked, so it existed only in one working copy, and both defects it named as live had since been fixed — a doc that points at already-fixed bugs sends the next person hunting for them and implies the remaining risks are covered. R3.6's "auth cannot succeed at all" was fixed in 0.6.1 (and it now records that mediator auth legitimately keeps its own `atm/1.0` type, so that is not drift). R1.6's "acks before handing off" was fixed in 0.6.2; it is restated as the invariant not to regress, since the ordering is easy to undo and the failure is silent. Adds a Releasing section, because the gap that actually bites here is that a merged fix changes nothing for consumers until it is published: 0.6.2 fixed R1.6 in git while every consumer kept resolving to 0.6.0 from npm. Records that the tarball ships `src/` directly, that `prepack` generates the types, and that `npm pack --dry-run` is how to confirm a fix is really in it. Signed-off-by: Glenn Gore <glenn.g@affinidi.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Prep for publishing 0.6.2. Docs only — no source changes.
CHANGELOG stopped at 0.5.0
Three releases shipped without an entry. Anyone reading the changelog to find out whether the R1.6 ack-ordering fix is in a given version would conclude it doesn't exist. Backfilled from the commits:
onTspFrame)atm/1.0/*types meant auth could not succeed at allThe 0.6.2 entry carries the consumer-visible contract change:
onMessagemay now return a promise the transport awaits, and delivery is at-least-once, so handlers must tolerate a duplicate across a reconnect.CLAUDE.md was untracked, and stale
It existed only in one working copy — and both defects it named as live had since been fixed:
_dispatchFramecurrently acks before handing off" → fixed in 0.6.2A doc pointing at already-fixed bugs sends the next person hunting for them, and implies the remaining risks are covered. Each is restated as the invariant not to regress rather than deleted — the R1.6 ordering in particular is a two-line change to undo and fails silently when wrong.
It also now records that mediator auth legitimately keeps its own
atm/1.0message type (different service), so nobody "fixes" that as drift.New: a Releasing section
The gap that actually bit this week: a fix merged here changes nothing for consumers until it is published. 0.6.2 fixed R1.6 in git on 16 Jul while
pnm-browser-pluginkept resolving to 0.6.0 from npm — the newest published version. I initially reported R1.6 as an open cross-repo defect on that basis, and even opened a redundant PR (#8, closed) before spotting #6.So it records: check
npm view @openvtc/vti-didcomm-js versionagainstpackage.jsonbefore assuming a consumer has a fix; the tarball shipssrc/directly with no build output;prepackgenerates the types; andnpm pack --dry-runconfirms what's really in it.Verification
npm teston this branch: 196 pass, 0 fail, 11 skipped (207 total) — unchanged frommain, as expected for a docs-only changenpm pack --dry-runincludessrc/mediator-transport.js, and the shipping source hasawait this._deliver(result)before_ackReceived— the 0.6.2 fix is genuinely in the tarballNote on the working tree
Your local clone was behind (
mainat 0.6.0's merge) with a stale uncommittedpackage-lock.jsonversion sync thatorigin/mainhad already superseded. I discarded that and pulled; the repo is now clean atde14ca7/ 0.6.2 and ready to publish once this merges.