Skip to content

docs: fix stale release-headline prose + verify-surfaces Cellar-suffix bug - #337

Merged
Data-Wise merged 2 commits into
mainfrom
dev
Aug 16, 2026
Merged

docs: fix stale release-headline prose + verify-surfaces Cellar-suffix bug#337
Data-Wise merged 2 commits into
mainfrom
dev

Conversation

@Data-Wise

Copy link
Copy Markdown
Owner

Summary

Post-release audit of v4.6.0 found two issues, both fixed and verified:

  • Stale release-headline prose in README.md, docs/index.md, and mkdocs.yml — the exact
    prose-drift bug class v4.6.0 just hardened craft's own tooling against, found live in craft's
    own docs. bump-version.sh bumps version numbers and counts, never semantic headline text, so
    the "Latest" callouts kept describing v4.5.0's content (or, in mkdocs.yml's case, v4.2.0's)
    after each mechanical version bump. All three now describe v4.6.0's real content.
  • verify-surfaces.sh false-positived on Homebrew's Cellar revision suffixbrew list --versions reports 4.6.0_1 (a rebuild-without-bump suffix), compared via exact string
    equality against plugin.json's bare 4.6.0. Would have blocked every future release's surface
    verification. Fixed with a new positive-control test (fails without the fix, passes with it).

Test plan

  • docs-staleness-check.sh — GREEN
  • mkdocs build --strict — clean
  • tests/test_verify_surfaces.sh — 88/88 passed (86 pre-existing + 2 new), including the new
    Cellar-suffix regression test verified via revert-and-retest (fails without the fix for the
    documented reason, passes with it)

🤖 Generated with Claude Code

Data-Wise and others added 2 commits August 15, 2026 22:42
…uffix

Found during v4.6.0's post-release surface verification: brew list
--versions reports the Cellar directory name, which carries a trailing
_N revision suffix whenever the formula was rebuilt without a version
bump (e.g. "4.6.0_1"). resolve_brew() returned that raw string, and
add_leg()'s exact-equality check against plugin.json's bare "4.6.0"
then blocked every release with a false MISMATCH -- this would have
recurred on every future release, not just this one.

Strip the suffix in resolve_brew() (both the real brew path and the
SURFACES_BREW_VERSION test override) so the comparison is apples to
apples. New positive-control test confirms it fails without the fix
(exit 1, false BLOCKED) and passes with it (exit 0, ALIGNED).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
….yml)

Post-release audit found the exact prose-drift bug class this release
just hardened craft's own tooling against, live in craft's own docs:

- docs/index.md's "Latest" info-box and README.md's top callout both had
  their version NUMBER bumped by bump-version.sh, but the accompanying
  HEADLINE/description text still described v4.5.0's content
  (repo-triage skill) rather than v4.6.0's -- bump-version.sh only
  touches version/count strings, never semantic headline prose, so this
  goes stale every release unless someone catches it by hand.
- mkdocs.yml's site_description had ridden along even longer: its
  version number kept getting bumped mechanically across 4 releases
  while the described feature (/craft:finish rename) is actually from
  v4.2.0.

All three now describe v4.6.0's real content. Neither docs-staleness-
check.sh nor pre-release-check.sh catches this class (they check
counts/dates, not headline-vs-version content matching) -- a real gap,
not something this commit claims to close.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@Data-Wise
Data-Wise merged commit d29a4c7 into main Aug 16, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant