Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
40e538c
Refactor code structure for improved readability and maintainability
afa7789 Feb 26, 2026
728e145
fix: fixing after rebase.
afa7789 Feb 26, 2026
d0eae16
refactor: improve formatting and readability in various files
afa7789 Feb 26, 2026
146d102
Refactor metadata handling in fungible faucets
afa7789 Feb 26, 2026
1735931
refactor: update token metadata references in faucet tests to use Fun…
afa7789 Feb 28, 2026
0f7766c
chore: lint
afa7789 Feb 28, 2026
6fd309e
Refactor token metadata encoding to use 7-bytes-per-felt, length-pref…
afa7789 Mar 4, 2026
8eb4949
refactor: replace RPO256 with Poseidon2 for hashing in fungible metad…
afa7789 Mar 4, 2026
441accb
refactor: format BasicFungibleFaucet initialization for improved read…
afa7789 Mar 4, 2026
02c6af1
fix: adapt metadata MASM to little-endian word ordering after upstrea…
afa7789 Mar 4, 2026
9a9a4dc
chore: adding type as entry instead of separate variables
afa7789 Mar 5, 2026
e750a75
refactor: enforce defining supported types on metadata (#2554)
igamigo Mar 5, 2026
af62bc4
feat: enforce maximum serialized size for output notes (#2205)
Forostovec Mar 6, 2026
8fa4ab0
feat: introduce `AccountIdKey` (#2495)
swaploard Mar 6, 2026
af78cb0
fix: make format and remove unused import (#2564)
PhilippGackstatter Mar 6, 2026
25c65a5
feat: make `NoteMetadataHeader` public (#2561)
SantiagoPittella Mar 6, 2026
527695f
chore: ProvenBlock constructor with validation (#2553)
sergerad Mar 6, 2026
daebbbc
refactor: include fee in TransactionId computation
bobbinth Mar 6, 2026
cbfdd1c
refactor: remove `Ord` and `PartialOrd` from `StorageSlot` (#2549)
PercyDikec Mar 6, 2026
330f939
chore: Replace SMT leaf conversion function (#2271)
sergerad Mar 6, 2026
a7ae72b
feat: add ability to submit user batches for the MockChain (#2565)
igamigo Mar 6, 2026
1105a93
chore: Explicitly use `get_native_account_active_storage_slots_ptr` i…
bobbinth Mar 7, 2026
e04970b
chore: fix typos
bobbinth Mar 7, 2026
33440ac
feat: integrate PSM contracts to AuthMultisig (#2527)
onurinanc Mar 9, 2026
ac4637c
chore: remove `ProvenTransactionBuilder` in favor of `ProvenTransacti…
Himess Mar 9, 2026
0adc24b
feat: implement `Ownable2Step` (#2292)
afa7789 Mar 9, 2026
cf79614
feat: add token metadata support to NetworkFungibleFaucet
afa7789 Mar 9, 2026
68cc2fe
feat: enforce maximum serialized size for output notes (#2205)
Forostovec Mar 6, 2026
90cf256
feat: implement `Ownable2Step` (#2292)
afa7789 Mar 9, 2026
88c69d4
feat: prefix account components with miden::standards namespace (#2400)
Himess Mar 9, 2026
b9016c5
Refactor code structure for improved readability and maintainability
afa7789 Feb 26, 2026
7567315
Refactor metadata handling in fungible faucets
afa7789 Feb 26, 2026
0816ec8
refactor: update token metadata references in faucet tests to use Fun…
afa7789 Feb 28, 2026
0a969d5
chore: adding type as entry instead of separate variables
afa7789 Mar 5, 2026
2fdc772
feat: add owner support to TokenMetadata and update related components
afa7789 Mar 9, 2026
7b8aa54
fix: correct output order in get_owner function
afa7789 Mar 9, 2026
644f66b
feat: enhance ownership handling in fungible faucets and metadata com…
afa7789 Mar 9, 2026
1dff206
fix: update documentation for metadata_slot and description commitmen…
afa7789 Mar 9, 2026
a67dfd8
Merge remote-tracking branch 'upstream/next' into oz/metadata_extension
afa7789 Mar 9, 2026
c96e746
Merge branch 'next' into oz/metadata_extension
PhilippGackstatter Mar 11, 2026
b7a6146
Update crates/miden-standards/asm/standards/access/ownable.masm
afa7789 Mar 11, 2026
ed67de5
Merge remote-tracking branch 'upstream/next' into oz/metadata_extension
afa7789 Mar 11, 2026
c891bf9
refactor: improve comments and assertions in distribute function for …
afa7789 Mar 11, 2026
1b86098
Refactor fungible metadata procedures: rename optional setters to sta…
afa7789 Mar 11, 2026
8f7c3f8
refactor: standardize TokenMetadata usage across faucets and tests
afa7789 Mar 11, 2026
bd71231
chore: Refactor code structure for improved readability and maintaina…
afa7789 Mar 11, 2026
b341396
feat: add TokenMetadata and AccountSchemaCommitment components for en…
afa7789 Mar 11, 2026
ff473ea
chore: lint
afa7789 Mar 11, 2026
11d775f
Merge branch 'next' into oz/metadata_extension
afa7789 Mar 11, 2026
9b73740
refactor: replace TokenName::new("") with TokenName::default() for co…
afa7789 Mar 11, 2026
746c15b
refactor: update metadata field limits and improve code consistency
afa7789 Mar 11, 2026
e949534
chore: lint
afa7789 Mar 11, 2026
2b0cf83
remove duplicates!
afa7789 Mar 12, 2026
547b1a8
refactor: remove unused scale_down_amount procedure
afa7789 Mar 12, 2026
2e5221f
Merge remote-tracking branch 'upstream/next' into oz/metadata_extension
afa7789 Mar 13, 2026
b72e05a
refactor: account metadata handling and remove owner dependency in fa…
afa7789 Mar 16, 2026
5402e9e
refactor: simplify network fungible faucet creation by consolidating …
afa7789 Mar 16, 2026
74675f8
Merge remote-tracking branch 'upstream/next' into oz/metadata_extension
afa7789 Mar 16, 2026
dc96cb0
refactor: clone token symbol in FungibleTokenMetadata creation to avo…
afa7789 Mar 16, 2026
62aeac9
refactor: update comments for clarity and fixed hash handling in toke…
afa7789 Mar 16, 2026
bdc17fa
refactor: streamline fungible token metadata handling in tests and si…
afa7789 Mar 16, 2026
e943020
Refactor FungibleTokenMetadata creation to use builder pattern
afa7789 Mar 16, 2026
cb9dc26
Merge branch 'next' into oz/metadata_extension
afa7789 Mar 16, 2026
0833d16
refactor: update faucet initialization to use FungibleTokenMetadataBu…
afa7789 Mar 16, 2026
72c95ae
refactor: format imports and streamline FungibleTokenMetadataBuilder …
afa7789 Mar 16, 2026
5bb0945
refactor: rename mutability flags for clarity and consistency in toke…
afa7789 Mar 17, 2026
59b2cac
Merge remote-tracking branch 'upstream/next' into oz/metadata_extension
afa7789 Mar 17, 2026
7141623
docs: update comments to clarify procedures in BasicFungibleFaucet, f…
afa7789 Mar 17, 2026
36d2ebd
feat: integrate AuthControlled mint policy into BasicFungibleFaucet s…
afa7789 Mar 17, 2026
0de49e4
Merge remote-tracking branch 'upstream/next' into oz/metadata_extension
afa7789 Mar 17, 2026
d9e88d5
feat: changed metadata structure and fixed-width string utility
afa7789 Mar 18, 2026
de2dd8a
chore: ci/cd fix
afa7789 Mar 18, 2026
c80d929
chore: change for rust doc
afa7789 Mar 18, 2026
2302d25
chore: fmt
afa7789 Mar 18, 2026
695be85
refactor: update fungible token metadata methods to be on pair with c…
afa7789 Mar 18, 2026
7c6235d
Merge branch 'next' into oz/metadata_extension
afa7789 Mar 18, 2026
ab0c754
chore: lint wrong import
afa7789 Mar 18, 2026
60e07af
refactor: update fungible token metadata structure and error handling
afa7789 Mar 18, 2026
d14baab
Merge branch 'next' into oz/metadata_extension
bobbinth Mar 19, 2026
32abbec
reset files in crates agglayer to be exactly the same the next.
afa7789 Mar 20, 2026
2bb8371
chore: reset files in crates agglayer to be exactly the same the next.
afa7789 Mar 20, 2026
59ae3d4
chore: MASM - rename + refactor fungible_faucet
afa7789 Mar 20, 2026
f095f2b
refactor: core metadata restructure
afa7789 Mar 20, 2026
5f974c1
chore: faucets cleanup
afa7789 Mar 20, 2026
0e0b280
refactor: clean up imports and update token metadata handling
afa7789 Mar 20, 2026
0bfd7c8
refactor: simplify FungibleTokenMetadataBuilder usage and improve rea…
afa7789 Mar 20, 2026
cefacac
fix: update layout sync reference for fungible faucet metadata
afa7789 Mar 20, 2026
84d7ebd
refactor: update imports for FungibleTokenMetadataBuilder and clean u…
afa7789 Mar 20, 2026
e478560
refactor: update function calls to use fungible_faucet metadata
afa7789 Mar 21, 2026
29d6e2a
sync agglayer with upstream/next
afa7789 Mar 21, 2026
bb5c717
chore: remove agglayer changes.
afa7789 Mar 21, 2026
188e7f7
refactor: update versioning and error handling in token metadata and …
afa7789 Mar 21, 2026
d1ec13e
Merge remote-tracking branch 'upstream/next' into oz/metadata_extension
afa7789 Mar 21, 2026
07d2c9b
refactor: reorganize token metadata handling and maintain backward co…
afa7789 Mar 21, 2026
6255a66
refactor: update slot name for token metadata to align with FungibleT…
afa7789 Mar 21, 2026
8905d37
refactor: update token metadata handling and error messages for fungi…
afa7789 Mar 25, 2026
a514ec3
Merge branch 'next' into oz/metadata_extension
afa7789 Mar 25, 2026
daafb4d
refactor: enhance fungible token metadata handling and validation logic
afa7789 Mar 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
827 changes: 20 additions & 807 deletions CHANGELOG.md

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions crates/miden-protocol/src/asset/token_symbol.rs
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@ impl TryFrom<Felt> for TokenSymbol {
if encoded_value < Self::MIN_ENCODED_VALUE {
return Err(TokenSymbolError::ValueTooSmall(encoded_value));
}

if encoded_value > Self::MAX_ENCODED_VALUE {
return Err(TokenSymbolError::ValueTooLarge(encoded_value));
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# The MASM code of the Basic Fungible Faucet Account Component.
#
# See the `BasicFungibleFaucet` Rust type's documentation for more details.
# This component depends on `FungibleTokenMetadata` being present in the account.

pub use ::miden::standards::faucets::basic_fungible::mint_and_send
pub use ::miden::standards::faucets::basic_fungible::burn
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# The MASM code of the Fungible Token Metadata Account Component.
#
# Re-exported from module miden::standards::components::fungible_token_metadata
# All metadata-related procedures are re-exported here.

pub use ::miden::standards::metadata::fungible_faucet::get_name
pub use ::miden::standards::metadata::fungible_faucet::get_mutability_config
pub use ::miden::standards::metadata::fungible_faucet::is_max_supply_mutable
pub use ::miden::standards::metadata::fungible_faucet::is_description_mutable
pub use ::miden::standards::metadata::fungible_faucet::is_logo_uri_mutable
pub use ::miden::standards::metadata::fungible_faucet::is_external_link_mutable
pub use ::miden::standards::metadata::fungible_faucet::get_token_metadata
pub use ::miden::standards::metadata::fungible_faucet::get_max_supply
pub use ::miden::standards::metadata::fungible_faucet::get_decimals
pub use ::miden::standards::metadata::fungible_faucet::get_token_symbol
pub use ::miden::standards::metadata::fungible_faucet::get_token_supply
pub use ::miden::standards::metadata::fungible_faucet::set_description
pub use ::miden::standards::metadata::fungible_faucet::set_logo_uri
pub use ::miden::standards::metadata::fungible_faucet::set_external_link
pub use ::miden::standards::metadata::fungible_faucet::set_max_supply
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# The MASM code of the Network Fungible Faucet Account Component.
#
# See the `NetworkFungibleFaucet` Rust type's documentation for more details.
# This component depends on `FungibleTokenMetadata` being present in the account.

pub use ::miden::standards::faucets::network_fungible::mint_and_send
pub use ::miden::standards::faucets::network_fungible::burn
162 changes: 0 additions & 162 deletions crates/miden-standards/asm/standards/access/ownable.masm

This file was deleted.

16 changes: 7 additions & 9 deletions crates/miden-standards/asm/standards/faucets/mod.masm
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,15 @@ use miden::protocol::native_account
use miden::protocol::output_note
use miden::protocol::asset
use miden::protocol::asset::FUNGIBLE_ASSET_MAX_AMOUNT
use miden::standards::metadata::fungible_faucet::TOKEN_METADATA_SLOT

# CONSTANTS
# CONSTANTS
# =================================================================================================

const ASSET_PTR=0
const PRIVATE_NOTE=2

# ERRORS
# ERRORS
# =================================================================================================

const ERR_FUNGIBLE_ASSET_TOKEN_SUPPLY_EXCEEDS_MAX_SUPPLY="token supply exceeds max supply"
Expand All @@ -31,9 +32,6 @@ const ERR_BASIC_FUNGIBLE_BURN_WRONG_NUMBER_OF_ASSETS="burn requires exactly 1 no
# The local memory address at which the metadata slot content is stored.
const METADATA_SLOT_LOCAL=0

# The standard slot where fungible faucet metadata like token symbol or decimals are stored.
# Layout: [token_supply, max_supply, decimals, token_symbol]
const METADATA_SLOT=word("miden::standards::fungible_faucets::metadata")

#! Mints fungible assets to the provided recipient by creating a note.
#!
Expand All @@ -60,7 +58,7 @@ pub proc mint_and_send
# Get the configured max supply and the token supply (= current supply).
# ---------------------------------------------------------------------------------------------

push.METADATA_SLOT[0..2] exec.active_account::get_item
push.TOKEN_METADATA_SLOT[0..2] exec.active_account::get_item
# => [token_supply, max_supply, decimals, token_symbol, amount, tag, note_type, RECIPIENT]

# store a copy of the current slot content for the token_supply update later
Expand Down Expand Up @@ -120,7 +118,7 @@ pub proc mint_and_send
# => [[new_token_supply, max_supply, decimals, token_symbol], amount, tag, note_type, RECIPIENT]

# update the metadata slot with the new supply
push.METADATA_SLOT[0..2] exec.native_account::set_item dropw
push.TOKEN_METADATA_SLOT[0..2] exec.native_account::set_item dropw
# => [amount, tag, note_type, RECIPIENT]

# Create a new note.
Expand Down Expand Up @@ -204,7 +202,7 @@ pub proc burn
# Subtract burnt amount from current token_supply in storage.
# ---------------------------------------------------------------------------------------------

push.METADATA_SLOT[0..2] exec.active_account::get_item
push.TOKEN_METADATA_SLOT[0..2] exec.active_account::get_item
# => [token_supply, max_supply, decimals, token_symbol, amount, pad(16)]

dup.4 dup.1
Expand All @@ -222,6 +220,6 @@ pub proc burn
# => [new_token_supply, max_supply, decimals, token_symbol, pad(16)]

# update the metadata slot with the new supply
push.METADATA_SLOT[0..2] exec.native_account::set_item dropw
push.TOKEN_METADATA_SLOT[0..2] exec.native_account::set_item dropw
# => [pad(16)]
end
Loading
Loading