chore(release): v1.6.0 prep — reconcile versions + CHANGELOG#113
Merged
Conversation
Set the version to 1.6.0 across the four sites that declare it (backend pyproject + songbird.__version__, frontend package.json, and the /healthz test mock). __version__ is the single source for the served/OpenAPI/healthz version, so the bump reconciles the API too. Add a Keep-a-Changelog CHANGELOG backfilling 1.0.0 -> 1.6.0 from dev-notes and the docs/vX specs, and a dev-notes entry. Tag + GitHub Release are Stop 2 (after merge, on authorization). Co-Authored-By: Claude Opus 4.8 <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.
What landed
Stop 1 of a two-stop release. Files only — version reconciliation + a new CHANGELOG + a dev-notes entry. No tag, no GitHub Release (those are Stop 2, after this merges, on explicit authorization).
Version reconciliation → 1.6.0
The last tag was
v1.1.0, but the package versions never moved off the0.1.0scaffold default while everything through the v1.6 fan-out shipped untagged.backend/songbird/__init__.py's__version__is the single source for the served version (FastAPIversion=__version__→ OpenAPIinfo.version;/healthz), so four files declared the literal and all four are bumped:backend/pyproject.tomlbackend/songbird/__init__.py__version__— drives FastAPI/OpenAPI +/healthzfrontend/package.jsonfrontend/src/test/msw/handlers.ts/healthztest mock (no test asserts the literal)Left alone, by design:
scripts/screenshots/package.json(separate internal dev tool); the export-bundle data-formatversioninschemas.ts/api/schemas.py; the MapLibre style-specversion: 8; andconcord_contract_test.py'sinfo["version"] == "1.2.0"(that's Concord's pinned version). The Dockerfile has no version label and the UI shows no version string.CHANGELOG.md (new)
Keep-a-Changelog style, newest-first, plain language for the same audience as the User's Guide. Per-version backfill 1.0.0 → 1.6.0, sourced from
docs/dev-notes.md+ thedocs/vXspecs (not invented). A preamble explains the tag drift and that earlier versions are documented but not retroactively tagged. Dates are git-sourced.No published artifact
CI runs gates only; the nightly workflow runs the contract test; there's no release/publish workflow and no GHCR push of a songbird image.
docker-compose.ymlbuilds songbird locally; users install by clone/ZIP +docker compose up. So a release here is git tag + GitHub Release only — no image-publish step.How it was verified
grep -rnE '0\.1\.0'(deps/locks excluded) → no matches; the four sites read1.6.0.make check→ 241 passed / 4 deselected.make check-frontend→ 221 passed, build clean (build banner now readssongbird-frontend@1.6.0).Next (Stop 2 — after you merge this)
I'll present the exact
git tag -a v1.6.0+ push +gh release createcommands and wait for your authorization, run from a freshly-pulledmain. The tag is never pushed in the same breath as this PR.🤖 Generated with Claude Code