magicblock-labs / magicblock-labs/magicblock-validator

Use transaction v1 for committor transactions

Open
#1,658 0 comments 0 reactions 1 assignee View on GitHub

@snawaz is already working on this.

Since Sep 17, 2026.

enhancement
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.