ソラナのv1取引フォーマットでは、最大ペイロードが1232バイトから4096バイトへ、約3.3倍に拡大する。稼働中のアップグレードページによると、9月4日時点でメインネットのv1は非アクティブだった。一方、テストネットでは有効化され、開発ネット(devnet)はエポック1140で稼働していた。8月28日に公開された変更履歴では、Agave 4.2の有効化目標を前に、この機能は「近日公開」と説明されていた。RPC(リモートプロシージャコール)を利用するクライアントは、getTransaction、getBlock、blockSubscribeの利用時にmaxSupportedTransactionVersion: 1を設定する必要がある。この設定がない場合、v1のリクエストがエラーを返したり、ブロック全体のレスポンスが失敗したり、ブロック購読が影響を受けた最初のスロットで進行を止めたりする可能性がある。この設定は、クライアントがデコードできる最上位の取引フォーマットを示すだけであり、v1データを要求したり、レガシー形式やv0のレスポンスを変更したりするものではない。v1では、コンピュートユニットの上限、読み込みアカウントのデータ上限、優先手数料が、ComputeBudget命令ではなくtransactionConfigオブジェクトに移される。そのため、古いインデクサーではエラーが発生しないままコンピュート予算がゼロと報告される可能性があり、旧式のGeyserやgRPCの利用者はv1をv0と誤表示する可能性がある。リレイヤーやペイマスターなど、サーバー側で署名を行う事業者は、0x81のv1プレフィックスを識別し、transactionConfigを通じて手数料とリソースのポリシーを適用する必要がある。v1ではComputeBudget命令が何もしないまま実行される可能性があるためだ。ソラナによると、現在のsysvarやsyscallにはv1のメッセージ設定を公開するものがなく、これらの命令を検査するオンチェーンプログラムには制約がある。読み取りに対応するソフトウエアには、@solana/kit 8.0.0、@solana/web3.js 3.0.0-rc.3、Rust solana-* 4.2.x、Python solders 0.29.0、solana-go 1.23.0が含まれる。Yellowstoneの利用者には、これとは別に追加の最低バージョン要件がある。v1取引の構築は引き続き任意だが、構築するチームはコンピュートユニットと読み込みアカウントのデータ上限を明示的に設定し、何もしないComputeBudget命令を削除し、アドレスルックアップテーブルの利用を停止し、1232バイトを超えるペイロードにはbase64を使う必要がある。当面必要なのは、v1取引を読み取り、インデックス化、またはスポンサーするサービスの互換性テストであり、すべてのウォレットを一律に移行することではない。