コンテンツにスキップ

リリースノート - 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 フィールドが含まれ、PlutusV4CostModelCostModels[3] にマッピングします。

  • 拡張 リーダーシップ範囲検索: FindNextSlotLeadershipContext が呼び出し元によって指定された包含範囲全体を検索するようになり、大きな範囲でも 100 万スロットで失敗しなくなりました。スロットごとのコンテキストキャンセルは context.Canceled を返し、無効な範囲のチェックとオーバーフローに安全な最大スロットでの終了は引き続き維持されます。

  • 更新 Dijkstra ブロック本体の利用コード: 以前のエンコーディングだけを受け付ける利用コードは、新しくマーシャリングされたブロックを処理する前にデコーダーを更新する必要があります。

  • 削除 consensus.MaxLeadershipSearchSlots: このエクスポートされた定数を参照するコードは、その参照を呼び出し元が指定する範囲に置き換える必要があります。

ネットワーク互換性
mainnet
preprod-testnet
preview-testnet
musashi

リリース: v0.204.3

比較: v0.204.2…v0.204.3


Doc Holiday logo

Docs authored by Doc Holiday

ページを編集

最終更新日: