Fix stale/misattributed facts introduced by the README.md and CHANGELOG.md refresh: correct the CI ADR attribution (ADR-KV-014 for lib's first pipeline, not solely ADR-KV-013), mark the go-swagger untagged-operation bug as already resolved (sf-gate #3, PR #5) instead of still-live, and correct the legacy-branch count (~70, not ~150) and the changelog's overclaimed 'every tag is annotated' statement (only v0.7.5 is).
Part of the go-mesh docs refresh: every governed member repo gets a
README on the shared mesh template (constellation context, API surface,
build/run/test, configuration, release & deploy) and a Keep-a-Changelog
CHANGELOG derived from real git tags and history.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The README's "Update Procedure" required three web UIs (GitHub branch
defaults, GitHub releases, Gitea "Synchronize Now") and a go-swagger CLI
installed nowhere. Now that lib is main+tags instead of branch-per-version,
replace it with scripts/release.sh driven through the Makefile:
- `make install-swagger` installs a pinned go-swagger (v0.35.0) and
verifies the version.
- `make regen` copies the sibling service specs and regenerates api/
clients exactly as the old `make swagger` ritual did, failing fast if
a sibling spec is missing. Regen output is reviewed/committed as its
own PR, same as any other change.
- `make release VERSION=vX.Y.Z` / `make release-dry-run VERSION=vX.Y.Z`
validate semver + monotonicity, require a clean main checkout synced
with origin/main, tag, push, `gh release create`, and POST to the
Gitea mirror-sync API for the vernonkeenan/lib and work/lib mirrors
(skipped with a loud warning if GITEA_TOKEN is unset).
Also scope the CI push trigger to `main` + `v*` tags instead of every
branch, so PRs (which already run via the `pull_request` trigger) stop
double-running.
Verified locally: bash -n + shellcheck clean; install-swagger into a
temp GOBIN across go-swagger v0.33.2-v0.35.0; semver/monotonicity/
tag-exists/branch/origin-sync validation failure paths; a full regen
against the real sibling specs in a scratch dir (never the checked-out
api/swagger). That regen surfaced a real go-swagger limitation --
documented in the README and as a warning in the script -- reproduced
across all four installable versions: an untagged operation in
sf-gate-vernonkeenan.yaml produces a client that doesn't compile.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>