v0.4.8-pre.004

This commit is contained in:
2026-08-05 17:46:56 +02:00
parent de1062b2d3
commit 4c13d7ac54
15 changed files with 1505 additions and 128 deletions

View File

@@ -0,0 +1,96 @@
{
"schema_version": 1,
"milestone": "0.4.8-pre.004",
"surface_code": "metadata.solana_program_metadata",
"program_id": "ProgM6JCCvbYkfKqJYHePx4xxSUSqJp7rh8Lyv7nk7S",
"official_contract": {
"idl": "idls/metadata.ProgM6JCCvbYkfKqJYHePx4xxSUSqJp7rh8Lyv7nk7S.solana_program_metadata.V0_0_0.from_github_solana_program.json",
"repository": "solana-program/program-metadata",
"account_data_max_bytes": 10485760
},
"accounts": [
{
"name": "empty",
"discriminator": 0,
"status": "rejected_uninitialized"
},
{
"name": "buffer",
"discriminator": 1,
"header_bytes": 96,
"minimum_bytes": 96,
"fields": {
"program": "zeroable_pubkey",
"authority": "zeroable_pubkey",
"canonical": "nonzero_u8_is_true",
"seed_bytes": 16,
"padding_bytes": 14,
"data": "all_allocated_bytes_after_header"
},
"pda_validation": "not_claimed_after_mutable_authority_or_keypair_allocation"
},
{
"name": "metadata",
"discriminator": 2,
"header_bytes": 96,
"minimum_bytes": 96,
"fields": {
"program": "pubkey",
"authority": "zeroable_pubkey",
"mutable": "nonzero_u8_is_true",
"canonical": "nonzero_u8_is_true",
"seed_bytes": 16,
"encoding": "closed_u8_enum",
"compression": "closed_u8_enum",
"format": "closed_u8_enum",
"data_source": "closed_u8_enum",
"data_length": "u32_little_endian",
"padding_bytes": 5
},
"pda_validation": {
"canonical": [
"program",
"seed"
],
"non_canonical": [
"program",
"authority",
"seed"
]
},
"trailing_bytes": "accepted_as_allocated_capacity_after_data_length"
}
],
"data_sources": [
{
"name": "direct",
"discriminator": 0,
"length": "nonzero_bounded_by_allocated_account_data",
"projection": "raw_on_chain_bytes"
},
{
"name": "url",
"discriminator": 1,
"length": "nonzero_bounded_by_allocated_account_data",
"projection": "utf8_on_chain_string_without_fetch"
},
{
"name": "external",
"discriminator": 2,
"length": "exactly_40_bytes",
"projection": "address_offset_zeroable_length_without_account_read"
}
],
"failure_policy": {
"foreign_owner": "error",
"empty_data": "error",
"unknown_discriminator": "error",
"truncated_header": "error",
"logical_data_exceeds_allocation": "error",
"unknown_closed_enum": "error",
"invalid_url_utf8": "error",
"missing_non_canonical_authority": "error",
"invalid_metadata_pda": "error",
"off_chain_resolution": "forbidden"
}
}