docs: post-0.1.0 cleanup — container badges, release-runbook fixes - #169
Conversation
Follow-up to the 0.1.0 release. Documentation and agent-instruction only; no build inputs touched. README: - Add a Container Image badge group: GHCR version, Release workflow status, Cosign-signed and Trivy-gate badges. The version badge excludes the `sha-` and `sha256-` tags — without that filter the newest tag on the package is the Cosign signature artifact, and the badge renders a signature digest as though it were the release version. Asterisks and comma are percent-encoded so AsciiDoc cannot read them as bold markup or an attribute separator. - Remove the Coordinate history note. The `de.cuioss.sheriff.api` abandonment is no longer useful to a reader arriving at the project; the incident account survives in the release skill and the decision in ADR-0034. Examples and operator docs: - deployment/compose-sample/.env: drop the "0.1.0 is not published yet" caveat, which the release made false and which contradicted the pin one line below. - doc/user/container-image.adoc: record that `internal` is not `public` — it grants org members a pull while anonymous consumers still get 401, so a maintainer's check succeeds while an outside user's fails. Release skill (.claude/skills/release/SKILL.md): - Step 2: fully-qualify and force the relocation-stubs refspec. The bare branch name self-prunes under `fetch.prune=true`, deleting the tracking ref and failing the guard for a branch that is present on the remote. - Step 9: name the internal-vs-public trap and assert the `visibility` field rather than inferring it from a pull, which passes while internal. - New Step 10: update the version-bearing examples after the image is public; subsequent steps renumbered. - Step 11: record that the initial release gets no changelog at all. CLAUDE.md: - Scope the pre-commit build gate to commits touching build inputs, and define documentation-only precisely, including that a mixed commit is not exempt. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01PzQHLRpqwW42aCAemAc23G Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Sorry @cuioss-oliver, you have reached your weekly rate limit of 500000 diff characters.
Please try again later or upgrade to continue using Sourcery
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: cuioss/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThis PR updates release and repository guidance. It tightens GHCR public-visibility verification, strengthens relocation-stub safety rules, revises release reporting and initial-release notes handling, aligns container image references in docs, and limits full pre-commit checks to build-affecting commits. ChangesRelease and container publication guidance
Commit validation policy
Estimated code review effort: 3 (Moderate) | ~25 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 2✅ Passed checks (2 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
PR Reviewer Guide 🔍
|
Follow-up to the 0.1.0 release. Documentation and agent-instruction only — no build inputs touched, so the Maven gate is skipped under the CLAUDE.md rule this PR also introduces.
README
Added a Container Image badge group: GHCR version, Release workflow status, Cosign-signed and Trivy-gate.
The version badge carries
ignore=sha-%2A%2Csha256-%2Aand that filter is load-bearing. Without it the newest tag on the package is the Cosign signature artifact, and the badge renderssha256-937b3995…as though it were the release version — verified against the live service before choosing the URL. The asterisks and comma are percent-encoded so AsciiDoc cannot read*…*as bold markup or the comma as an attribute separator; both encodings were confirmed accepted by the badge service.Trivy and Cosign have no dynamic badge source — nobody hosts scan/signature status as live data — so those two are static claim badges linking to the docs that carry the verification commands. The Release-workflow badge is GitHub-native and genuinely live.
Removed the Coordinate history note. The
de.cuioss.sheriff.apiabandonment no longer helps a reader arriving at the project; the incident account survives in the release skill and the resulting decision in ADR-0034. The skill's dangling cross-reference to that note was repointed.All README links verified to resolve (200), including the now-public GHCR package page.
Examples and operator docs
deployment/compose-sample/.env— dropped the0.1.0 is not published yetcaveat. It was accurate when written, false the moment the release landed, and directly contradicted by the image pin one line below it.doc/user/container-image.adoc— recorded thatinternalis notpublic. Internal grants every org member a pull while anonymous consumers still get401, so a maintainer's check succeeds exactly when an outside user's fails.Release skill
Two defects found while cutting 0.1.0, both fixed and both validated by running the corrected commands:
git fetch origin release/relocation-stubs:refs/remotes/…deletes the tracking ref underfetch.prune=true, so the guard reportedERROR: the check did not evaluatefor a branch present on the remote at67c8339b. Now uses the fully-qualified forced refspec; verified prune-idempotent across two consecutive runs.internal. Every authenticated check —docker pull,imagetools inspect,cosign verify— passes on an internal package, so the natural checks all confirmed the wrong thing while anonymous pulls 401'd for ~150s of polling that looked like propagation lag. Now asserts thevisibilityfield; the guard's negative control was verified to exit non-zero oninternal.Also added Step 10 — update the version-bearing examples (subsequent steps renumbered), and recorded in Step 11 that the initial release gets no changelog at all.
CLAUDE.md
Scoped the pre-commit build gate to commits touching build inputs, with documentation-only defined by explicit file classes. States that a mixed commit is not exempt — one Java file in an otherwise-prose change subjects the whole commit to the gate — and that doubt resolves toward running it.
Release notes
Separately (not in this diff): the 0.1.0 GitHub release notes were rewritten. The generated 152-PR changelog was dropped whole in favour of a short statement of what the project is, what ALPHA means for surface stability, how to get the artifact, and where the docs are — everything is new at an initial release, so a per-PR list is build history rather than release information. All links in the new notes verified.
🤖 Generated with Claude Code
https://claude.ai/code/session_01PzQHLRpqwW42aCAemAc23G
Summary by CodeRabbit