リリースノート - v0.204.3
v0.204.3
Section titled “v0.204.3”タイトル: Dijkstra のエンコーディングを整合させ、リーダーシップ範囲に対応
バージョン: v0.204.3
v0.204.3 では、Dijkstra のブロックとプロトコルパラメーターのエンコーディングを Leios プロトタイプのレイアウトに整合させ、リーダーシップ検索が大きな範囲や即時キャンセルを含む呼び出し元の指定範囲に対応するようにしました。
-
改善 Dijkstra の Leios 互換性: Dijkstra のブロック本体は Leios プロトタイプ 2026w36 の 3 要素
block_bodyレイアウトを出力し、各block_transactionを 4 要素としてインラインでエンコードして、末尾に必須のis_validフラグを付けます。デコーダーはこのレイアウトと従来の 4 要素のブロック本体の両方を受け付け、従来の無効なトランザクションのインデックスをトランザクションごとのTxIsValid値に変換し、検証済みのインデックスを保持します。Dijkstra のプロトコルパラメーターのデコードは、従来の 35 フィールド配列と現在の 46 フィールド配列を受け付け、サポート対象外の配列や不定長配列を拒否し、CBOR マップキー 38–48 を使用して更新を書き込みます。Dijkstra のジェネシスデータには Leios フィールドが含まれ、PlutusV4CostModelをCostModels[3]にマッピングします。 -
拡張 リーダーシップ範囲検索:
FindNextSlotLeadershipContextが呼び出し元によって指定された包含範囲全体を検索するようになり、大きな範囲でも 100 万スロットで失敗しなくなりました。スロットごとのコンテキストキャンセルはcontext.Canceledを返し、無効な範囲のチェックとオーバーフローに安全な最大スロットでの終了は引き続き維持されます。
⚠️ 破壊的変更と移行
Section titled “⚠️ 破壊的変更と移行”-
更新 Dijkstra ブロック本体の利用コード: 以前のエンコーディングだけを受け付ける利用コードは、新しくマーシャリングされたブロックを処理する前にデコーダーを更新する必要があります。
-
削除
consensus.MaxLeadershipSearchSlots: このエクスポートされた定数を参照するコードは、その参照を呼び出し元が指定する範囲に置き換える必要があります。
推奨ネットワーク互換性 ⚠️
Section titled “推奨ネットワーク互換性 ⚠️”| ネットワーク | 互換性 |
|---|---|
| mainnet | ⛔ |
| preprod-testnet | ✅ |
| preview-testnet | ✅ |
| musashi | ✅ |
リリース: v0.204.3
Docs authored by Doc Holiday