Skip to content

Add the ledger Compact V2 archive and Alpenglow block fields - #88

Open
Leomrqdd wants to merge 25 commits into
mainfrom
features/streaming-alpenglow
Open

Leomrqdd wants to merge 25 commits into
mainfrom
features/streaming-alpenglow

Conversation

@Leomrqdd

@Leomrqdd Leomrqdd commented Nov 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add hivezilla-ledger-archive. It opens an Agave ledger read-only and writes a Compact V2 hot archive for one inclusive slot range. Epoch 1077, slots 465264000–465695999, produced 431628 rooted blocks from 432000 scanned slots: 347 proven skips and 25 abandoned forks. The published archive is 65.07 GiB.
  • A missing slot is a skip when the block at N+8 carries a skip reward. When that footer also carries a notarization reward, the skip also requires the next rooted block to jump over the slot. A notarization reward alone is an error. A rooted block that is not full, or a hole the next rooted block descends from, stops the run and does not publish the index.
  • Alpenglow Compact V2 hot blocks now carry an optional consensus tail: consensus_block_id and the raw VersionedBlockMarker bytes, in source order. The parent consensus block id stays inside the last header or update-parent marker, so it is not stored a second time. Older hot blocks without that tail still decode, with an empty consensus tail.
  • The CAR reader parses those Alpenglow markers, and show-archive-v2-block-markers prints them. The ledger writer copies the same id and marker bytes into each hot block. It stores a recent blockhash as an id in the rolling window, leaves vote_hash_registry.bin as 65 zero bytes per block, and keeps instruction data raw.
  • direct-agave follows the Agave 4.3.2 types used by those fields. The ledger-archive workspace is separate and pinned to Agave v4.4.0-rc.1.

Test plan

  • cargo test --offline --bin hivezilla-ledger-archive on the server: 48 tests passed for the notarization-reward fix. The README commit does not change the binary.
  • Epoch 1077 archive published: index magic BZV2HIX1, zstd level 3, 431628 contiguous frames, boundary hash CYv2h8q2ah1UoFmPhhGANmAzVmEbyV5ZuV3t2G7T5sKH.
  • Compare this archive with the Triton CAR epoch-1077.car later. Compare signatures, blockhashes, and the index slot, transaction, and signature columns. The compressed frames will differ because the CAR hot path compacts vote, Compute Budget, and system instructions, while this writer keeps them raw.

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