Skip to content

Release v0.25.0 - #43

Merged
jdogresorg merged 136 commits into
masterfrom
release/v0.25.0
Oct 19, 2026
Merged

jdogresorg merged 136 commits into
masterfrom
release/v0.25.0

Conversation

@jdogresorg

@jdogresorg jdogresorg commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

What this release carries

Added

  • Added the snapshot checkpoint federation (producer, co-sign round, finalized messages), armed on testnet and unarmed on mainnet.
  • Added the capability snapshot proof route.
  • Added a safe seed tool for undelivered attestations and a spend guard drill for the LLM effectors.

Changed

  • Gated stamped reorg digests, adopted bundle completion announcements and bundle reward publisher binding by activations armed on testnet and unarmed on mainnet.
  • Counted verified oracle signers by a signed count quorum, armed on testnet and unarmed on mainnet.
  • Accepted the previous hub API key during rotation for bulk authorization only.
  • Dropped the default hub URL from public testnet descriptors and raised the CI MariaDB image to the 11 line.

Fixed

  • Persisted effector spend pauses across restarts and scoped snapshot checkpoint discovery by network.

Testnet activation

  • HOST_FAULT_HALT_ACTIVATION on BTC:testnet at height 157073
  • HOST_FAULT_HALT_ACTIVATION on LTC:testnet at height 4928460
  • HOST_FAULT_HALT_ACTIVATION on DOGE:testnet at height 68009330
  • REASSEMBLE_CHUNK_PARENT_STATUS_ACTIVATION on BTC:testnet at height 157073
  • REASSEMBLE_CHUNK_PARENT_STATUS_ACTIVATION on LTC:testnet at height 4928460
  • REASSEMBLE_CHUNK_PARENT_STATUS_ACTIVATION on DOGE:testnet at height 68009330
  • UNSTAKE_DELEGATED_ROW_JOURNAL_ACTIVATION on BTC:testnet at height 157073
  • UNSTAKE_DELEGATED_ROW_JOURNAL_ACTIVATION on LTC:testnet at height 4928460
  • UNSTAKE_DELEGATED_ROW_JOURNAL_ACTIVATION on DOGE:testnet at height 68009330
  • ANCHOR_CHECKPOINT_SEQ_BIND_ACTIVATION on BTC:testnet at height 157073
  • ANCHOR_CHECKPOINT_SEQ_BIND_ACTIVATION on LTC:testnet at height 4928460
  • ANCHOR_CHECKPOINT_SEQ_BIND_ACTIVATION on DOGE:testnet at height 68009330
  • ACTIVE_STAKE_COLLATION_ACTIVATION on BTC:testnet at height 157073
  • ACTIVE_STAKE_COLLATION_ACTIVATION on LTC:testnet at height 4928460
  • ACTIVE_STAKE_COLLATION_ACTIVATION on DOGE:testnet at height 68009330
  • ATTEST_CALLBACK_BATCH_POSITION_ACTIVATION on BTC:testnet at height 157073
  • ATTEST_CALLBACK_BATCH_POSITION_ACTIVATION on LTC:testnet at height 4928460
  • ATTEST_CALLBACK_BATCH_POSITION_ACTIVATION on DOGE:testnet at height 68009330
  • AIRDROP_NATIVE_FEE_TALLY_ACTIVATION on BTC:testnet at height 157073
  • AIRDROP_NATIVE_FEE_TALLY_ACTIVATION on LTC:testnet at height 4928460
  • AIRDROP_NATIVE_FEE_TALLY_ACTIVATION on DOGE:testnet at height 68009330
  • STRING_RECEIVER_METER on BTC:testnet at block time 1792454400
  • STRING_RECEIVER_METER on LTC:testnet at block time 1792454400
  • STRING_RECEIVER_METER on DOGE:testnet at block time 1792454400
  • STRING_RESULT_METER on BTC:testnet at block time 1792454400
  • STRING_RESULT_METER on LTC:testnet at block time 1792454400
  • STRING_RESULT_METER on DOGE:testnet at block time 1792454400
  • TOSTRING_SIZE_METER on BTC:testnet at block time 1792454400
  • TOSTRING_SIZE_METER on LTC:testnet at block time 1792454400
  • TOSTRING_SIZE_METER on DOGE:testnet at block time 1792454400
  • REORG_DIGEST_V2_ACTIVATION on BTC:testnet at height 157073
  • REORG_DIGEST_V2_ACTIVATION on LTC:testnet at height 4928460
  • REORG_DIGEST_V2_ACTIVATION on DOGE:testnet at height 68009330
  • COUNT_QUORUM_SIGNED_ACTIVATION on BTC:testnet at height 157073
  • COUNT_QUORUM_SIGNED_ACTIVATION on LTC:testnet at height 4928460
  • COUNT_QUORUM_SIGNED_ACTIVATION on DOGE:testnet at height 68009330
  • BUNDLE_DONE_PUBLISHER_BIND_ACTIVATION on BTC:testnet at height 157073
  • BUNDLE_DONE_PUBLISHER_BIND_ACTIVATION on LTC:testnet at height 4928460
  • BUNDLE_DONE_PUBLISHER_BIND_ACTIVATION on DOGE:testnet at height 68009330
  • SNAPSHOT_CHECKPOINT_ACTIVATION on BTC:testnet at height 157073
  • SNAPSHOT_CHECKPOINT_ACTIVATION on LTC:testnet at height 4928460
  • SNAPSHOT_CHECKPOINT_ACTIVATION on DOGE:testnet at height 68009330
  • HOST_FAULT_HALT_ACTIVATION on BTC:testnet at height 157073
  • HOST_FAULT_HALT_ACTIVATION on LTC:testnet at height 4928460
  • HOST_FAULT_HALT_ACTIVATION on DOGE:testnet at height 68009330
  • DISPENSER_PURGE_GRACE_ACTIVATION on BTC:testnet at block time 1792454400
  • DISPENSER_PURGE_GRACE_ACTIVATION on LTC:testnet at block time 1792454400
  • DISPENSER_PURGE_GRACE_ACTIVATION on DOGE:testnet at block time 1792454400
  • DISPENSER_CANCEL_GRACE_PARENT_FLOOR_ACTIVATION on BTC:testnet at block time 1792454400
  • DISPENSER_CANCEL_GRACE_PARENT_FLOOR_ACTIVATION on LTC:testnet at block time 1792454400
  • DISPENSER_CANCEL_GRACE_PARENT_FLOOR_ACTIVATION on DOGE:testnet at block time 1792454400
  • DISPENSER_ADDRESS_ID_COLLAPSE_ACTIVATION on BTC:testnet at block time 1792454400
  • DISPENSER_ADDRESS_ID_COLLAPSE_ACTIVATION on LTC:testnet at block time 1792454400
  • DISPENSER_ADDRESS_ID_COLLAPSE_ACTIVATION on DOGE:testnet at block time 1792454400

Release v0.25.0

Base: master at fea89a7ff6bfa94ad6dede2318696acc7a2f66e8
Head: release/v0.25.0 at 6f5c4679315d65ee50c269f3d2bf5be0ff7c6364

Landed refs

  • 6f5c467 Re-slide the v0.25.0 heights and defer the capability snapshot proof gate
  • f443390 Revert "Stamp regtest capability snapshots written before the chain id is known"
  • 4258bd6 Stamp regtest capability snapshots written before the chain id is known
  • 6508ba1 Read the snapshot checkpoint gate height by its BTC network key
  • 920deda Re-slide the v0.25.0 testnet activation heights
  • 41b749d Release v0.25.0
  • 29639df Merge develop into the hub price batching floor gate copy
  • cdd58d3 Retire archive invalid state hash gate copy
  • c14ffda Merge: Sync checkpoint sequence arming carrier
  • fdf81d5 Merge: Retire the index map state hash gate copy
  • 0708f7d Sync checkpoint sequence arming carrier
  • eb84d28 Retire the index map state hash gate copy
  • 8578396 Retire the price batching floor gate copy
  • e907a96 Drive the co-sign round timeout with a fake clock
  • c53c71e Restore the snapshot checkpoint co-sign build
  • ef1708c Merge: Refresh the canonical price scale carrier copy
  • b4589d9 Refresh the canonical price scale carrier copy
  • 79dd2fc sync trunk
  • aee9536 Refresh the generated pins
  • fc760e3 Merge: Test public testnet descriptors omit default hubs
  • 741c874 sync trunk
  • 0db03bc Test public testnet descriptors omit default hubs
  • b8956ee Pin the hub shared rows hash to the retired relay gate canonical
  • 2c5c345 Encode the carrier repin reason
  • 6e12e6d Retire the price scale activation gate copy
  • 217891f Share checkpoint peer message subscription
  • 1872b22 Retire the relay reject-slot gate
  • f4a1305 Split snapshot co-sign refusal suites
  • b536b33 Add snapshot checkpoint federation round
  • 67124dc Merge: Add snapshot checkpoint producer
  • 2902e07 Add snapshot checkpoint producer
  • a0c1575 Refresh the generated pins
  • 4bee851 Merge: Split finalized message acceptance suites
  • 1754642 Split finalized message acceptance suites
  • e6d1d1b Add finalized snapshot checkpoint messages
  • f870c6e Merge: Check wallet upstream for registry drift
  • 572dbb1 Merge: Split cosign view validation
  • 5e5c912 Check wallet upstream for registry drift
  • a4ddf57 Split cosign view validation
  • 995fb50 Add snapshot cosign view builder
  • a70b04d Merge remote-tracking branch 'origin/develop' into hand/hl13-twins
  • 17bb51d Refresh the generated pins
  • ae620f4 Merge: Split finalized row test groups
  • b16743b Split finalized row test groups
  • 2aa7035 Add finalized snapshot checkpoint row builder
  • 81f4b50 Merge: Validate co-signer identity before claiming
  • 1bf3c1b Validate co-signer identity before claiming
  • 396795c Add snapshot checkpoint co-signer answer
  • 598132a Read the unstake journal arming lever in the hub identity and repin the shared row digest
  • 8ba04a4 Merge remote-tracking branch 'origin/develop' into hand/hl13-twins
  • aec01c1 Refresh the generated pins
  • d295e9a Merge: Split snapshot signed record tests
  • 1126343 Split snapshot signed record tests
  • 6c9e25b Add snapshot signed payload record
  • 2361a9f Merge: Split snapshot sign request test suites
  • 6c76985 Split snapshot sign request test suites
  • eafdb8f Add snapshot sign request helpers
  • 474af34 Merge: Add snapshot checkpoint round state
  • f6c100e Add snapshot checkpoint round state
  • adb0377 Carry the unstake delegated row journal gate row into the registry twin
  • 7d7091b Merge remote-tracking branch 'origin/develop' into hand/backmerge-v0240
  • 85e277f Merge: test: split snapshot mesh suite blocks
  • 364af58 test: split snapshot mesh suite blocks
  • 038d31f test: add snapshot checkpoint federation mesh
  • 8a82ec0 Merge: Add snapshot checkpoint signature tally
  • 6179fcd Add snapshot checkpoint signature tally
  • c37f9b6 Merge master (v0.24.0 release) back into develop
  • 7e2d953 Keep the capability snapshot proof route out of the mirror schema-version lockstep test
  • 43ac374 Add the capability snapshot proof route
  • f553062 Add the snapshot finalize refusal policy
  • 2582b23 Add the snapshot checkpoint payload builder
  • 6336610 Add the capability snapshot proof reply builder
  • 37e2274 Add the snapshot checkpoint due block pick
  • f3a9bdb Add the snapshot checkpoint wire constants and slot leader
  • 8579bee Add the snapshot checkpoint co-sign refusal policy
  • 8975c03 Split capability proof route tests
  • 38fb4d9 Add capability snapshot proof route
  • bd095eb Split finalize policy test groups
  • 221d324 Add snapshot finalize refusal policy
  • 0951372 Merge origin develop into the hand landing
  • 87ebc84 Split snapshot payload test registration
  • 5fb4e80 Split capability proof reply suites
  • 341d9c7 Add snapshot checkpoint payload builder
  • 4c64804 Add capability proof reply shaper
  • c27f998 Add snapshot checkpoint due selection
  • 5fe8880 Refresh the generated pins
  • a06a033 Merge: Split capability query test suites
  • 772379a Merge: Sanitize spend guard drill examples
  • e56f5bd Merge: Persist effector spend pauses across restarts
  • 017a5fb Merge: Add snapshot checkpoint canonical helper
  • 4cac73b Add snapshot checkpoint wire primitives
  • 366775e Add snapshot co-sign refusal policy
  • dd11c6c Land the capability snapshot proof query parser
  • 73bc5d9 Land the snapshot checkpoints table and db methods
  • 4ee08e4 Land the LLM spend guard drill scripts
  • f0c9ea0 Land the persisted effector spend pause across restarts
  • b6c31da Split capability query test suites
  • ff5d720 Add capability snapshot proof query parser
  • 771bfeb Scope snapshot checkpoint discovery by network
  • 85da588 Sanitize spend guard drill examples
  • 008b813 Persist effector spend pauses across restarts
  • cc3a152 Add isolated snapshot checkpoint storage
  • 8473a30 Add LLM spend guard drill
  • ed42358 Add snapshot checkpoint canonical helper
  • 13a26ec Read the seed tool database variables by literal name
  • 6c8bca1 Refresh the generated pins
  • 42ee014 Merge: test: exercise pre-gate reorg fragmentation
  • 4969e7e test: exercise pre-gate reorg fragmentation
  • c6984b0 Merge: Read safe database secret in seed tool
  • dfa1f5a test: split multi-hub reorg cases
  • e9042c7 Read safe database secret in seed tool
  • 3efd4a0 test: cover multi-hub reorg digest convergence
  • 1816b2e sync trunk
  • 0a6ba28 Merge remote-tracking branch 'origin/develop' into hand/hub-registry-refresh
  • 7e84f2a Split seed tool test suite for readability
  • ae81b43 Refresh the chain-registry snapshot so the testnet descriptors no longer carry a default hub URL
  • e05cd41 Add safe undelivered attestation seed tool
  • 072d5b3 Merge: Gate stamped reorg digests by activation
  • 15438b3 Gate stamped reorg digests by activation
  • 818759e Merge: Mark gate matrix as generated
  • 9775e08 Mark gate matrix as generated
  • f5e5302 Gate adopted bundle completion announcements
  • 7306df6 Merge: Sync reassembly arming carrier
  • 631b7ff Sync reassembly arming carrier
  • 6ed1fef Merge: Raise MariaDB CI image to 11.8
  • 4697228 Raise MariaDB CI image to 11.8
  • cdb79f7 Merge: Bind bundle reward mirrors to publishers
  • 1b99125 Bind bundle reward mirrors to publishers
  • 222ec5a Merge: test: relax testnet hub endpoint requirement
  • ea475fa test: relax testnet hub endpoint requirement
  • 56c01ba Merge: Restrict previous key to bulk authorization
  • 7a643be Restrict previous key to bulk authorization
  • 5e0d211 sync trunk
  • f36344d Accept previous hub API key during rotation
  • bb28d03 Merge: test: pin adopted bundle completion announcements
  • 2872ff5 test: pin adopted bundle completion announcements

Cover adopted and fresh bundle sends across mainnet and testnet using the real completion broadcaster. Refresh the suite-title snapshot for the new coverage.
Allow the outgoing bulk credential during a rolling key change while logging only its variable name. Document the rotation flow and cover current, previous, invalid, and unset-key behavior.
Keep feed-read and config-secrets fallback paths limited to the current bulk key. Add regression coverage for both tier boundaries and refresh the suite-title pin.
Require verified publisher binding for gated legacy BUNDLE_DONE reward mirrors while preserving pre-activation behavior.
Update the performance service, database tier runner, and full CI documentation to use the current LTS image.
Mirror the canonical reassembly parent-status regtest arming rule and record its environment input in consensus identity measurements. Advance the byte-identity pin to the canonical carrier hash.
Do not sign a second completion announcement when the publisher adopts an existing bundle after publisher binding activates. Preserve fresh and below-gate announcements, and pin focused coverage.
Apply the repository convention for mechanically specified activation matrices so the exact verification path does not raise the direct-file structure count.
Add the hub-only digest activation and preserve the legacy payload below it. Exercise field binding on both sides of the gate and refresh consensus and suite identity pins.
Provide a dry-run-first operator entry point that rejects unknown networks before database access. Build and collision-check inert mirror rows with focused unit coverage and refreshed suite-title pins.
Keep each suite callback below the repository function-length limit without changing test titles or coverage.
# Conflicts:
#	bin/pins/at1-suite-titles.json
Exercise legacy digest fragmentation and gated convergence across a four-validator snapshot. Refresh the suite title identity pin.
Require the documented redaction-safe environment variable directly so the operator command never requests the deprecated password name.
Keep each regression case within the repository function-size ratchet.
Place the fragmented multi-hub round one block below activation and assert that it uses legacy address votes before timing out.
Wire snapshot checkpoint signing, quorum finalization, peer validation, and timeout retry behavior. Add in-memory federation coverage and refresh the suite title pin.
Keep each test registration function within the repository readability limit while preserving the collected test titles.
Filter refused relay rows whenever a usable home-chain tip time is available, while retaining the fail-closed missing-tip behavior. Refresh the generated suite identity after removing threshold-specific coverage.
Route snapshot checkpoint envelopes through the existing state checkpoint handler so hub boot stays within the declared listener ceiling. Exercise the shared handler path in the federation mesh.
Apply canonical price validation unconditionally, remove obsolete registry and test expectations, correct the frozen shared-row hash, and refresh generated identity pins.
Preserve the generated reason value while keeping the published pin free of a literal internal reference.
Assert the snapshot has exactly three public testnet descriptors and that none defines a hub property.
# Conflicts:
#	bin/pins/at1-suite-titles.json
# Conflicts:
#	test/unit/consensus/gate_registry/regtest_arming_at_read.test.js
# Conflicts:
#	bin/pins/at1-suite-titles.json
Copy the canonical shared row retirement and refresh its byte pin. The consensus identity remains unchanged after regeneration.
Copy the canonical shared row retirement and refresh its byte pin.
Mirror the canonical regtest arming row into the hub registry twin. Record the environment input in consensus identity and refresh the pinned canonical hash.
Copy the canonical shared row bytes and refresh the pinned file hash.
# Conflicts:
#	test/unit/consensus/gate_registry/regtest_arming_at_read.test.js
@jdogresorg
jdogresorg merged commit 86f959e into master Oct 19, 2026
12 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