Transaction Changes
FeeParameters::native_asset_id was renamed to fee_faucet_id and FeeParameters::new is now infallible. The transaction-script root is now a typed TransactionScriptRoot rather than a raw Word. These changes affect anyone constructing fee parameters, reading transaction-script roots, or building batches by hand.
fee_faucet_id replaces native_asset_id on FeeParameters
Summary
FeeParameters::native_asset_id (field, getter, and new parameter) was renamed to fee_faucet_id. Because account IDs no longer encode faucet‑ness, FeeParameters::new no longer validates that the ID is a fungible faucet and is now infallible (returns Self, not Result).
Migration Steps
- Rename
native_asset_id→fee_faucet_idat the constructor, field, and getter. - Drop the
?/FeeErrorhandling onFeeParameters::new.
TransactionScript::root() returns TransactionScriptRoot
Summary
(v0.15.2) TransactionScript::root() now returns a typed TransactionScriptRoot newtype instead of a raw Word (convert with .into()). A new TransactionScript::from_package(&Package) builds a script from a compiled miden-mast-package package, and the new tx::get_tx_script_root kernel proc returns the executed tx‑script root (empty word if none).
Migration Steps
- Update the binding type of
tx_script.root()toTransactionScriptRoot. - Insert
.into()/Word::from(root)where aWordis required.
ProvenBatch::new → new_unchecked; NoteConsumptionInfo fields private
Summary
Batch/transaction housekeeping changes that affect anyone constructing these types by hand:
ProvenBatch::newwas renamedProvenBatch::new_uncheckedto signal it skips validation.NoteConsumptionInfo(and related types) gained cycle counts and had their fields made private; use the accessor methodssuccessful()/failed().
Migration Steps
- Rename
ProvenBatch::new→ProvenBatch::new_unchecked. - Replace direct field access on
NoteConsumptionInfowith the accessor methods.