Skip to content

chore(release): v0.35.0 — the friction round - #868

Merged
avrabe merged 3 commits into
mainfrom
release/v0.35.0
Aug 27, 2026
Merged

chore(release): v0.35.0 — the friction round#868
avrabe merged 3 commits into
mainfrom
release/v0.35.0

Conversation

@avrabe

@avrabe avrabe commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Release prep for v0.35.0. Version bump + notes; no functional change.

Scope — 12 artifacts

3 verified — REQ-274/275/276, the customer dashboard trio.
9 implemented — REQ-299, 303, 304, 305, 309, 310, 311, 312, 313.

Every issue a human reported this cycle is fixed: #832, #833, #835, #848,
#852, #853, #854, #856. That's the release's identity.

Cut with nine at implemented, deliberately

Each carries a named undischarged clause, recorded in the artifact rather than
rounded up — the --fail-under policy on REQ-309, the git: fallback and lock
error message on REQ-312, release-status categories on REQ-313.

Holding until every clause is discharged would recreate, at release scope,
exactly the deadlock REQ-313 exists to detect: a criterion dischargeable only
by a release shipping. The residuals are stated in the notes.

Two things that were reporting correctly and being ignored

Kani had been failing on a real error[E0063] since REQ-309 added fields to
CoverageEntry and missed the #[cfg(kani)] harness — invisible to
cargo build, cargo test and clippy --all-targets, i.e. the entire local
self-verify set. I dismissed roughly six red Kani checks as infrastructure flake
before another lane found it (#865).

The Test job's evidence step could produce no JUnit XML and still go green
(#833). Both are the same shape as the defects this release is about.

docs check caught two of my own errors

A stale binary reporting the pre-bump workspace version, and a forward reference
to the next minor in the changelog. Both fixed before pushing — worth noting
because the gate did its job on the release that is partly about gates doing
their job.

Files

Cargo.toml (0.34.0 → 0.35.0), Cargo.lock (rivet-core, rivet-cli, etch),
vscode-rivet/package.json, CHANGELOG.md. npm/platform package.json files
are intentionally untouched — release-npm.yml derives the version from the tag.

Gates

cargo fmt --check · clippy --all-targets -D warnings on 1.97.0 ·
cargo test --workspace (exit 0, 65 ok, 0 failed) · rivet validate ·
rivet docs check — all exit 0.

After merge

Signed tag, then verify against the released binary — and confirm
test-evidence/test-results/junit.xml is actually in the compliance bundle,
which is the check that silently failed for four releases (#293).

Scope is the 12 artifacts carrying `release: v0.35.0` — three verified
(REQ-274/275/276, the customer dashboard trio) and nine implemented (REQ-299,
303, 304, 305, 309, 310, 311, 312, 313). Every issue a human reported this
cycle is fixed: #832, #833, #835, #848, #852, #853, #854, #856.

Cut with nine artifacts at `implemented` rather than `verified`, on the
maintainer's decision. Each carries a named undischarged clause recorded in the
artifact — the --fail-under policy on REQ-309, the git: fallback and lock error
message on REQ-312, release-status categories on REQ-313. Holding the release
until every clause is discharged would recreate at release scope exactly the
deadlock REQ-313 exists to detect: a criterion dischargeable only by a release
shipping. The residuals are stated in the release notes rather than rounded up.

The remaining scope moved with a logged decision in #866: five artifacts to the
next minor (REQ-295, 306, 307, 314, 315) and nine to backlog, including two —
REQ-300 and REQ-308 — that need a design decision before they can be scheduled
at all.

Two things this release fixes that were reporting correctly and being ignored.
The Kani job had been failing on a genuine error[E0063] since REQ-309 added
fields to CoverageEntry and missed the #[cfg(kani)] harness, which is invisible
to cargo build, cargo test and clippy --all-targets — the whole local
self-verify set. And the Test job's evidence step could produce no JUnit XML and
still go green. Both are the same shape as the defects this release is about.

docs check caught two of my own errors here: a stale binary reporting the
pre-bump workspace version, and a forward reference to the next minor in the
changelog. Both fixed before pushing.

Confirmed with cargo fmt --check, clippy --all-targets -D warnings on 1.97.0,
cargo test --workspace (exit 0, 65 ok), rivet validate and rivet docs check —
all exit 0.

Refs: REQ-274, REQ-275, REQ-276, REQ-303, REQ-309, REQ-311, REQ-313
@codecov

codecov Bot commented Aug 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 added 2 commits August 28, 2026 00:44
…plan

The release notes were written before #869 landed, so the "deferred to the next
minor" line named REQ-307 (since moved to backlog as CLI usability, not part of
the v0.36.0 theme) and omitted REQ-316 and REQ-317, which #869 created from
untracked issues #862 and #839/#849/#860/#867.

Caught by diffing the changelog line against the actual `release: v0.36.0`
query rather than re-reading the prose. Release notes that describe scope should
be checked against the scope, not against memory of it — the same check that
found REQ-298 missing from the v0.34.0 notes.

Confirmed with rivet docs check (exit 0), rivet validate (exit 0), cargo
fmt --check, clippy --all-targets -D warnings on 1.97.0 and cargo test
--workspace (exit 0, 65 ok).

Refs: REQ-307, REQ-316, REQ-317

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Rivet Criterion Benchmarks'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: 9a776e5 Previous: 9d9a697 Ratio
store_insert/100 85118 ns/iter (± 1187) 66482 ns/iter (± 3182) 1.28
store_insert/1000 916195 ns/iter (± 12708) 718522 ns/iter (± 3126) 1.28
store_lookup/100 1929 ns/iter (± 25) 1461 ns/iter (± 4) 1.32
store_lookup/1000 23917 ns/iter (± 72) 17816 ns/iter (± 33) 1.34
store_lookup/10000 345214 ns/iter (± 2615) 258802 ns/iter (± 2208) 1.33
store_by_type/100 96 ns/iter (± 0) 75 ns/iter (± 1) 1.28
store_by_type/1000 95 ns/iter (± 0) 75 ns/iter (± 0) 1.27
store_by_type/10000 96 ns/iter (± 0) 75 ns/iter (± 0) 1.28
schema_load_and_merge 1536852 ns/iter (± 31539) 1183968 ns/iter (± 12458) 1.30
link_graph_build/100 166270 ns/iter (± 3851) 126045 ns/iter (± 264) 1.32
link_graph_build/1000 1972988 ns/iter (± 12647) 1497016 ns/iter (± 23213) 1.32
link_graph_build/10000 37397988 ns/iter (± 2129283) 21409503 ns/iter (± 500407) 1.75
validate/100 471773 ns/iter (± 8979) 344980 ns/iter (± 1286) 1.37
validate/1000 15782636 ns/iter (± 299502) 10667637 ns/iter (± 38321) 1.48
validate/10000 1084610218 ns/iter (± 17804463) 753996489 ns/iter (± 5648610) 1.44
traceability_matrix/100 4218 ns/iter (± 7) 3209 ns/iter (± 30) 1.31
traceability_matrix/1000 46009 ns/iter (± 145) 33994 ns/iter (± 115) 1.35
traceability_matrix/10000 795705 ns/iter (± 6562) 554924 ns/iter (± 2007) 1.43
diff/100 67190 ns/iter (± 175) 47962 ns/iter (± 113) 1.40
diff/1000 732923 ns/iter (± 3493) 516450 ns/iter (± 1949) 1.42
diff/10000 9298711 ns/iter (± 508846) 6242821 ns/iter (± 139231) 1.49
query/100 1117 ns/iter (± 11) 765 ns/iter (± 3) 1.46
query/1000 14923 ns/iter (± 219) 10410 ns/iter (± 33) 1.43
query/10000 248754 ns/iter (± 2875) 170185 ns/iter (± 625) 1.46
document_parse/10 21114 ns/iter (± 337) 16350 ns/iter (± 41) 1.29
document_parse/100 143865 ns/iter (± 439) 111521 ns/iter (± 478) 1.29
document_parse/1000 1333648 ns/iter (± 10622) 1038384 ns/iter (± 8076) 1.28

This comment was automatically generated by workflow using github-action-benchmark.

@avrabe
avrabe merged commit 4ff980e into main Aug 27, 2026
32 checks passed
@avrabe
avrabe deleted the release/v0.35.0 branch August 27, 2026 23:13
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