Files
khadhroony-bot3/docs/METAPLEX_TOKEN_METADATA_MATRIX.json
2026-07-23 16:37:12 +02:00

1613 lines
47 KiB
JSON

{
"schema_version": 2,
"milestone": "0.4.7-pre.025",
"surface_code": "metadata_metaplex_token_metadata",
"program_id": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
"program_family": "independent_metaplex_foundation_program",
"decode_status": "instruction_inventory_exhaustive_0_through_57_and_account_key_inventory_exhaustive_0_through_14",
"runtime_registration": "not_enabled_in_pre_008",
"official_sources": [
{
"kind": "repository",
"value": "metaplex-foundation/mpl-token-metadata",
"ref": "main",
"status": "verified_2026-07-20"
},
{
"kind": "rust_sdk",
"value": "mpl-token-metadata",
"version_requirement": "^5.1",
"observed_release": "5.1.1"
},
{
"kind": "idl",
"value": "idls/token_metadata.json",
"idl_version": "1.14.0",
"sha": "5df4a24f62c2743125be096cc174680790c92c18"
},
{
"kind": "generated_instruction_inventory",
"value": "clients/rust/src/generated/instructions/mod.rs",
"sha": "3c42eec629f82e44ba690a7c4bd2177cc78f1d49"
}
],
"wire_contract": {
"instruction_discriminator": "u8",
"argument_encoding": "borsh",
"unknown_discriminator": "unsupported",
"truncated_payload": "failed",
"non_canonical_suffix": "pending_per_variant",
"foreign_program_id": "incompatible"
},
"bounds": {
"max_instruction_bytes": 65536,
"max_accounts": 256,
"max_string_bytes": 4096,
"max_uri_bytes": 4096,
"max_creators": 64,
"max_authorization_payload_bytes": 65536,
"max_diagnostics": 64,
"instruction_payload_bytes_max": 16384,
"instruction_accounts_max": 64,
"name_bytes_max": 32,
"symbol_bytes_max": 10,
"uri_bytes_max": 200,
"creators_max": 5,
"seller_fee_basis_points_max": 10000
},
"current_sdk_instruction_modules": [
"approve_collection_authority",
"approve_use_authority",
"bubblegum_set_collection_size",
"burn",
"burn_edition_nft",
"burn_nft",
"burn_v1",
"close_accounts",
"close_escrow_account",
"collect",
"convert_master_edition_v1_to_v2",
"create",
"create_escrow_account",
"create_master_edition_v3",
"create_metadata_account_v3",
"create_v1",
"delegate",
"delegate_authority_item_v1",
"delegate_collection_item_v1",
"delegate_collection_v1",
"delegate_data_item_v1",
"delegate_data_v1",
"delegate_locked_transfer_v1",
"delegate_print_delegate_v1",
"delegate_programmable_config_item_v1",
"delegate_programmable_config_v1",
"delegate_sale_v1",
"delegate_staking_v1",
"delegate_standard_v1",
"delegate_transfer_v1",
"delegate_utility_v1",
"deprecated_mint_new_edition_from_master_edition_via_printing_token",
"freeze_delegated_account",
"lock",
"lock_v1",
"migrate",
"mint",
"mint_new_edition_from_master_edition_via_token",
"mint_new_edition_from_master_edition_via_vault_proxy",
"mint_v1",
"print",
"print_v1",
"print_v2",
"puff_metadata",
"remove_creator_verification",
"resize",
"revoke",
"revoke_authority_item_v1",
"revoke_collection_authority",
"revoke_collection_item_v1",
"revoke_collection_v1",
"revoke_data_item_v1",
"revoke_data_v1",
"revoke_locked_transfer_v1",
"revoke_migration_v1",
"revoke_print_delegate_v1",
"revoke_programmable_config_item_v1",
"revoke_programmable_config_v1",
"revoke_sale_v1",
"revoke_staking_v1",
"revoke_standard_v1",
"revoke_transfer_v1",
"revoke_use_authority",
"revoke_utility_v1",
"set_and_verify_collection",
"set_and_verify_sized_collection_item",
"set_collection_size",
"set_token_standard",
"sign_metadata",
"thaw_delegated_account",
"transfer",
"transfer_out_of_escrow",
"transfer_v1",
"unlock",
"unlock_v1",
"unverify",
"unverify_collection",
"unverify_collection_v1",
"unverify_creator_v1",
"unverify_sized_collection_item",
"update",
"update_as_authority_item_delegate_v2",
"update_as_collection_delegate_v2",
"update_as_collection_item_delegate_v2",
"update_as_data_delegate_v2",
"update_as_data_item_delegate_v2",
"update_as_programmable_config_delegate_v2",
"update_as_programmable_config_item_delegate_v2",
"update_as_update_authority_v2",
"update_metadata_account_v2",
"update_primary_sale_happened_via_token",
"update_v1",
"use",
"use_v1",
"utilize",
"verify",
"verify_collection",
"verify_collection_v1",
"verify_creator_v1",
"verify_sized_collection_item"
],
"historical_idl": {
"instruction_count": 58,
"discriminator_range": "0..57",
"status": "names_accounts_arguments_and_legacy_optional_rules_pending_exhaustive_extraction"
},
"pda_families": [
{
"code": "metadata",
"seed_shape": [
"metadata",
"program_id",
"mint"
],
"status": "implemented_pre_025"
},
{
"code": "edition_or_master_edition",
"seed_shape": [
"metadata",
"program_id",
"mint",
"edition"
],
"status": "implemented_pre_026"
},
{
"code": "edition_marker",
"status": "implemented_pre_027"
},
{
"code": "collection_authority_record",
"status": "implemented_pre_029"
},
{
"code": "use_authority_record",
"status": "implemented_pre_029"
},
{
"code": "token_record",
"status": "implemented_pre_028"
},
{
"code": "metadata_delegate_record",
"status": "implemented_pre_029",
"seeds": [
"metadata",
"program_id",
"mint",
"metadata_delegate_role_seed",
"update_authority",
"delegate"
]
},
{
"code": "token_owned_escrow",
"status": "implemented_pre_030",
"token_owner_seeds": [
"metadata",
"program_id",
"base_token",
"0",
"escrow"
],
"creator_seeds": [
"metadata",
"program_id",
"base_token",
"1",
"creator",
"escrow"
]
},
{
"code": "reservation_list_historical",
"status": "implemented_pre_031"
},
{
"code": "holder_delegate_record",
"status": "implemented_pre_029",
"seeds": [
"metadata",
"program_id",
"mint",
"holder_delegate_role_seed",
"owner",
"delegate"
]
}
],
"account_layouts": [
{
"name": "Metadata",
"status": "implemented_pre_025"
},
{
"name": "MasterEditionV1",
"status": "implemented_pre_026_historical_decode_only"
},
{
"name": "MasterEditionV2",
"status": "implemented_pre_026"
},
{
"name": "Edition",
"status": "implemented_pre_026"
},
{
"name": "EditionMarker",
"status": "implemented_pre_027"
},
{
"name": "EditionMarkerV2",
"status": "implemented_pre_027_experimental"
},
{
"name": "TokenRecord",
"status": "implemented_pre_028"
},
{
"name": "MetadataDelegateRecord",
"status": "implemented_pre_029"
},
{
"name": "HolderDelegateRecord",
"status": "implemented_pre_029"
},
{
"name": "CollectionAuthorityRecord",
"status": "implemented_pre_029"
},
{
"name": "UseAuthorityRecord",
"status": "implemented_pre_029"
},
{
"name": "TokenOwnedEscrow",
"status": "implemented_pre_030"
},
{
"name": "ReservationListV1V2",
"status": "implemented_pre_031_decode_only",
"max_entries": 200,
"v1_max_bytes": 6949,
"v2_max_bytes": 9749,
"pda_seeds": [
"metadata",
"program_id",
"master_edition",
"reservation",
"resource"
],
"execution": "historical_never_execute"
}
],
"provenance_boundaries": [
"metaplex_token_metadata",
"token_2022_embedded_metadata",
"metaplex_core",
"metaplex_bubblegum"
],
"external_json": {
"enabled": false,
"canonical_replay_dependency": false,
"status": "contract_reserved",
"ssrf_policy": "required_before_activation"
},
"execution": {
"enabled": false,
"reason": "builders_accounts_preconditions_and_postconditions_not_yet_exhaustively_proved"
},
"next_proofs": [
"materialize Metadata facts with one canonical owner per fact and no duplication",
"materialize historical account state with explicit lifecycle and provenance"
],
"implemented_instruction_groups": [
{
"pre_release": "0.4.7-pre.002",
"group": "metadata_create_update_v2_v3",
"instructions": [
{
"name": "UpdateMetadataAccountV2",
"code": "update_metadata_account_v2",
"discriminator": 15,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
},
{
"name": "CreateMetadataAccountV3",
"code": "create_metadata_account_v3",
"discriminator": 33,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
}
],
"wire": "official_borsh_mpl_token_metadata_5_1_1",
"runtime_registration": "pending_full_group_validation"
},
{
"pre_release": "0.4.7-pre.003",
"group": "collection_verification_legacy_current",
"instructions": [
{
"name": "VerifyCollection",
"code": "verify_collection",
"discriminator": 18,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
},
{
"name": "UnverifyCollection",
"code": "unverify_collection",
"discriminator": 22,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
},
{
"name": "SetAndVerifyCollection",
"code": "set_and_verify_collection",
"discriminator": 25,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
}
],
"wire": "single_u8_discriminator_official_mpl_token_metadata_5_1_1",
"account_contract": "ordered_required_accounts_plus_optional_collection_authority_record_and_bounded_remaining_accounts",
"runtime_registration": "pending_broader_decoder_validation"
},
{
"pre_release": "0.4.7-pre.004",
"group": "sized_collection_item_verification",
"instructions": [
{
"name": "VerifySizedCollectionItem",
"code": "verify_sized_collection_item",
"discriminator": 30,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
},
{
"name": "UnverifySizedCollectionItem",
"code": "unverify_sized_collection_item",
"discriminator": 31,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
},
{
"name": "SetAndVerifySizedCollectionItem",
"code": "set_and_verify_sized_collection_item",
"discriminator": 32,
"status": "current",
"decode": "implemented",
"materialize": "pending",
"execute": "pending"
}
],
"wire": "single_u8_discriminator_official_mpl_token_metadata_5_1_1",
"account_contract": "ordered_required_accounts_plus_optional_collection_authority_record; collection metadata is writable and collection authority is readonly signer",
"runtime_registration": "pending_broader_decoder_validation"
},
{
"pre_release": "0.4.7-pre.005",
"group": "collection_authority_administration",
"instructions": [
{
"name": "ApproveCollectionAuthority",
"code": "approve_collection_authority",
"discriminator": 23,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 7,
"optional_accounts": [
"rent"
],
"defaulted_accounts": [
"system_program"
],
"execution_policy": "future_current_surface"
},
{
"name": "RevokeCollectionAuthority",
"code": "revoke_collection_authority",
"discriminator": 24,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 5,
"optional_accounts": [],
"execution_policy": "future_current_surface"
}
],
"provenance": "mpl-token-metadata 5.1.1 generated builders",
"materialization": "reserved_for_admin_and_lifecycle_pre_release"
},
{
"pre_release": "0.4.7-pre.006",
"group": "use_authority_and_utilization",
"instructions": [
{
"name": "Utilize",
"code": "utilize",
"discriminator": 19,
"status": "current",
"wire": "u8 discriminator + u64 number_of_uses",
"required_accounts": 9,
"optional_accounts": [
"use_authority_record",
"burner"
],
"execution_policy": "future_current_surface"
},
{
"name": "ApproveUseAuthority",
"code": "approve_use_authority",
"discriminator": 20,
"status": "current",
"wire": "u8 discriminator + u64 number_of_uses",
"required_accounts": 10,
"optional_accounts": [
"rent"
],
"defaulted_accounts": [
"token_program",
"system_program"
],
"execution_policy": "future_current_surface"
},
{
"name": "RevokeUseAuthority",
"code": "revoke_use_authority",
"discriminator": 21,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 8,
"optional_accounts": [
"rent"
],
"defaulted_accounts": [
"token_program",
"system_program"
],
"execution_policy": "future_current_surface"
}
],
"provenance": "mpl-token-metadata 5.1.1 generated builders",
"materialization": "reserved_for_metadata_admin_lifecycle_and_risk_audit"
},
{
"pre_release": "0.4.7-pre.007",
"group": "creator_signature_and_primary_sale",
"instructions": [
{
"name": "UpdatePrimarySaleHappenedViaToken",
"code": "update_primary_sale_happened_via_token",
"discriminator": 4,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 3,
"execution_policy": "future_current_surface"
},
{
"name": "SignMetadata",
"code": "sign_metadata",
"discriminator": 7,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 2,
"execution_policy": "future_current_surface"
}
],
"provenance": "mpl-token-metadata 5.1.1 generated builders",
"materialization": "reserved_for_metadata_and_creator_state_pre_release"
},
{
"pre_release": "0.4.7-pre.008",
"group": "metadata_normalization_and_creator_unverification",
"instructions": [
{
"name": "PuffMetadata",
"code": "puff_metadata",
"discriminator": 14,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 1,
"execution_policy": "future_current_surface"
},
{
"name": "RemoveCreatorVerification",
"code": "remove_creator_verification",
"discriminator": 28,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 2,
"execution_policy": "future_current_surface"
},
{
"name": "SetTokenStandard",
"code": "set_token_standard",
"discriminator": 35,
"status": "current",
"wire": "u8 discriminator only",
"required_accounts": 3,
"optional_accounts": [
"edition"
],
"execution_policy": "future_current_surface"
}
],
"provenance": "mpl-token-metadata 5.1.1 generated builders",
"materialization": "reserved_for_metadata_creator_and_asset_classification_pre_release"
},
{
"pre_release": "0.4.7-pre.009",
"group": "historical_metadata_create_v2",
"instructions": [
{
"name": "CreateMetadataAccountV2",
"code": "create_metadata_account_v2",
"discriminator": 16,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
}
],
"wire": "u8 discriminator + historical DataV2 + bool is_mutable using Borsh 0.10",
"account_contract": "metadata, mint, mint_authority signer, payer writable signer, update_authority, system_program, optional rent",
"provenance": "historical Metaplex Token Metadata instruction surface; current SDK DataV2 type reused only for exact compatible wire fields",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.010",
"group": "historical_metadata_v1_create_update",
"instructions": [
{
"name": "CreateMetadataAccount",
"code": "create_metadata_account",
"discriminator": 0,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
},
{
"name": "UpdateMetadataAccount",
"code": "update_metadata_account",
"discriminator": 1,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
}
],
"wire": "u8 discriminator + historical Data/Option<Data> fields using Borsh 0.10",
"provenance": "historical generated Metaplex Token Metadata surface",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.011",
"group": "master_edition_creation_and_v1_conversion",
"instructions": [
{
"name": "CreateMasterEditionV3",
"code": "create_master_edition_v3",
"discriminator": 17,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "ConvertMasterEditionV1ToV2",
"code": "convert_master_edition_v1_to_v2",
"discriminator": 12,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
}
],
"wire": "CreateMasterEditionV3: u8 discriminator + Option<u64> max_supply; conversion: u8 discriminator only",
"account_contract": "exact generated Rust SDK account order and signer/writable flags; optional rent accepted for CreateMasterEditionV3",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.012",
"group": "printed_edition_mint_token_and_vault_proxy",
"instructions": [
{
"name": "MintNewEditionFromMasterEditionViaToken",
"code": "mint_new_edition_from_master_edition_via_token",
"discriminator": 11,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "MintNewEditionFromMasterEditionViaVaultProxy",
"code": "mint_new_edition_from_master_edition_via_vault_proxy",
"discriminator": 13,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
}
],
"wire": "u8 discriminator + MintNewEditionFromMasterEditionViaTokenArgs { edition: u64 }",
"account_contract": "exact generated Rust SDK account order and signer/writable flags; optional rent accepted after the required program accounts",
"edition_marker_contract": "edition marker PDA is writable and corresponds to floor(edition / EDITION_MARKER_BIT_SIZE); PDA derivation validation remains planned with account decoding",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.013",
"group": "collection_size_and_bubblegum_bridge",
"instructions": [
{
"name": "SetCollectionSize",
"code": "set_collection_size",
"discriminator": 34,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "BubblegumSetCollectionSize",
"code": "bubblegum_set_collection_size",
"discriminator": 36,
"status": "bridge_current",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_until_bubblegum_boundary_proof"
}
],
"wire": "u8 discriminator + SetCollectionSizeArgs { size: u64 }",
"account_contract": "exact generated Rust SDK account order and signer/writable flags; optional collection authority record accepted",
"provenance_boundary": "BubblegumSetCollectionSize is decoded as a Token Metadata bridge instruction and does not claim complete Bubblegum coverage",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.014",
"group": "programmable_delegate_and_revoke",
"instructions": [
{
"name": "Delegate",
"code": "delegate",
"discriminator": 44,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_and_authorization_rules_proof"
},
{
"name": "Revoke",
"code": "revoke",
"discriminator": 45,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_and_authorization_rules_proof"
}
],
"wire": "u8 discriminator + DelegateArgs or RevokeArgs Borsh enum; DelegateArgs may contain optional AuthorizationData",
"account_contract": "14 positional accounts with Metaplex program placeholders for absent optional accounts; exact signer/writable invariants on authority, payer, metadata and optional writable records",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.015",
"group": "programmable_transfer_lock_unlock_burn_close",
"instructions": [
{
"name": "Burn",
"code": "burn",
"discriminator": 41,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "Lock",
"code": "lock",
"discriminator": 46,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "Unlock",
"code": "unlock",
"discriminator": 47,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "Transfer",
"code": "transfer",
"discriminator": 49,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "CloseAccounts",
"code": "close_accounts",
"discriminator": 57,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
}
],
"wire": "Borsh enums TransferArgs/LockArgs/UnlockArgs/BurnArgs; CloseAccounts discriminator only",
"account_contract": "exact generated Rust SDK positional accounts and signer/writable invariants; Metaplex program placeholders accepted for absent optional programmable accounts",
"runtime_registration": "pending_full_decoder_and_account_validation"
},
{
"pre_release": "0.4.7-pre.016",
"group": "legacy_delegated_freeze_thaw_and_inventory_audit",
"instructions": [
{
"name": "FreezeDelegatedAccount",
"code": "freeze_delegated_account",
"discriminator": 26,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
},
{
"name": "ThawDelegatedAccount",
"code": "thaw_delegated_account",
"discriminator": 27,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
}
],
"wire": "u8 discriminator only",
"account_contract": "delegate writable signer, token account writable, edition/mint/token program readonly",
"inventory_audit": "official generated Rust SDK instruction module index audited; remaining modules are tracked before account-state decoding",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.017",
"group": "legacy_nft_burn_and_printing_token_mint",
"instructions": [
{
"name": "BurnNft",
"code": "burn_nft",
"discriminator": 29,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
},
{
"name": "BurnEditionNft",
"code": "burn_edition_nft",
"discriminator": 37,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
},
{
"name": "DeprecatedMintNewEditionFromMasterEditionViaPrintingToken",
"code": "deprecated_mint_new_edition_from_master_edition_via_printing_token",
"discriminator": 3,
"status": "deprecated_historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden_historical"
}
],
"wire": "u8 discriminator only",
"account_contract": "exact generated Rust SDK positional signer/writable contracts; BurnNft collection metadata, deprecated printing-token reservation list are optional trailing accounts",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.018",
"group": "escrow_transfer_and_collect",
"instructions": [
{
"name": "CreateEscrowAccount",
"code": "create_escrow_account",
"discriminator": 38,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "CloseEscrowAccount",
"code": "close_escrow_account",
"discriminator": 39,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "TransferOutOfEscrow",
"code": "transfer_out_of_escrow",
"discriminator": 40,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "Collect",
"code": "collect",
"discriminator": 54,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_authority_proof"
}
],
"wire": "Create/Close/Collect discriminator only; TransferOutOfEscrow discriminator + amount u64",
"account_contract": "exact generated Rust SDK signer/writable contracts with optional trailing authority on create and transfer",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.019",
"group": "modern_create_wrapper",
"instructions": [
{
"name": "Create",
"code": "create",
"discriminator": 42,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
}
],
"wire": "u8 discriminator + CreateArgs enum",
"account_contract": "nine positional accounts with Metaplex placeholders for optional master edition and SPL Token Program",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.020",
"group": "modern_mint_wrapper",
"instructions": [
{
"name": "Mint",
"code": "mint",
"discriminator": 43,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
}
],
"wire": "u8 discriminator + MintArgs::V1 { amount: u64, authorization_data: Option<AuthorizationData> }",
"account_contract": "fifteen positional accounts with Metaplex placeholders for optional token owner, master edition, token record, delegate record and authorization-rule accounts",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.021",
"group": "modern_print_wrapper",
"instructions": [
{
"name": "Print",
"code": "print",
"discriminator": 55,
"variants": [
"V1",
"V2"
],
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
}
],
"wire": "u8 discriminator + PrintArgs::{V1,V2} { edition: u64 }",
"account_contract": "eighteen positional accounts with a Metaplex placeholder or writable Token Record at position 6",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.022",
"group": "modern_update_wrapper",
"instructions": [
{
"name": "Update",
"code": "update",
"discriminator": 50,
"variants": [
"V1",
"AsUpdateAuthorityV2",
"AsAuthorityItemDelegateV2",
"AsCollectionDelegateV2",
"AsDataDelegateV2",
"AsProgrammableConfigDelegateV2",
"AsDataItemDelegateV2",
"AsCollectionItemDelegateV2",
"AsProgrammableConfigItemDelegateV2"
],
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
}
],
"wire": "u8 discriminator + UpdateArgs enum",
"account_contract": "eleven positional accounts with Metaplex placeholders for optional delegate record, token, edition and authorization-rule accounts",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.023",
"group": "modern_use_verify_unverify_wrappers",
"instructions": [
{
"name": "Use",
"code": "use",
"discriminator": 51,
"variants": [
"V1"
],
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "Verify",
"code": "verify",
"discriminator": 52,
"variants": [
"CreatorV1",
"CollectionV1"
],
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "Unverify",
"code": "unverify",
"discriminator": 53,
"variants": [
"CreatorV1",
"CollectionV1"
],
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
}
],
"wire": "u8 discriminator + UseArgs or VerificationArgs enum",
"account_contract": "twelve positional accounts for Use; eight positional accounts for Verify/Unverify, with Metaplex placeholders for optional accounts",
"runtime_registration": "pending_full_decoder_validation"
},
{
"pre_release": "0.4.7-pre.024",
"group": "final_instruction_inventory_resize_migrate_and_legacy_gaps",
"instructions": [
{
"name": "DeprecatedCreateMasterEdition",
"code": "deprecated_create_master_edition",
"discriminator": 2,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden"
},
{
"name": "DeprecatedSetReservationList",
"code": "deprecated_set_reservation_list",
"discriminator": 5,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden"
},
{
"name": "DeprecatedCreateReservationList",
"code": "deprecated_create_reservation_list",
"discriminator": 6,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden"
},
{
"name": "DeprecatedMintPrintingTokensViaToken",
"code": "deprecated_mint_printing_tokens_via_token",
"discriminator": 8,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden"
},
{
"name": "DeprecatedMintPrintingTokens",
"code": "deprecated_mint_printing_tokens",
"discriminator": 9,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden"
},
{
"name": "CreateMasterEdition",
"code": "create_master_edition",
"discriminator": 10,
"status": "historical",
"decode": "implemented",
"materialize": "planned",
"execute": "forbidden"
},
{
"name": "Migrate",
"code": "migrate",
"discriminator": 48,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
},
{
"name": "Resize",
"code": "resize",
"discriminator": 56,
"status": "current",
"decode": "implemented",
"materialize": "planned",
"execute": "planned_after_stateful_proof"
}
],
"wire": "u8 discriminator only",
"account_contract": "exact IDL/generated positional signer and writable flags",
"runtime_registration": "pending_full_decoder_validation",
"inventory_proof": {
"covered_discriminators": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
53,
54,
55,
56,
57
],
"missing_discriminators": [],
"coverage_entries": 58
}
}
],
"implemented_account_groups": [
{
"group": "metadata_account_v1",
"layouts": [
"MetadataV1"
],
"owner_validation": "exact_metaplex_token_metadata_program",
"pda_seeds": [
"metadata",
"program_id",
"mint"
],
"bounds": {
"account_bytes": 1024,
"name_bytes": 32,
"symbol_bytes": 10,
"uri_bytes": 200,
"creators": 5
},
"runtime_registration": "not_enabled"
},
{
"group": "edition_and_master_edition_accounts",
"status": "implemented_pre_026",
"layouts": [
"DeprecatedMasterEditionV1",
"MasterEditionV2",
"EditionV1"
],
"owner": "mpl_token_metadata_program",
"pda_seeds": [
"metadata",
"program_id",
"mint",
"edition"
],
"bounds": {
"max_account_bytes": 128,
"edition_v1_exact_bytes": 41
},
"policy": {
"DeprecatedMasterEditionV1": "historical_decode_only",
"MasterEditionV2": "active_state",
"EditionV1": "active_state"
}
},
{
"group": "edition_marker_accounts",
"status": "implemented_pre_027",
"layouts": [
"EditionMarker",
"EditionMarkerV2"
],
"owner": "mpl_token_metadata_program",
"pda_seeds": {
"EditionMarker": [
"metadata",
"program_id",
"mint",
"edition",
"edition_div_248_decimal"
],
"EditionMarkerV2": [
"metadata",
"program_id",
"mint",
"edition",
"marker"
]
},
"bitmap": {
"EditionMarker": {
"ledger_bytes": 31,
"editions_per_group": 248,
"bit_order": "most_significant_bit_first"
},
"EditionMarkerV2": {
"ledger": "borsh_vec_u8",
"max_decoder_ledger_bytes": 1048576,
"bit_order": "most_significant_bit_first"
}
},
"runtime_registration": "not_enabled"
},
{
"group": "token_record_account",
"status": "implemented_pre_028",
"layouts": [
"TokenRecord"
],
"owner": "mpl_token_metadata_program",
"length": 80,
"pda_seeds": [
"metadata",
"program_id",
"mint",
"token_record",
"token_account"
],
"fields": [
"bump",
"state",
"rule_set_revision",
"delegate",
"delegate_role",
"locked_transfer"
],
"token_states": [
"Unlocked",
"Locked",
"Listed"
],
"delegate_roles": [
"Sale",
"Transfer",
"Utility",
"Staking",
"Standard",
"LockedTransfer",
"Migration"
],
"runtime_registration": "not_enabled"
},
{
"group": "delegate_and_authority_records",
"status": "implemented_pre_029",
"layouts": [
"MetadataDelegateRecord",
"HolderDelegateRecord",
"CollectionAuthorityRecord",
"UseAuthorityRecord"
],
"owner": "mpl_token_metadata_program",
"lengths": {
"MetadataDelegateRecord": 98,
"HolderDelegateRecord": 98,
"CollectionAuthorityRecord": "3_or_35",
"UseAuthorityRecord": 10
},
"pda_seeds": {
"MetadataDelegateRecord": [
"metadata",
"program_id",
"mint",
"metadata_delegate_role_seed",
"update_authority",
"delegate"
],
"HolderDelegateRecord": [
"metadata",
"program_id",
"mint",
"holder_delegate_role_seed",
"owner",
"delegate"
],
"CollectionAuthorityRecord": [
"metadata",
"program_id",
"mint",
"collection_authority",
"authority"
],
"UseAuthorityRecord": [
"metadata",
"program_id",
"mint",
"user",
"authority"
]
},
"metadata_delegate_role_seeds": [
"authority_item_delegate",
"collection_delegate",
"use_delegate",
"data_delegate",
"programmable_config_delegate",
"data_item_delegate",
"collection_item_delegate",
"prog_config_item_delegate"
],
"holder_delegate_role_seeds": [
"print_delegate"
],
"runtime_registration": "not_enabled"
},
{
"group": "token_owned_escrow_account",
"status": "implemented_pre_030",
"layouts": [
"TokenOwnedEscrow"
],
"owner": "mpl_token_metadata_program",
"lengths": {
"TokenOwner": 35,
"Creator": 67
},
"fields": [
"base_token",
"authority",
"bump"
],
"pda_seeds": {
"TokenOwner": [
"metadata",
"program_id",
"base_token",
"0",
"escrow"
],
"Creator": [
"metadata",
"program_id",
"base_token",
"1",
"creator",
"escrow"
]
},
"stateful_instruction_effects": {
"CreateEscrowAccount": "creates canonical escrow snapshot",
"CloseEscrowAccount": "closes canonical escrow snapshot",
"TransferOutOfEscrow": "changes escrow-held attribute state without changing account identity",
"Migrate": "may create or update related programmable records; correlation pending",
"Resize": "changes allocated account bytes without changing canonical identity"
},
"runtime_registration": "not_enabled"
},
{
"group": "historical_reservation_lists",
"status": "implemented_pre_031_decode_only",
"layouts": [
"ReservationListV1",
"ReservationListV2"
],
"max_entries": 200,
"padding_policy": "zero_only"
},
{
"release": "0.4.7-pre.032",
"name": "exhaustive_account_key_audit",
"status": "implemented",
"published_discriminants": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14
],
"missing": [],
"future_unknown_policy": "fail_closed"
}
],
"account_key_inventory": [
{
"key": "Uninitialized",
"discriminant": 0,
"decoder": "reject_uninitialized",
"lifecycle": "sentinel"
},
{
"key": "EditionV1",
"discriminant": 1,
"decoder": "decode_edition_account",
"lifecycle": "active"
},
{
"key": "MasterEditionV1",
"discriminant": 2,
"decoder": "decode_edition_account",
"lifecycle": "historical_materializable"
},
{
"key": "ReservationListV1",
"discriminant": 3,
"decoder": "decode_reservation_list_account",
"lifecycle": "historical_materializable"
},
{
"key": "MetadataV1",
"discriminant": 4,
"decoder": "decode_metadata_account",
"lifecycle": "active"
},
{
"key": "ReservationListV2",
"discriminant": 5,
"decoder": "decode_reservation_list_account",
"lifecycle": "historical_materializable"
},
{
"key": "MasterEditionV2",
"discriminant": 6,
"decoder": "decode_edition_account",
"lifecycle": "active"
},
{
"key": "EditionMarker",
"discriminant": 7,
"decoder": "decode_edition_marker_account",
"lifecycle": "active"
},
{
"key": "UseAuthorityRecord",
"discriminant": 8,
"decoder": "decode_use_authority_record_account",
"lifecycle": "active"
},
{
"key": "CollectionAuthorityRecord",
"discriminant": 9,
"decoder": "decode_collection_authority_record_account",
"lifecycle": "active"
},
{
"key": "TokenOwnedEscrow",
"discriminant": 10,
"decoder": "decode_token_owned_escrow_account",
"lifecycle": "active"
},
{
"key": "TokenRecord",
"discriminant": 11,
"decoder": "decode_token_record_account",
"lifecycle": "active"
},
{
"key": "MetadataDelegate",
"discriminant": 12,
"decoder": "decode_metadata_delegate_record_account",
"lifecycle": "active"
},
{
"key": "EditionMarkerV2",
"discriminant": 13,
"decoder": "decode_edition_marker_account",
"lifecycle": "active_experimental"
},
{
"key": "HolderDelegate",
"discriminant": 14,
"decoder": "decode_holder_delegate_record_account",
"lifecycle": "active"
}
],
"account_inventory_proof": {
"published_key_discriminants": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14
],
"missing_discriminants": [],
"published_variants": 15,
"decoded_layout_variants": 14,
"explicit_sentinel_rejections": 1,
"unknown_future_policy": "fail_closed_until_inventory_and_decoder_are_updated",
"status": "implemented_pre_032"
},
"canonical_account_model": {
"status": "implemented_pre_033",
"canonical_version": 1,
"stable_identity": "program_id:account_address",
"lifecycle_classes": [
"active",
"active_experimental",
"historical"
],
"materialization_policies": {
"active": "active_state",
"active_experimental": "active_state",
"historical": "historical_state"
},
"execution_policies": {
"active": "current_candidate",
"active_experimental": "experimental_candidate",
"historical": "never_historical"
},
"provenance_fields": [
"source",
"slot",
"write_version",
"signature",
"instruction_index",
"inner_instruction_index",
"committed"
],
"observation_sources": [
"live",
"replay",
"backfill",
"repair",
"synthetic"
],
"historical_policy": "historical layouts remain materializable during backfill/replay but are never executable"
},
"materialization_policy": {
"decoder_rule": "decode every identifiable historical/current/experimental published wire and account layout",
"materializer_rule": "materialize every stable proven fact including historical/deprecated state with explicit lifecycle and provenance",
"executor_rule": "execute current or experimental callable operations only; historical and obsolete operations are never executable",
"state_authority": "owned account snapshots are authoritative for final state; instruction observations do not duplicate the same state",
"implemented_pre_034": [
"MetadataV1 canonical active-state projection",
"creator/collection/uses/token-standard/programmable-config bounded payload retention",
"committed provenance requirement",
"stable account-based output identity"
]
},
"next_proof": "edition, marker, delegate, token-record, escrow and historical-state materialization without duplicates"
}