v0.0.1-rc7 - #5
Merged
Merged
Conversation
Two comments claimed the two share a value pool. They do not: they are distinct value pools that happen to share the Orchard receiver, which is why one UFVK decrypts both and why the read path matches output_pool codes 3 and 4. shallow/decrypt.rs already stated this correctly; these two disagreed with it. - internal/state.rs: pool_output_codes said "Ironwood shares the Orchard receiver and value pool". Reworded to lead with the distinct pools and the shared receiver, keeping the operational point (a single database's memos can land under either code, so reads must match both). - internal/send.rs: dropped "Ironwood shares the Orchard pool on-chain" from the fallback_change_pool note; the builder-routing sentence that follows is the real justification and is unchanged.
- build.rs stamps ZKV_BUILD_UNIX (honouring an explicit ZKV_BUILD_UNIX, then SOURCE_DATE_EPOCH); a build expires FRESH_WINDOW_SECS (90 days) after it was compiled instead of on a hard-coded date - that date had not moved since rc1, so rc5 shipped with three days of freshness left and rc6 shipped already expired - the mainnet height backstop is projected from a refreshed anchor (3455954 at 2026-08-21) at the 75 s target block time - release.yml now runs scripts/check-build-freshness.py before it builds anything, failing a tag whose window is under 30 days or whose anchor is over 180 days old
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cuts
v0.0.1-rc7. The headline is the build-freshness fix: rc6 shows "This build is out of date" on a freshly downloaded binary.What's in it
276d0d20docs: Ironwood and Orchard share a receiver, not a value pool. Two comments (internal/state.rs,internal/send.rs) claimed a shared value pool; they are distinct pools that share the Orchard receiver, which is why one UFVK decrypts both and why reads matchoutput_poolcodes 3 and 4.eebc4735freshness: derive the build expiry from compile time.build.rsstampsZKV_BUILD_UNIX(honouring an explicitZKV_BUILD_UNIX, thenSOURCE_DATE_EPOCH), and a build now expires 90 days after it was compiled instead of on a hard-coded date. That date had not moved since rc1, so rc5 shipped with three days of freshness and rc6 shipped already expired. The mainnet height backstop stays, projected from a refreshed anchor (3,455,954 at 2026-08-21) at the 75 s target block time.release.ymlrunsscripts/check-build-freshness.pybefore building anything, failing a tag whose window is under 30 days or whose anchor is over 180 days old.eb812632version bump tov0.0.1-rc7.fa1169a3website download notes to rc7.Verified
The freshness change landed in the internal repo first (green there, including the regtest tier) and is ported here byte for byte.
Locally green on this branch:
cargo fmt --check,cargo clippy --workspace --all-targets -D warnings,cargo test --workspace(all suites),cargo docwith-D warnings,cargo deny check,cargo +1.88 check, and the new guard script.Behaviour checked end to end rather than by unit test alone: a fresh build prints no banner, and the same tree rebuilt with
ZKV_BUILD_UNIX=1700000000prints it.🤖 Generated with Claude Code