Constants§
- ERR_
ACCOUNT_ ANCHOR_ BLOCK_ COMMITMENT_ MUST_ NOT_ BE_ EMPTY - Anchor block commitment must not be empty
- ERR_
ACCOUNT_ CODE_ COMMITMENT_ MISMATCH - Computed account code commitment does not match recorded account code commitment
- ERR_
ACCOUNT_ CODE_ IS_ NOT_ UPDATABLE - Account code must be updatable for it to be possible to set new code
- ERR_
ACCOUNT_ ID_ EPOCH_ MUST_ BE_ LESS_ THAN_ U16_ MAX - Epoch must be less than u16::MAX (0xffff).
- ERR_
ACCOUNT_ ID_ LEAST_ SIGNIFICANT_ BYTE_ MUST_ BE_ ZERO - Least significant byte of the account ID suffix must be zero.
- ERR_
ACCOUNT_ ID_ UNKNOWN_ STORAGE_ MODE - Unknown account storage mode in account ID.
- ERR_
ACCOUNT_ ID_ UNKNOWN_ VERSION - Unknown version in account ID.
- ERR_
ACCOUNT_ INVALID_ STORAGE_ OFFSET_ FOR_ SIZE - Storage offset is invalid for 0 storage size (should be 0)
- ERR_
ACCOUNT_ IS_ NOT_ NATIVE - The current account is not native
- ERR_
ACCOUNT_ NONCE_ DID_ NOT_ INCREASE_ AFTER_ STATE_ CHANGE - Account nonce did not increase after a state changing transaction
- ERR_
ACCOUNT_ NONCE_ INCREASE_ MUST_ BE_ U32 - Account nonce cannot be increased by a greater than u32 value
- ERR_
ACCOUNT_ PROC_ INDEX_ OUT_ OF_ BOUNDS - Provided procedure index is out of bounds
- ERR_
ACCOUNT_ PROC_ NOT_ PART_ OF_ ACCOUNT_ CODE - Account procedure is not part of the account code
- ERR_
ACCOUNT_ READING_ MAP_ VALUE_ FROM_ NON_ MAP_ SLOT - Failed to read an account map item from a non-map storage slot
- ERR_
ACCOUNT_ SEED_ ANCHOR_ BLOCK_ COMMITMENT_ DIGEST_ MISMATCH - ID of the new account does not match the ID computed from the seed and anchor block commitment
- ERR_
ACCOUNT_ SETTING_ MAP_ ITEM_ ON_ NON_ MAP_ SLOT - Failed to write an account map item to a non-map storage slot
- ERR_
ACCOUNT_ SETTING_ VALUE_ ITEM_ ON_ NON_ VALUE_ SLOT - Failed to write an account value item to a non-value storage slot
- ERR_
ACCOUNT_ STACK_ OVERFLOW - Depth of the nested FPI calls exceeded 64
- ERR_
ACCOUNT_ STACK_ UNDERFLOW - Failed to end foreign context because the current account is the native account
- ERR_
ACCOUNT_ STORAGE_ COMMITMENT_ MISMATCH - Computed account storage commitment does not match recorded account storage commitment
- ERR_
ACCOUNT_ STORAGE_ SLOT_ INDEX_ OUT_ OF_ BOUNDS - Provided storage slot index is out of bounds
- ERR_
ACCOUNT_ TOO_ MANY_ PROCEDURES - Number of account procedures exceeds the maximum limit of 256
- ERR_
ACCOUNT_ TOO_ MANY_ STORAGE_ SLOTS - Number of account storage slots exceeds the maximum limit of 255
- ERR_
EPILOGUE_ TOTAL_ NUMBER_ OF_ ASSETS_ MUST_ STAY_ THE_ SAME - Total number of assets in the account and all involved notes must stay the same
- ERR_
FAUCET_ BURN_ CANNOT_ EXCEED_ EXISTING_ TOTAL_ SUPPLY - Asset amount to burn can not exceed the existing total supply
- ERR_
FAUCET_ BURN_ NON_ FUNGIBLE_ ASSET_ CAN_ ONLY_ BE_ CALLED_ ON_ NON_ FUNGIBLE_ FAUCET - The burn_non_fungible_asset procedure can only be called on a non-fungible faucet
- ERR_
FAUCET_ INVALID_ STORAGE_ OFFSET - Storage offset is invalid for a faucet account (0 is prohibited as it is the reserved data slot for faucets)
- ERR_
FAUCET_ IS_ NF_ ASSET_ ISSUED_ PROC_ CAN_ ONLY_ BE_ CALLED_ ON_ NON_ FUNGIBLE_ FAUCET - The faucet_is_non_fungible_asset_issued procedure can only be called on a non-fungible faucet
- ERR_
FAUCET_ NEW_ TOTAL_ SUPPLY_ WOULD_ EXCEED_ MAX_ ASSET_ AMOUNT - Asset mint operation would cause the new total supply to exceed the maximum allowed asset amount
- ERR_
FAUCET_ NON_ FUNGIBLE_ ASSET_ ALREADY_ ISSUED - Failed to mint new non-fungible asset because it was already issued
- ERR_
FAUCET_ NON_ FUNGIBLE_ ASSET_ TO_ BURN_ NOT_ FOUND - Failed to burn non-existent non-fungible asset in the vault
- ERR_
FAUCET_ STORAGE_ DATA_ SLOT_ IS_ RESERVED - For faucets the FAUCET_STORAGE_DATA_SLOT storage slot is reserved and can not be used with set_account_item
- ERR_
FAUCET_ TOTAL_ ISSUANCE_ PROC_ CAN_ ONLY_ BE_ CALLED_ ON_ FUNGIBLE_ FAUCET - The faucet_get_total_fungible_asset_issuance procedure can only be called on a fungible faucet
- ERR_
FOREIGN_ ACCOUNT_ CONTEXT_ AGAINST_ NATIVE_ ACCOUNT - Creation of a foreign context against the native account is forbidden
- ERR_
FOREIGN_ ACCOUNT_ ID_ IS_ ZERO - ID of the provided foreign account equals zero.
- ERR_
FOREIGN_ ACCOUNT_ INVALID - State of the current foreign account is invalid.
- ERR_
FOREIGN_ ACCOUNT_ MAX_ NUMBER_ EXCEEDED - Maximum allowed number of foreign account to be loaded (64) was exceeded.
- ERR_
FUNGIBLE_ ASSET_ AMOUNT_ EXCEEDS_ MAX_ ALLOWED_ AMOUNT - Fungible asset build operation called with amount that exceeds the maximum allowed asset amount
- ERR_
FUNGIBLE_ ASSET_ DISTRIBUTE_ WOULD_ CAUSE_ MAX_ SUPPLY_ TO_ BE_ EXCEEDED - Distribute would cause the maximum supply to be exceeded
- ERR_
FUNGIBLE_ ASSET_ FAUCET_ IS_ NOT_ ORIGIN - The origin of the fungible asset is not this faucet
- ERR_
FUNGIBLE_ ASSET_ FORMAT_ ELEMENT_ ONE_ MUST_ BE_ ZERO - Malformed fungible asset:
ASSET[1]must be 0 - ERR_
FUNGIBLE_ ASSET_ FORMAT_ ELEMENT_ TWO_ AND_ THREE_ MUST_ BE_ FUNGIBLE_ FAUCET_ ID - Malformed fungible asset:
ASSET[2]andASSET[3]must be a valid fungible faucet id - ERR_
FUNGIBLE_ ASSET_ FORMAT_ ELEMENT_ ZERO_ MUST_ BE_ WITHIN_ LIMITS - Malformed fungible asset:
ASSET[0]exceeds the maximum allowed amount - ERR_
FUNGIBLE_ ASSET_ PROVIDED_ FAUCET_ ID_ IS_ INVALID - Failed to build the fungible asset because the provided faucet id is not from a fungible faucet
- ERR_
KERNEL_ PROCEDURE_ OFFSET_ OUT_ OF_ BOUNDS - Provided kernel procedure offset is out of bounds
- ERR_
NON_ FUNGIBLE_ ASSET_ ALREADY_ EXISTS - Non-fungible asset that already exists in the note cannot be added again
- ERR_
NON_ FUNGIBLE_ ASSET_ FAUCET_ IS_ NOT_ ORIGIN - The origin of the non-fungible asset is not this faucet
- ERR_
NON_ FUNGIBLE_ ASSET_ FORMAT_ ELEMENT_ THREE_ MUST_ BE_ FUNGIBLE_ FAUCET_ ID - Malformed non-fungible asset:
ASSET[3]is not a valid non-fungible faucet id - ERR_
NON_ FUNGIBLE_ ASSET_ FORMAT_ MOST_ SIGNIFICANT_ BIT_ MUST_ BE_ ZERO - Malformed non-fungible asset: the most significant bit must be 0
- ERR_
NON_ FUNGIBLE_ ASSET_ PROVIDED_ FAUCET_ ID_ IS_ INVALID - Failed to build the non-fungible asset because the provided faucet id is not from a non-fungible faucet
- ERR_
NOTE_ ATTEMPT_ TO_ ACCESS_ NOTE_ ASSETS_ FROM_ INCORRECT_ CONTEXT - Attempted to access note assets from incorrect context
- ERR_
NOTE_ ATTEMPT_ TO_ ACCESS_ NOTE_ INPUTS_ FROM_ INCORRECT_ CONTEXT - Attempted to access note inputs from incorrect context
- ERR_
NOTE_ ATTEMPT_ TO_ ACCESS_ NOTE_ SENDER_ FROM_ INCORRECT_ CONTEXT - Attempted to access note sender from incorrect context
- ERR_
NOTE_ DATA_ DOES_ NOT_ MATCH_ COMMITMENT - Note data does not match the commitment
- ERR_
NOTE_ FUNGIBLE_ MAX_ AMOUNT_ EXCEEDED - Adding a fungible asset to a note cannot exceed the max_amount of 9223372036854775807
- ERR_
NOTE_ INVALID_ INDEX - Failed to find note at the given index; index must be within [0, num_of_notes]
- ERR_
NOTE_ INVALID_ NOTE_ TYPE_ FOR_ NOTE_ TAG_ PREFIX - Invalid note type for the given note tag prefix
- ERR_
NOTE_ INVALID_ TYPE - Invalid note type
- ERR_
NOTE_ NUM_ OF_ ASSETS_ EXCEED_ LIMIT - Number of assets in a note exceed 255
- ERR_
NOTE_ TAG_ MUST_ BE_ U32 - The note’s tag must fit into a u32 so the 32 most significant bits must be zero.
- ERR_
PROLOGUE_ EXISTING_ ACCOUNT_ MUST_ HAVE_ NON_ ZERO_ NONCE - Existing accounts must have a non-zero nonce
- ERR_
PROLOGUE_ GLOBAL_ INPUTS_ PROVIDED_ DO_ NOT_ MATCH_ BLOCK_ COMMITMENT - The provided global inputs do not match the block commitment
- ERR_
PROLOGUE_ GLOBAL_ INPUTS_ PROVIDED_ DO_ NOT_ MATCH_ BLOCK_ NUMBER_ COMMITMENT - The provided global inputs do not match the block number commitment
- ERR_
PROLOGUE_ INPUT_ NOTES_ COMMITMENT_ MISMATCH - Note commitment computed from the input note data does not match given note commitment
- ERR_
PROLOGUE_ MISMATCH_ OF_ ACCOUNT_ IDS_ FROM_ GLOBAL_ INPUTS_ AND_ ADVICE_ PROVIDER - Account IDs provided via global inputs and advice provider do not match
- ERR_
PROLOGUE_ MISMATCH_ OF_ REFERENCE_ BLOCK_ MMR_ AND_ NOTE_ AUTHENTICATION_ MMR - Reference block MMR and note’s authentication MMR must match
- ERR_
PROLOGUE_ NEW_ ACCOUNT_ NONCE_ MUST_ BE_ ZERO - New account must have a zero nonce
- ERR_
PROLOGUE_ NEW_ ACCOUNT_ VAULT_ MUST_ BE_ EMPTY - New account must have an empty vault
- ERR_
PROLOGUE_ NEW_ FUNGIBLE_ FAUCET_ RESERVED_ SLOT_ INVALID_ TYPE - Reserved slot for new fungible faucet has an invalid type
- ERR_
PROLOGUE_ NEW_ FUNGIBLE_ FAUCET_ RESERVED_ SLOT_ MUST_ BE_ EMPTY - Reserved slot for new fungible faucet is not empty
- ERR_
PROLOGUE_ NEW_ NON_ FUNGIBLE_ FAUCET_ RESERVED_ SLOT_ INVALID_ TYPE - Reserved slot for new non-fungible faucet has an invalid type
- ERR_
PROLOGUE_ NEW_ NON_ FUNGIBLE_ FAUCET_ RESERVED_ SLOT_ MUST_ BE_ VALID_ EMPY_ SMT - Reserved slot for non-fungible faucet is not a valid empty SMT
- ERR_
PROLOGUE_ NUMBER_ OF_ INPUT_ NOTES_ EXCEEDS_ LIMIT - Number of input notes exceeds the kernel’s maximum limit of 1024
- ERR_
PROLOGUE_ NUMBER_ OF_ NOTE_ ASSETS_ EXCEEDS_ LIMIT - Number of note assets exceeds the maximum limit of 256
- ERR_
PROLOGUE_ NUMBER_ OF_ NOTE_ INPUTS_ EXCEEDED_ LIMIT - Number of note inputs exceeded the maximum limit of 128
- ERR_
PROLOGUE_ PROVIDED_ ACCOUNT_ DATA_ DOES_ NOT_ MATCH_ ON_ CHAIN_ COMMITMENT - Account data provided does not match the commitment recorded on-chain
- ERR_
PROLOGUE_ PROVIDED_ INPUT_ ASSETS_ INFO_ DOES_ NOT_ MATCH_ ITS_ COMMITMENT - Provided info about assets of an input does not match its commitment
- ERR_
TX_ INVALID_ EXPIRATION_ DELTA - Transaction expiration block delta must be within 0x1 and 0xFFFF.
- ERR_
TX_ NUMBER_ OF_ OUTPUT_ NOTES_ EXCEEDS_ LIMIT - Number of output notes in the transaction exceeds the maximum limit of 1024
- ERR_
TX_ TRANSACTION_ SCRIPT_ IS_ MISSING - The transaction script is missing.
- ERR_
VAULT_ ADD_ FUNGIBLE_ ASSET_ FAILED_ INITIAL_ VALUE_ INVALID - Failed to add fungible asset to the asset vault due to the initial value being invalid
- ERR_
VAULT_ FUNGIBLE_ ASSET_ AMOUNT_ LESS_ THAN_ AMOUNT_ TO_ WITHDRAW - Failed to remove the fungible asset from the vault since the amount of the asset in the vault is less than the amount to remove
- ERR_
VAULT_ FUNGIBLE_ MAX_ AMOUNT_ EXCEEDED - Adding the fungible asset to the vault would exceed the max amount of 9223372036854775807
- ERR_
VAULT_ GET_ BALANCE_ PROC_ CAN_ ONLY_ BE_ CALLED_ ON_ FUNGIBLE_ FAUCET - The get_balance procedure can only be called on a fungible faucet
- ERR_
VAULT_ HAS_ NON_ FUNGIBLE_ ASSET_ PROC_ CAN_ BE_ CALLED_ ONLY_ WITH_ NON_ FUNGIBLE_ ASSET - The has_non_fungible_asset procedure can only be called on a non-fungible faucet
- ERR_
VAULT_ NON_ FUNGIBLE_ ASSET_ ALREADY_ EXISTS - The non-fungible asset already exists in the asset vault
- ERR_
VAULT_ NON_ FUNGIBLE_ ASSET_ TO_ REMOVE_ NOT_ FOUND - Failed to remove non-existent non-fungible asset from the vault
- ERR_
VAULT_ REMOVE_ FUNGIBLE_ ASSET_ FAILED_ INITIAL_ VALUE_ INVALID - Failed to remove fungible asset from the asset vault due to the initial value being invalid
- TX_
KERNEL_ ERRORS