Skip to content

chore(ci): pin rivet v0.22.0 (release-handling) + document the readiness gate (#516)#530

Merged
avrabe merged 1 commit into
mainfrom
chore/rivet-0.22.0-release-handling
Jun 27, 2026
Merged

chore(ci): pin rivet v0.22.0 (release-handling) + document the readiness gate (#516)#530
avrabe merged 1 commit into
mainfrom
chore/rivet-0.22.0-release-handling

Conversation

@avrabe

@avrabe avrabe commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

What

Adopt the new rivet release-handling for synth's release process: bump the CI rivet pin v0.19.0 → v0.22.0 (the version that adds the rivet release command — #516: release status readiness burn-down + release move, paired with the release: artifact field) and document the readiness gate in docs/release-process.md.

Validated before pinning (the #229 lesson)

An unvalidated rivet bump once silently reddened the gate on unchanged artifacts (0.15.0 promoted a WARN→ERROR). So I ran the exact CI gate locally under v0.22.0 first:

  • rivet validatenon-xref ERROR count 0
  • rivet coverageexit 0

Same result as v0.19.0. The pinned v0.22.0 tag's commit (8542cb96) is exactly the build validated.

Tested the new release-handling end-to-end

On synth's real artifacts:

  • rivet release status vX.Y.Z with a non-verified scoped artifact → "✗ NOT cuttable" + the unverified set, exit 1 (CI-gateable);
  • after the artifact reaches verified"✓ Cuttable", exit 0;
  • --format json{cuttable, not_verified, by_status, total}.

Test scopes were reverted — no artifact was left re-scoped.

Docs

docs/release-process.md gains a release-readiness checklist step documenting the rivet release status gate and the release:-field-vs-release-vX-tag note.

CI/docs only — no codegen, no Rust source; frozen fixtures unaffected.

Refs #516.

🤖 Generated with Claude Code

…ess gate (#516)

Bump the CI rivet pin v0.19.0 -> v0.22.0, the version that adds the `rivet
release` planning command (#516: `release status` readiness burn-down + `release
move` re-targeting, paired with the `release:` artifact field).

Validated regression-free before pinning (the #229 lesson — an unvalidated rivet
bump silently reddened the gate once): ran the EXACT CI gate locally under
v0.22.0 — `rivet validate` non-xref ERROR count 0, `rivet coverage` exit 0, same
as v0.19.0. The pinned v0.22.0 tag's commit (8542cb96) is the build validated.

Tested the new release-handling end-to-end on synth's artifacts:
  - `rivet release status vX.Y.Z` with a non-verified scoped artifact -> "✗ NOT
    cuttable" + the unverified set, exit 1 (CI-gateable);
  - after the artifact reaches `verified` -> "✓ Cuttable", exit 0;
  - `--format json` -> {cuttable, not_verified, by_status, total}.
(Test scopes were reverted — no artifact was left re-scoped.)

docs/release-process.md: add the release-readiness checklist step documenting the
`rivet release status` gate and the `release:`-field-vs-`release-vX` tag note.

CI/docs only — no codegen, no Rust source; frozen fixtures unaffected.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@codecov

codecov Bot commented Jun 27, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@avrabe avrabe merged commit e5c50fb into main Jun 27, 2026
20 checks passed
@avrabe avrabe deleted the chore/rivet-0.22.0-release-handling branch June 27, 2026 09:22
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