Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 0 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ miden-crypto-derive = { default-features = false, version = "0.25" }
miden-mast-package = { default-features = false, version = "0.23" }
miden-package-registry = { default-features = false, version = "0.23" }
miden-processor = { default-features = false, version = "0.23" }
miden-project = { default-features = false, version = "0.23" }
miden-prover = { default-features = false, version = "0.23" }
miden-utils-sync = { default-features = false, version = "0.23" }
miden-verifier = { default-features = false, version = "0.23" }
Expand Down
1 change: 0 additions & 1 deletion crates/miden-protocol/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,6 @@ miden-core = { workspace = true }
miden-core-lib = { workspace = true }
miden-mast-package = { features = ["std"], workspace = true }
miden-package-registry = { features = ["std"], workspace = true }
miden-project = { features = ["std"], workspace = true }
regex = { workspace = true }
walkdir = { workspace = true }

Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
use $kernel::account_update
use miden::tx_kernel_core::account_update
use miden::protocol_utils::account_id
use $kernel::asset_vault
use $kernel::callbacks
use $kernel::callbacks::ON_BEFORE_ASSET_ADDED_TO_ACCOUNT_PROC_ROOT_SLOT
use $kernel::callbacks::ON_BEFORE_ASSET_ADDED_TO_NOTE_PROC_ROOT_SLOT
use $kernel::constants::ACCOUNT_PROCEDURE_DATA_LENGTH
use $kernel::constants::EMPTY_SMT_ROOT
use $kernel::constants::STORAGE_SLOT_TYPE_MAP
use $kernel::constants::STORAGE_SLOT_TYPE_VALUE
use $kernel::memory
use $kernel::memory::ACCT_ID_SUFFIX_OFFSET
use $kernel::memory::ACCT_ID_PREFIX_OFFSET
use $kernel::memory::ACCOUNT_DATA_LENGTH
use $kernel::memory::MAX_FOREIGN_ACCOUNT_PTR
use $kernel::memory::NATIVE_ACCOUNT_DATA_PTR
use miden::tx_kernel_core::asset_vault
use miden::tx_kernel_core::callbacks
use miden::tx_kernel_core::callbacks::ON_BEFORE_ASSET_ADDED_TO_ACCOUNT_PROC_ROOT_SLOT
use miden::tx_kernel_core::callbacks::ON_BEFORE_ASSET_ADDED_TO_NOTE_PROC_ROOT_SLOT
use miden::tx_kernel_core::constants::ACCOUNT_PROCEDURE_DATA_LENGTH
use miden::tx_kernel_core::constants::EMPTY_SMT_ROOT
use miden::tx_kernel_core::constants::STORAGE_SLOT_TYPE_MAP
use miden::tx_kernel_core::constants::STORAGE_SLOT_TYPE_VALUE
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::memory::ACCT_ID_SUFFIX_OFFSET
use miden::tx_kernel_core::memory::ACCT_ID_PREFIX_OFFSET
use miden::tx_kernel_core::memory::ACCOUNT_DATA_LENGTH
use miden::tx_kernel_core::memory::MAX_FOREIGN_ACCOUNT_PTR
use miden::tx_kernel_core::memory::NATIVE_ACCOUNT_DATA_PTR
use miden::core::collections::smt
use miden::core::collections::sorted_array
use miden::core::crypto::hashes::poseidon2
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use $kernel::account
use $kernel::asset
use $kernel::asset::COMPOSITION_NONE
use $kernel::constants::STORAGE_SLOT_TYPE_VALUE
use $kernel::asset::ASSET_SIZE
use $kernel::link_map
use $kernel::memory
use $kernel::memory::ACCOUNT_UPDATE_ASSET_PTR
use miden::tx_kernel_core::account
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::asset::COMPOSITION_NONE
use miden::tx_kernel_core::constants::STORAGE_SLOT_TYPE_VALUE
use miden::tx_kernel_core::asset::ASSET_SIZE
use miden::tx_kernel_core::link_map
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::memory::ACCOUNT_UPDATE_ASSET_PTR
use miden::core::crypto::hashes::poseidon2
use miden::core::word

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use miden::protocol_utils::account_id
use $kernel::fungible_asset
use $kernel::non_fungible_asset
use miden::tx_kernel_core::fungible_asset
use miden::tx_kernel_core::non_fungible_asset
use miden::protocol_utils::asset->asset_utils

# ERRORS
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use miden::core::collections::smt
use miden::core::crypto::hashes::poseidon2

use $kernel::asset
use $kernel::fungible_asset
use $kernel::non_fungible_asset
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::fungible_asset
use miden::tx_kernel_core::non_fungible_asset

# ERRORS
# =================================================================================================
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use $kernel::tx
use $kernel::asset
use $kernel::account
use miden::tx_kernel_core::tx
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::account
use miden::protocol_utils::account_id
use miden::core::word

Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
use $kernel::account
use $kernel::account_update
use $kernel::asset
use $kernel::asset::ASSET_SIZE
use $kernel::asset_vault
use $kernel::constants::NOTE_MEM_SIZE
use $kernel::memory
use $kernel::memory::OUTPUT_NOTE_SECTION_OFFSET
use $kernel::memory::OUTPUT_VAULT_ROOT_PTR
use $kernel::note
use miden::tx_kernel_core::account
use miden::tx_kernel_core::account_update
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::asset::ASSET_SIZE
use miden::tx_kernel_core::asset_vault
use miden::tx_kernel_core::constants::NOTE_MEM_SIZE
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::memory::OUTPUT_NOTE_SECTION_OFFSET
use miden::tx_kernel_core::memory::OUTPUT_VAULT_ROOT_PTR
use miden::tx_kernel_core::note

use miden::core::crypto::hashes::poseidon2
use miden::core::word
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use $kernel::account
use $kernel::asset
use $kernel::asset_vault
use $kernel::fungible_asset
use $kernel::non_fungible_asset
use $kernel::memory::INPUT_VAULT_ROOT_PTR
use miden::tx_kernel_core::account
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::asset_vault
use miden::tx_kernel_core::fungible_asset
use miden::tx_kernel_core::non_fungible_asset
use miden::tx_kernel_core::memory::INPUT_VAULT_ROOT_PTR

# FUNGIBLE ASSETS
# ==================================================================================================
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

use miden::protocol_utils::account_id
use miden::protocol_utils::asset::FUNGIBLE_ASSET_MAX_AMOUNT
use $kernel::asset
use miden::tx_kernel_core::asset

# RE-EXPORTS
# =================================================================================================
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use $kernel::memory
use miden::tx_kernel_core::memory

# ERRORS
# =================================================================================================
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use miden::core::word
use $kernel::memory
use $kernel::memory::LINK_MAP_ENTRY_SIZE
use $kernel::memory::LINK_MAP_REGION_END_PTR
use $kernel::memory::LINK_MAP_REGION_START_PTR
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::memory::LINK_MAP_ENTRY_SIZE
use miden::tx_kernel_core::memory::LINK_MAP_REGION_END_PTR
use miden::tx_kernel_core::memory::LINK_MAP_REGION_START_PTR

# A link map is a map data structure based on a sorted linked list.
#
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use $kernel::constants::ACCOUNT_PROCEDURE_DATA_LENGTH
use $kernel::constants::MAX_ASSETS_PER_NOTE
use $kernel::constants::NOTE_MEM_SIZE
use $kernel::constants::WORD_NUM_ELEMENTS
use miden::tx_kernel_core::constants::ACCOUNT_PROCEDURE_DATA_LENGTH
use miden::tx_kernel_core::constants::MAX_ASSETS_PER_NOTE
use miden::tx_kernel_core::constants::NOTE_MEM_SIZE
use miden::tx_kernel_core::constants::WORD_NUM_ELEMENTS
use miden::core::mem

pub type AccountId = struct { prefix: felt, suffix: felt }
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[package]
name = "miden-tx-kernel-core"
version.workspace = true

[lib]
namespace = "miden::tx_kernel_core"
path = "mod.masm"

[dependencies]
miden-core.workspace = true
miden-protocol-utils.workspace = true
5 changes: 5 additions & 0 deletions crates/miden-protocol/asm/kernels/transaction-core/mod.masm
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#! Root module of the `miden::tx_kernel_core` library.
#!
#! This library holds the internal implementation modules of the transaction kernel (prologue,
#! epilogue, note processing, account, asset, memory, etc.). They are not part of the kernel's
#! public syscall API (defined in the `tx-kernel` library's `api.masm`).
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use miden::protocol_utils::account_id
use $kernel::asset
use miden::tx_kernel_core::asset

# ERRORS
# =================================================================================================
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use miden::core::crypto::hashes::poseidon2

use $kernel::asset::ASSET_SIZE
use $kernel::constants::NOTE_MEM_SIZE
use $kernel::constants::WORD_NUM_ELEMENTS
use $kernel::memory
use miden::tx_kernel_core::asset::ASSET_SIZE
use miden::tx_kernel_core::constants::NOTE_MEM_SIZE
use miden::tx_kernel_core::constants::WORD_NUM_ELEMENTS
use miden::tx_kernel_core::memory

pub use miden::protocol_utils::note::NOTE_TYPE_PUBLIC
pub use miden::protocol_utils::note::NOTE_TYPE_PRIVATE
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
use $kernel::account
use $kernel::asset
use $kernel::callbacks
use $kernel::fungible_asset
use $kernel::memory
use $kernel::note
use $kernel::note::NOTE_TYPE_PUBLIC
use $kernel::note::MAX_ATTACHMENT_SCHEME
use $kernel::note::MAX_ATTACHMENT_WORDS
use $kernel::note::MAX_ATTACHMENT_TOTAL_WORDS
use $kernel::constants::MAX_OUTPUT_NOTES_PER_TX
use $kernel::constants::WORD_NUM_ELEMENTS
use $kernel::note::NOTE_METADATA_VERSION_1
use $kernel::asset::ASSET_SIZE
use $kernel::asset::ASSET_VALUE_MEMORY_OFFSET
use miden::tx_kernel_core::account
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::callbacks
use miden::tx_kernel_core::fungible_asset
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::note
use miden::tx_kernel_core::note::NOTE_TYPE_PUBLIC
use miden::tx_kernel_core::note::MAX_ATTACHMENT_SCHEME
use miden::tx_kernel_core::note::MAX_ATTACHMENT_WORDS
use miden::tx_kernel_core::note::MAX_ATTACHMENT_TOTAL_WORDS
use miden::tx_kernel_core::constants::MAX_OUTPUT_NOTES_PER_TX
use miden::tx_kernel_core::constants::WORD_NUM_ELEMENTS
use miden::tx_kernel_core::note::NOTE_METADATA_VERSION_1
use miden::tx_kernel_core::asset::ASSET_SIZE
use miden::tx_kernel_core::asset::ASSET_VALUE_MEMORY_OFFSET
use miden::core::word
use miden::core::mem

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,21 @@ use miden::core::collections::mmr
use miden::core::crypto::hashes::poseidon2
use miden::core::word

use $kernel::account
use miden::tx_kernel_core::account
use miden::protocol_utils::account_id
use $kernel::asset_vault
use $kernel::asset::ASSET_SIZE
use $kernel::asset
use $kernel::constants::EMPTY_SMT_ROOT
use $kernel::constants::MAX_ASSETS_PER_NOTE
use $kernel::constants::MAX_INPUT_NOTES_PER_TX
use $kernel::constants::MAX_NOTE_STORAGE_ITEMS
use $kernel::constants::NOTE_TREE_DEPTH
use $kernel::memory
use $kernel::memory::BLOCK_DATA_SECTION_OFFSET
use $kernel::memory::INPUT_VAULT_ROOT_PTR
use $kernel::memory::KERNEL_PROCEDURES_PTR
use $kernel::memory::PARTIAL_BLOCKCHAIN_PTR
use miden::tx_kernel_core::asset_vault
use miden::tx_kernel_core::asset::ASSET_SIZE
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::constants::EMPTY_SMT_ROOT
use miden::tx_kernel_core::constants::MAX_ASSETS_PER_NOTE
use miden::tx_kernel_core::constants::MAX_INPUT_NOTES_PER_TX
use miden::tx_kernel_core::constants::MAX_NOTE_STORAGE_ITEMS
use miden::tx_kernel_core::constants::NOTE_TREE_DEPTH
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::memory::BLOCK_DATA_SECTION_OFFSET
use miden::tx_kernel_core::memory::INPUT_VAULT_ROOT_PTR
use miden::tx_kernel_core::memory::KERNEL_PROCEDURES_PTR
use miden::tx_kernel_core::memory::PARTIAL_BLOCKCHAIN_PTR

# CONSTS
# =================================================================================================
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use $kernel::account
use $kernel::memory
use $kernel::note
use miden::tx_kernel_core::account
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::note

# CONSTANTS
# =================================================================================================
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
use miden::core::word

use $kernel::epilogue
use $kernel::memory
use $kernel::memory::TX_SCRIPT_ROOT_PTR
use $kernel::note
use $kernel::prologue
use miden::tx_kernel_core::epilogue
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::memory::TX_SCRIPT_ROOT_PTR
use miden::tx_kernel_core::note
use miden::tx_kernel_core::prologue

# EVENTS
# =================================================================================================
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use miden::core::word

use $kernel::memory::TX_SCRIPT_ROOT_PTR
use $kernel::prologue
use miden::tx_kernel_core::memory::TX_SCRIPT_ROOT_PTR
use miden::tx_kernel_core::prologue

# ERRORS
# =================================================================================================
Expand Down
24 changes: 12 additions & 12 deletions crates/miden-protocol/asm/kernels/transaction/lib/api.masm
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
use $kernel::asset
use $kernel::account
use $kernel::account_update
use miden::tx_kernel_core::asset
use miden::tx_kernel_core::account
use miden::tx_kernel_core::account_update
use miden::protocol_utils::account_id
use $kernel::faucet
use $kernel::input_note
use $kernel::memory
use $kernel::output_note
use $kernel::tx

use $kernel::memory::UPCOMING_FOREIGN_PROCEDURE_PTR
use $kernel::memory::UPCOMING_FOREIGN_PROC_INPUT_VALUE_15_PTR
use $kernel::memory::KERNEL_PROCEDURES_PTR
use miden::tx_kernel_core::faucet
use miden::tx_kernel_core::input_note
use miden::tx_kernel_core::memory
use miden::tx_kernel_core::output_note
use miden::tx_kernel_core::tx

use miden::tx_kernel_core::memory::UPCOMING_FOREIGN_PROCEDURE_PTR
use miden::tx_kernel_core::memory::UPCOMING_FOREIGN_PROC_INPUT_VALUE_15_PTR
use miden::tx_kernel_core::memory::KERNEL_PROCEDURES_PTR

use miden::core::word

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,13 @@ path = "lib/api.masm"

[[bin]]
name = "main"
path = "main.masm"
path = "bin/main.masm"

[[bin]]
name = "tx-script-main"
path = "tx_script_main.masm"
path = "bin/tx_script_main.masm"

[dependencies]
miden-core.workspace = true
miden-protocol-utils.workspace = true
miden-tx-kernel-core.workspace = true
3 changes: 2 additions & 1 deletion crates/miden-protocol/asm/miden-project.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[workspace]
members = ["kernels/batch", "kernels/transaction", "protocol", "utils"]
members = ["kernels/batch", "kernels/transaction", "kernels/transaction-core", "protocol", "utils"]

[workspace.package]
version = "0.16.0"
Expand All @@ -8,3 +8,4 @@ version = "0.16.0"
miden-core = { linkage = "dynamic", version = "0.23.1" }
miden-protocol-utils = { linkage = "static", path = "utils" }
miden-tx-kernel = { linkage = "dynamic", path = "kernels/transaction" }
miden-tx-kernel-core = { linkage = "static", path = "kernels/transaction-core" }
Loading
Loading