magicblock-labs / magicblock-labs/magicblock-validator
Use transaction v1 for committor transactions
@snawaz is already working on this.
Since Sep 17, 2026.
- Dominant language
- Rust
- Stars
- 58
- Forks
- 58
- Avg merge
- 22h 1m
- Merged PRs (30d)
- 53
Description
## Outcome
Use Solana transaction v1 for base-layer commit delivery transactions produced by the committor service. Its 4,096-byte limit should let most current commits fit directly without address lookup tables or other size workarounds.
## Scope
The committor currently assembles v0 transactions and evaluates them against the 1,232-byte packet limit. Larger commits may require buffers, ALTs, or two-stage execution, adding preparation latency and operational complexity.
- Build eligible committor transactions with `VersionedMessage::V1`.
- Carry the existing compute-unit limit, priority fee, and loaded-accounts-data-size limit in the v1 transaction config.
- Use the 4,096-byte v1 limit in fit checks and skip ALT preparation when a commit fits.
- Keep deterministic handling for transactions that exceed v1 size, account, instruction, or compute limits.
- Update committor read and metrics paths to support transaction version 1.
- Preserve nonce ordering, bundle atomicity, idempotent retries, confirmation semantics, and restart recovery.
- Gate rollout on transaction v1 support being enabled on the target base-layer cluster.
This follows the larger-transaction direction noted in #352 and #448. Specification: [SIMD-0385](https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0385-transaction-v1.md).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.