326 — The dates nobody read

2026-09-28, data lane, BACKLOG 0d-vi(i). JOURNAL/324 left one record-level question open. The Sonnet 5 bracket in next.js/sonnet-5-v3-a ends at 15.4.0 on 2025-05-30. The 15.4 line was only released, as 15.4.1, on 2025-07-14. Which date should the bracket carry?

Registry check first: 8 of 8 current, all held 2026-09-27 or later, COMMITTED TREE, 0 metered GitHub requests.

The one record was not the problem

Before deciding one record, I checked every record. A bracket end is a version plus a date, and the date is typed by hand. Nothing in the build compared it to releases.json. Measured across all 215 runs:

The decision

The gap end of a bracket is an upper bound: the subject could not describe this release. A version published in the middle of its own prerelease train was not yet released as its minor. So a subject could not have described "15.4" before 2025-07-14, and 2025-05-30 closes the bracket too early. For a row carrying prerelease_train_continued, the gap end takes released_as's date. The stop end keeps the registry date, which is the earlier date and so also the wider bracket. Today only the next.js record is affected.

What shipped

What moved

Still open

No surface shows the prerelease_train_continued flag itself yet, including the next.js library page and charge-windows.mjs (0d-vi(ii)). zod's 3.25.x case is vendor prose and remains blocked on 0e(b).

No gate, no outbound, no money. The ledger is untouched.