Skip to content

build(deps): move to Agave 4.3.0 and Yellowstone proto 14 / client 15 - #4

Merged
picard8472 merged 7 commits into
sync/upstream-2026-09-13from
deps/agave-4.3
Oct 13, 2026
Merged

picard8472 merged 7 commits into
sync/upstream-2026-09-13from
deps/agave-4.3

Conversation

@picard8472

Copy link
Copy Markdown
Details

Context

  • Alpenglow is enabled in Agave 4.3.0, which mainnet runs at activation (Oct 14–15). Its block-marker, footer and certificate types and its wincode 0.6 wire format are what the Alpenglow phases build on.
  • Yellowstone proto 14 / client 15 (released with yellowstone-grpc v16.1) carry bank_id, SubscribeUpdateBlockFooter with typed certificates, and UpdateParent.
  • Stacked on chore: adopt the FernoLabs upstream tree #3. Refs BLO-643.

Changes

  • Agave solana-entry, solana-net-utils and solana-rpc-client go from =4.2.2 to =4.3.0.
  • The split SDK pins follow Agave 4.3.0's resolution: solana-hash 4.6.0, solana-address 2.7.0, solana-signature 3.5.2, solana-pubkey 4.3.0, solana-vote-interface 6.1.0, solana-short-vec 3.3.0 and wincode 0.6.1.
  • hivezilla now uses a single wincode 0.6.1 dependency. The blockzilla-wincode alias existed only because Agave 4.2.2 was on wincode 0.5.
  • yellowstone-grpc-proto 12.7.0 → 14.0.1 and yellowstone-grpc-client 13.5.0 → 15.0.0:
    • Test fixtures set the new bank_id.
    • The live entry filter uses SubscribeRequestFilterEntry::default(), so it still sends entries only.
    • bank_id, footer and UpdateParent handling come in a later PR.

Testing/Rollout

  • Rust 1.98.1 (the same toolchain CI uses):
    • cargo check --workspace --all-targets --locked: clean.
    • cargo test --workspace --all-targets --locked: 128 suites, 0 failures.
    • cargo fmt --check: clean.
  • hivezilla with --features shred-reconstruction:
    • shred_compact tests: 8/8, including block_markers_are_retained_instead_of_discarded and component_decode_matches_agave_and_accepts_valid_padding.
    • shred-fec-gap-trial: 12/12.
    • shred-epoch-audit: 22/22.
  • No new warnings. The three dead-code warnings in the macOS build already exist on chore: adopt the FernoLabs upstream tree #3.

🤖 Generated with Claude Code

picard8472 and others added 6 commits October 12, 2026 12:29
- Agave crates (solana-entry, solana-net-utils, solana-rpc-client) 4.2.2 -> 4.3.0,
  the release mainnet runs at Alpenglow activation.
- Split SDK pins follow what Agave 4.3.0 resolves: solana-hash 4.6.0,
  solana-address 2.7.0, solana-signature 3.5.2, solana-pubkey 4.3.0,
  solana-vote-interface 6.1.0, solana-short-vec 3.3.0, wincode 0.6.1.
- Agave and our archive types now share wincode 0.6.1, so hivezilla drops the
  separate blockzilla-wincode alias and uses one wincode dependency.
- yellowstone-grpc-proto 12.7.0 -> 14.0.1 and yellowstone-grpc-client
  13.5.0 -> 15.0.0, which carry bank_id, block footers with typed
  certificates, and UpdateParent. The entry subscription keeps its current
  behaviour (entries only); handling bank_id and UpdateParent is follow-up work.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…lotMeta

- SlotMeta gains block_markers (index 3) and block_id (index 4), as written
  by Old Faithful v0.7.30 / radiance v0.0.31. Encoding keeps the shortest
  tuple, so pre-Alpenglow blocks stay three elements and byte-identical.
- New block_marker module parses header, footer, update-parent and genesis
  certificate markers, keeps unknown versions as raw bytes, and checks the
  marker layout Agave enforces. SlotMeta::block_footer returns the footer.
- Vendored confirmed_block.proto gains the DeactivatedStake and VATDebit
  reward types; of-get-block renders them like Agave.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
feat(of-car-reader): read Alpenglow block markers and block id from SlotMeta
@picard8472
picard8472 merged commit 0f49b66 into sync/upstream-2026-09-13 Oct 13, 2026
5 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