docs(changelog): restore the [0.2.0] heading I deleted - #14
Merged
Merged
Conversation
2c98ee2 removed the `## [0.2.0] - 2026-09-18` heading, folding the whole released section back under [Unreleased]. The 0.2.0 and 0.1.0 sections are restored byte-identical to 8c0a7bf; [Unreleased] again holds only the seq correction. My own fault and worth naming, because it is the same shape as the other mistakes today. The commit removed two superseded entries with: j = s.find("\n- ", i + 1) k = s.find("\n### ", i + 1) end = min(x for x in (j, k, len(s)) if x > 0) That deletes from the entry to the next bullet or subheading. The entry it was removing happened to be the LAST one before `## [0.2.0]`, so the nearest match was inside the released section and the cut swallowed the heading on the way. A delete whose end is "the next thing that looks like a boundary" has no idea what kind of boundary it found. Nothing caught it. CI does not read CHANGELOG structure, and release.yml checks only the section for the version being released -- so a corrupted OLDER section is invisible to it permanently. Had this not been noticed by hand, 0.2.0's release notes would have stayed wrong in the repository forever while every future release passed its checks. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.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.
2c98ee2(#13) removed the## [0.2.0] - 2026-09-18heading, folding the wholereleased section back under
[Unreleased].Restored: the
[0.2.0]and[0.1.0]sections are byte-identical to8c0a7bf, verified withdiff, and[Unreleased]again holds only theseqcorrection.
How
#13 removed two superseded entries with:
That deletes from the entry to the next bullet or subheading. The entry being
removed happened to be the last one before
## [0.2.0], so the nearestmatch was inside the released section and the cut swallowed the heading on the
way. A delete whose end is "the next thing that looks like a boundary" cannot
tell what kind of boundary it found.
Why nothing caught it
CI does not read CHANGELOG structure. And
release.ymlchecks only the sectionfor the version being released — so a corrupted older section is invisible
to it permanently. A 0.2.1 release would have passed every check with 0.2.0's
notes destroyed in the repository.
Verified by hand instead: extraction now yields 48 non-blank lines for
0.2.0,66 for
0.1.0, and 0 for0.2.1as it should until a release PR dates it.🤖 Generated with Claude Code