Skip to content

Give CHANGELOG.md ## WinchControllers vX.Y.Z YYYY-MM-DD release headers, pending notes in changelog.d/ - #40

Open
1-Bort-1 wants to merge 5 commits into
mainfrom
agent/39-bring-winchcontrollers-changelog-to-the-
Open

1-Bort-1 wants to merge 5 commits into
mainfrom
agent/39-bring-winchcontrollers-changelog-to-the-

Conversation

@1-Bort-1

@1-Bort-1 1-Bort-1 commented Oct 6, 2026 •

Copy link
Copy Markdown
Member

We want one changelog format across the OpenSourceAWE packages, so the release tooling can read every one of them the same way. This gives WinchControllers the same release and section headers as the others: each release is a second-level heading naming the package, the version and an ISO date, with Added/Changed/Fixed/Removed one level below it. Only header lines change; every note reads as before.

The one note not yet released, a fix to the speed controller's anti-windup, moves out of the changelog into its own file in changelog.d/, where the next release picks it up. That keeps the top release header equal to the version in Project.toml. Version 0.5.2 had no date; it now carries 2025-05-29, the day its tag was made.

The repo's own release script read release headers one level too deep and would have refused every release after this change; it now reads the new level. .gitignore also gains the machine-local LocalPreferences.toml, the same line #38 adds, so the two merge in either order.

Verification

  • Reproduced first: the shared release script, --dry-run --sha origin/main, gives Version mismatch: Project.toml is 0.6.4 but CHANGELOG top is (expected v0.6.4)., exit 1
  • The same script, --dry-run --sha on this branch's head (541e769), prints Version: v0.6.4 and the 0.6.4 notes (Added/Changed), exit 0
  • The pending note folds: the release bump's changelog step, run on this branch's files, puts it under ## WinchControllers v0.6.5 <date> / ### Fixed, above v0.6.4
  • bin/release header parse: the copy on main against this CHANGELOG stops at top entry ('### Added') does not match, exit 1; this branch's copy reads ## WinchControllers v0.6.4 2026-09-28 and its notes, exit 0, and still rejects 0.6.3. Its date read gives 2026-09-28 for date-released in CITATION.cff. The full script was not run, since it pushes and posts.
  • Tests, docs build: not run. No Julia code or docs page changed.
  • Risk: the moved note is one long line in a changelog that is otherwise hard-wrapped.

Opened by 1-Bort-1, an AI agent working for @1-Bart-1.
Closes #39 · task WinchControllers.jl-39

1-Bort-1 and others added 2 commits October 6, 2026 14:07
Releases are `## WinchControllers vX.Y.Z YYYY-MM-DD` with `###` groups, and
the pending v0.6.5 note moves verbatim to changelog.d/. v0.5.2 gets its tag
date, 2025-05-29.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Same line as #38; left untracked it blocks the box's pre-push gate.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@1-Bort-1 1-Bort-1 added agent:running Agent task state agent:ci Agent task state and removed agent:running Agent task state labels Oct 6, 2026

@1-Bort-1 1-Bort-1 left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Independent review (advisory)

Verdict: APPROVE WITH COMMENTS · 0 inline, 0 off the diff

Good

  • Only header lines changed in CHANGELOG.md: every removed ###/#### line comes back as ##/### with the same text, and the note bodies are untouched context lines.
  • The v0.5.2 date (2025-05-29) falls between v0.5.1 (05-28) and v0.5.3 (05-31), which fits the tag date the card cites.
  • The pending v0.6.5 note was moved word for word into changelog.d/winch-pos-anti-windup.md, so no ## Unreleased header without a version is left for the box's first-## parser to trip on.
  • The PR stays inside the plan: the two old ### Removed groups were moved to the new level, not renamed, and bin/release was left alone on purpose, with the reason given in the card.
  • The .gitignore line is named under 'Found on the way', gives its reason (the pre-push gate), and is identical to the one in #38, so the two merge cleanly in either order.

Not good

  • After this merges, the repo's own bin/release greps ^### (lines 70-85) and will take ### Added as the top entry, so it is broken on main until the release PR replaces it. The card says so, but nothing in the repo warns someone who runs it by hand.
  • The safety of the moved note depends on agent release folding changelog.d/*.md into the v0.6.5 section. Nothing in this PR checks that the ### Fixed heading inside the fragment is the format the box expects.
  • The fragment keeps the hard-wrapped lines of the old note, but rubric §6 says prose is one line per paragraph. Moving it verbatim is defensible, but a fresh file was the cheap moment to unwrap it.
  • .gitignore is outside the changelog idea and is not 'around the change' in the §1 sense. It is small and explained, but it is still a second idea riding along.

claude, rubric CLEAN_CODE.md. A different lab from the implementer
on purpose: a reviewer sharing its blind spots would not flag its mistakes.

@1-Bort-1 1-Bort-1 added agent:queued Agent task state agent:running Agent task state and removed agent:ci Agent task state agent:queued Agent task state labels Oct 6, 2026
bin/release grepped for '### ' entries, which after the header move
would pick up '### Added'. The pending note is now one line per
paragraph, text unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@1-Bort-1

1-Bort-1 commented Oct 6, 2026 •

Copy link
Copy Markdown
Member Author

Local full suite: PASS (2 min, Julia 1.13.0, one cell of the matrix)

@codecov

codecov Bot commented Oct 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@1-Bort-1

1-Bort-1 commented Oct 6, 2026

Copy link
Copy Markdown
Member Author
  1. Fixed in bc0ca0d: bin/release now greps '## ' headers. On this CHANGELOG it reads v0.6.4 and its notes (exit 0); the copy on main fails on '### Added'. 2) Checked: the box's own withRelease (src/bump.ts) folds the fragment as '### Fixed' under '## WinchControllers v0.6.5'. Output is on the card. 3) Fixed in bc0ca0d: the note is one line, same words. 4) Kept: the pre-push gate refused this branch while LocalPreferences.toml was untracked, and bin/install installs the tracked manifest and takes -y, --update and -h #38 adds the same line, so either order merges cleanly.

@1-Bort-1 1-Bort-1 added agent:ci Agent task state and removed agent:running Agent task state labels Oct 6, 2026
@1-Bort-1
1-Bort-1 marked this pull request as ready for review October 6, 2026 12:58
@1-Bort-1 1-Bort-1 added agent:review Agent task state and removed agent:ci Agent task state labels Oct 6, 2026
@1-Bort-1
1-Bort-1 requested a review from 1-Bart-1 October 6, 2026 12:59
@1-Bort-1

1-Bort-1 commented Oct 9, 2026

Copy link
Copy Markdown
Member Author

From Agents-635 (1-Bart-1/Agents#635)

Per 1-Bart-1/Agents#635: since 1-Bart-1/Agents#634 the release bump writes headers as ## <Package> vX.Y.Z DD-MM-YYYY. Please switch every release header this branch writes from ISO YYYY-MM-DD to DD-MM-YYYY (e.g. 2026-09-28 → 28-09-2026), and rewrite the title and description to match. Keep date-released in CITATION.cff ISO, as the CFF schema requires.

@1-Bort-1 1-Bort-1 added agent:queued Agent task state agent:running Agent task state and removed agent:review Agent task state agent:queued Agent task state labels Oct 9, 2026
Release headers follow the box's ## <Package> vX.Y.Z DD-MM-YYYY form;
bin/release converts the header date back to ISO for CITATION.cff.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@1-Bort-1 1-Bort-1 changed the title CHANGELOG.md uses ## WinchControllers vX.Y.Z YYYY-MM-DD headers, pending notes in changelog.d/ CHANGELOG.md uses ## WinchControllers vX.Y.Z DD-MM-YYYY headers, pending notes in changelog.d/ Oct 9, 2026
@1-Bort-1 1-Bort-1 added agent:ci Agent task state and removed agent:running Agent task state agent:ci Agent task state labels Oct 9, 2026
@1-Bort-1 1-Bort-1 added the agent:review Agent task state label Oct 9, 2026
@1-Bort-1

Copy link
Copy Markdown
Member Author

From Agents-635 (1-Bart-1/Agents#635)

Per 1-Bart-1/Agents#635 (comment 6099024080) ISO is the convention after all: the bump goes back to writing ## <Package> vX.Y.Z YYYY-MM-DD. Please put every release header this branch writes back to ISO YYYY-MM-DD (e.g. 28-09-2026 → 2026-09-28), including any already in the base it carries, and rewrite the title and description to match. date-released in CITATION.cff stays ISO. Sorry for the round trip.

@1-Bort-1 1-Bort-1 added agent:queued Agent task state agent:running Agent task state and removed agent:review Agent task state agent:queued Agent task state labels Oct 10, 2026
The release bump writes ## <Package> vX.Y.Z YYYY-MM-DD again
(1-Bart-1/Agents#635), so the headers and bin/release's date read
go back to ISO.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@1-Bort-1 1-Bort-1 changed the title CHANGELOG.md uses ## WinchControllers vX.Y.Z DD-MM-YYYY headers, pending notes in changelog.d/ Give CHANGELOG.md ## WinchControllers vX.Y.Z YYYY-MM-DD release headers, pending notes in changelog.d/ Oct 10, 2026
@1-Bort-1

Copy link
Copy Markdown
Member Author

Fixed in 541e769: all 11 release headers are back to ISO YYYY-MM-DD, and bin/release reads the ISO date straight into date-released. Title and description updated; the box's release dry-run on 541e769 reads v0.6.4, exit 0.

@1-Bort-1 1-Bort-1 added agent:ci Agent task state agent:review Agent task state and removed agent:running Agent task state agent:ci Agent task state labels Oct 10, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent:review Agent task state

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bring WinchControllers' changelog to the release convention

1 participant