From a9561a81e8e3afe09eab72a3c530b5109059214e Mon Sep 17 00:00:00 2001 From: ananas Date: Thu, 2 Apr 2026 22:26:48 +0100 Subject: [PATCH 1/6] fix(compressed-token): relax ATA decompress signer check and add idempotency Make ATA decompress permissionless (skip owner signer check) since destinations are deterministic PDAs. Add bloom filter idempotency check for single-input ATA decompress so already-spent accounts return Ok as a no-op. Only treat NonInclusionCheckFailed as an idempotent hit, propagating all other errors. --- programs/compressed-token/program/Cargo.toml | 1 + .../compressed_token/transfer2/processor.rs | 89 ++++++++++++++++++- .../program/src/shared/token_input.rs | 28 +++--- 3 files changed, 105 insertions(+), 13 deletions(-) diff --git a/programs/compressed-token/program/Cargo.toml b/programs/compressed-token/program/Cargo.toml index 6c24b776cd..6eec39ccef 100644 --- a/programs/compressed-token/program/Cargo.toml +++ b/programs/compressed-token/program/Cargo.toml @@ -45,6 +45,7 @@ solana-security-txt = "1.1.0" light-hasher = { workspace = true } light-heap = { workspace = true, optional = true } light-compressed-account = { workspace = true, features = ["anchor"] } +light-batched-merkle-tree = { workspace = true } spl-token-2022 = { workspace = true, features = ["no-entrypoint"] } spl-pod = { workspace = true } light-zero-copy = { workspace = true, features = ["mut", "std", "derive"] } diff --git a/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs b/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs index c049ff7b21..9627be88f0 100644 --- a/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs +++ b/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs @@ -1,7 +1,10 @@ use anchor_compressed_token::ErrorCode; use anchor_lang::prelude::ProgramError; use light_array_map::ArrayMap; -use light_compressed_account::instruction_data::with_readonly::InstructionDataInvokeCpiWithReadOnly; +use light_batched_merkle_tree::errors::BatchedMerkleTreeError; +use light_compressed_account::instruction_data::with_readonly::{ + InstructionDataInvokeCpiWithReadOnly, ZInstructionDataInvokeCpiWithReadOnlyMut, +}; use light_program_profiler::profile; use light_token_interface::{ hash_cache::HashCache, @@ -256,6 +259,13 @@ fn process_with_system_program_cpi<'a>( accounts, mint_cache, )?; + let is_idempotent_ata_decompress = is_idempotent_ata_decompress(inputs); + #[allow(clippy::collapsible_if)] + if is_idempotent_ata_decompress { + if check_ata_decompress_idempotent(inputs, &cpi_instruction_struct, validated_accounts)? { + return Ok(()); + } + } // Process output compressed accounts. set_output_compressed_accounts( @@ -333,3 +343,80 @@ fn process_with_system_program_cpi<'a>( } Ok(()) } + +/// Detect idempotent associated token account decompress: +/// - exactly 1 input compressed token account with CompressedOnly extension is_ata=true +/// - 1 Decompress compression. +/// +/// Multi-input batches (including mixed ATA + non-ATA) are not idempotent. +#[inline(always)] +pub fn is_idempotent_ata_decompress(inputs: &ZCompressedTokenInstructionDataTransfer2) -> bool { + inputs.in_token_data.len() == 1 + && inputs + .compressions + .as_ref() + .is_some_and(|c| c.len() == 1 && c.iter().any(|c| c.mode.is_decompress())) + && inputs.in_tlv.as_ref().is_some_and(|tlvs| { + tlvs.iter().flatten().any(|ext| { + matches!(ext, ZExtensionInstructionData::CompressedOnly(data) if data.is_ata()) + }) + }) +} + +/// Computes the compressed account hash and checks whether the hash exists in the input queue bloom filters. +/// The account compression program inserts spent compressed accounts into the respective input queue. +/// +/// if exists in bloom filter -> exit the ata was already decompressed +/// else decompress +#[cold] +fn check_ata_decompress_idempotent( + inputs: &ZCompressedTokenInstructionDataTransfer2, + cpi_instruction_struct: &ZInstructionDataInvokeCpiWithReadOnlyMut<'_>, + validated_accounts: &Transfer2Accounts, +) -> Result { + let input_data = inputs + .in_token_data + .first() + .ok_or(ProgramError::InvalidAccountData)?; + let merkle_context = &input_data.merkle_context; + let input_account = cpi_instruction_struct + .input_compressed_accounts + .first() + .ok_or(ProgramError::InvalidAccountData)?; + + let owner_hashed = light_hasher::hash_to_field_size::hash_to_bn254_field_size_be( + &crate::LIGHT_CPI_SIGNER.program_id, + ); + let tree_account = validated_accounts + .packed_accounts + .get_u8(merkle_context.merkle_tree_pubkey_index, "idempotent: tree")?; + let merkle_tree_hashed = + light_hasher::hash_to_field_size::hash_to_bn254_field_size_be(tree_account.key()); + + let lamports: u64 = input_account.lamports.get(); + let account_hash = light_compressed_account::compressed_account::hash_with_hashed_values( + &lamports, + input_account.address.as_ref().map(|x| x.as_slice()), + Some(( + input_account.discriminator.as_slice(), + input_account.data_hash.as_slice(), + )), + &owner_hashed, + &merkle_tree_hashed, + &merkle_context.leaf_index.get(), + true, + ) + .map_err(ProgramError::from)?; + + let mut tree = + light_batched_merkle_tree::merkle_tree::BatchedMerkleTreeAccount::state_from_account_info( + tree_account, + ) + .map_err(ProgramError::from)?; + + match tree.check_input_queue_non_inclusion(&account_hash) { + Ok(()) => Ok(false), + Err(BatchedMerkleTreeError::NonInclusionCheckFailed) => Ok(true), + Err(e) => Err(ProgramError::from(e)), + } +} diff --git a/programs/compressed-token/program/src/shared/token_input.rs b/programs/compressed-token/program/src/shared/token_input.rs index 274cd57eb7..d8d7c06d11 100644 --- a/programs/compressed-token/program/src/shared/token_input.rs +++ b/programs/compressed-token/program/src/shared/token_input.rs @@ -80,18 +80,22 @@ pub fn set_input_compressed_account<'a>( // For ATA decompress (is_ata=true), verify the wallet owner from owner_index instead // of the compressed account owner (which is the ATA pubkey that can't sign). // Also verify that owner_account (the ATA) matches the derived ATA from wallet_owner + mint + bump. - let signer_account = if let Some(exts) = tlv_data { + let (signer_account, check_signer) = if let Some(exts) = tlv_data { resolve_ata_signer(exts, packed_accounts, mint_account, owner_account)? } else { - owner_account + (owner_account, true) }; - verify_owner_or_delegate_signer( - signer_account, - delegate_account, - permanent_delegate, - all_accounts, - )?; + // ATA decompress is permissionless -- the destination is a deterministic PDA, + // so there is no griefing vector. ATA derivation is still validated above. + if check_signer { + verify_owner_or_delegate_signer( + signer_account, + delegate_account, + permanent_delegate, + all_accounts, + )?; + } let token_version = TokenDataVersion::try_from(input_token_data.version)?; let data_hash = { @@ -193,7 +197,7 @@ fn resolve_ata_signer<'a>( packed_accounts: &'a [AccountInfo], mint_account: &AccountInfo, owner_account: &'a AccountInfo, -) -> Result<&'a AccountInfo, ProgramError> { +) -> Result<(&'a AccountInfo, bool), ProgramError> { for ext in exts.iter() { if let ZExtensionInstructionData::CompressedOnly(data) = ext { if data.is_ata() { @@ -228,13 +232,13 @@ fn resolve_ata_signer<'a>( if !pinocchio::pubkey::pubkey_eq(owner_account.key(), &derived_ata) { return Err(TokenError::InvalidAtaDerivation.into()); } - - return Ok(wallet_owner); + // Do not check signer the recipient token account is the correct ata. + return Ok((wallet_owner, false)); } } } - Ok(owner_account) + Ok((owner_account, true)) } #[cold] From f020d0252fb4c412dffc994c524e5983e2cadb92 Mon Sep 17 00:00:00 2001 From: ananas Date: Thu, 2 Apr 2026 22:26:58 +0100 Subject: [PATCH 2/6] chore: update tests, docs, sdk, and CI for ATA decompress changes - Add ATA decompress tests (idempotency, wrong bump, multi-cycle) - Wire freeze and compress_only tests into justfile and CI - Wire v2_failing_tests into justfile and CI - Scope test-utils TLV owner_index updates to current decompress action - Remove extra signers from decompress calls in test files - Update TRANSFER2.md with missing error codes and decompress validation - Limit SDK load_accounts to 1 ATA per instruction for idempotency --- Cargo.lock | 1 + .../tests/compress_only/ata_decompress.rs | 497 +++++++++++++++++- program-tests/justfile | 17 +- .../actions/legacy/instructions/transfer2.rs | 120 +++-- programs/compressed-token/program/CLAUDE.md | 1 + .../docs/compressed_token/TRANSFER2.md | 24 +- .../program/tests/transfer2_processor.rs | 157 ++++++ .../client/src/interface/load_accounts.rs | 6 +- .../tests/amm_stress_test.rs | 6 +- .../tests/amm_test.rs | 6 +- .../tests/d10_token_accounts_test.rs | 8 +- 11 files changed, 780 insertions(+), 63 deletions(-) create mode 100644 programs/compressed-token/program/tests/transfer2_processor.rs diff --git a/Cargo.lock b/Cargo.lock index 657f5422fa..9970d3662b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3814,6 +3814,7 @@ dependencies = [ "lazy_static", "light-account-checks", "light-array-map", + "light-batched-merkle-tree", "light-compressed-account", "light-compressible", "light-hasher", diff --git a/program-tests/compressed-token-test/tests/compress_only/ata_decompress.rs b/program-tests/compressed-token-test/tests/compress_only/ata_decompress.rs index b48517e4de..454470fa23 100644 --- a/program-tests/compressed-token-test/tests/compress_only/ata_decompress.rs +++ b/program-tests/compressed-token-test/tests/compress_only/ata_decompress.rs @@ -41,6 +41,8 @@ const DECOMPRESS_DESTINATION_MISMATCH: u32 = 18057; const MINT_MISMATCH: u32 = 18058; /// Expected error code for DecompressAmountMismatch const DECOMPRESS_AMOUNT_MISMATCH: u32 = 18064; +/// Expected error code for InvalidAtaDerivation +const INVALID_ATA_DERIVATION: u32 = 18066; /// Setup context for ATA CompressOnly tests struct AtaCompressedTokenContext { @@ -193,7 +195,7 @@ async fn attempt_decompress_with_tlv( amount, pool_index: None, decimals: 9, - in_tlv: Some(in_tlv), + in_tlv: Some(in_tlv.clone()), })], payer.pubkey(), true, @@ -203,7 +205,20 @@ async fn attempt_decompress_with_tlv( RpcError::CustomError(format!("Failed to create decompress instruction: {:?}", e)) })?; - rpc.create_and_send_transaction(&[decompress_ix], &payer.pubkey(), &[payer, owner]) + // ATA decompress is permissionless (only payer signs). + // Non-ATA decompress still requires owner to sign. + let is_ata = in_tlv + .iter() + .flatten() + .any(|ext| matches!(ext, ExtensionInstructionData::CompressedOnly(data) if data.is_ata)); + + let signers: Vec<&Keypair> = if !is_ata && payer.pubkey() != owner.pubkey() { + vec![payer, owner] + } else { + vec![payer] + }; + + rpc.create_and_send_transaction(&[decompress_ix], &payer.pubkey(), &signers) .await } @@ -1271,8 +1286,8 @@ async fn test_ata_multiple_compress_decompress_cycles() { .await .unwrap(); - // For ATA decompress, wallet owner signs (not ATA pubkey) - rpc.create_and_send_transaction(&[decompress_ix], &payer.pubkey(), &[&payer, &wallet]) + // ATA decompress is permissionless -- only payer needs to sign + rpc.create_and_send_transaction(&[decompress_ix], &payer.pubkey(), &[&payer]) .await .unwrap(); @@ -1518,3 +1533,477 @@ async fn test_non_ata_compress_only_decompress() { let dest_ctoken = Token::deserialize(&mut &dest_account.data[..]).unwrap(); assert_eq!(dest_ctoken.amount, mint_amount); } + +/// Test that regular Decompress with is_ata=true in TLV +/// succeeds permissionlessly -- only payer signs, not the owner. +#[tokio::test] +#[serial] +async fn test_permissionless_ata_decompress() { + let mut context = setup_ata_compressed_token(&[ExtensionType::Pausable], None, false) + .await + .unwrap(); + + // Create destination ATA + let create_dest_ix = CreateAssociatedTokenAccount::new( + context.payer.pubkey(), + context.owner.pubkey(), + context.mint_pubkey, + ) + .with_compressible(CompressibleParams { + compressible_config: context + .rpc + .test_accounts + .funding_pool_config + .compressible_config_pda, + rent_sponsor: context + .rpc + .test_accounts + .funding_pool_config + .rent_sponsor_pda, + pre_pay_num_epochs: 2, + lamports_per_write: Some(100), + compress_to_account_pubkey: None, + token_account_version: TokenDataVersion::ShaFlat, + compression_only: true, + }) + .idempotent() + .instruction() + .unwrap(); + + context + .rpc + .create_and_send_transaction( + &[create_dest_ix], + &context.payer.pubkey(), + &[&context.payer], + ) + .await + .unwrap(); + + // Build regular Decompress with is_ata=true TLV + let in_tlv = vec![vec![ExtensionInstructionData::CompressedOnly( + CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: true, + bump: context.ata_bump, + owner_index: 0, // Will be updated by create_generic_transfer2_instruction + }, + )]]; + + let ix = create_generic_transfer2_instruction( + &mut context.rpc, + vec![Transfer2InstructionType::Decompress(DecompressInput { + compressed_token_account: vec![context.compressed_account.clone()], + decompress_amount: context.amount, + solana_token_account: context.ata_pubkey, + amount: context.amount, + pool_index: None, + decimals: 9, + in_tlv: Some(in_tlv), + })], + context.payer.pubkey(), + true, + ) + .await + .unwrap(); + + // Only payer signs -- owner does NOT sign (permissionless ATA decompress) + let result = context + .rpc + .create_and_send_transaction(&[ix], &context.payer.pubkey(), &[&context.payer]) + .await; + + assert!( + result.is_ok(), + "Permissionless ATA decompress should succeed with only payer signing: {:?}", + result.err() + ); + + // Verify ATA has the correct balance + use borsh::BorshDeserialize; + use light_token_interface::state::Token; + let dest_account = context + .rpc + .get_account(context.ata_pubkey) + .await + .unwrap() + .unwrap(); + let dest_ctoken = Token::deserialize(&mut &dest_account.data[..]).unwrap(); + assert_eq!( + dest_ctoken.amount, context.amount, + "Decompressed amount should match original amount" + ); +} + +/// Test that strict permissionless ATA decompress still enforces ATA derivation on-chain. +/// Even with payer-only signature, wrong ATA bump must fail with InvalidAtaDerivation. (idempotency only on bloom filter hit.) +#[tokio::test] +#[serial] +async fn test_permissionless_ata_decompress_rejects_wrong_bump() { + let mut context = setup_ata_compressed_token(&[ExtensionType::Pausable], None, false) + .await + .unwrap(); + + // Create destination ATA. + let create_dest_ix = CreateAssociatedTokenAccount::new( + context.payer.pubkey(), + context.owner.pubkey(), + context.mint_pubkey, + ) + .with_compressible(CompressibleParams { + compressible_config: context + .rpc + .test_accounts + .funding_pool_config + .compressible_config_pda, + rent_sponsor: context + .rpc + .test_accounts + .funding_pool_config + .rent_sponsor_pda, + pre_pay_num_epochs: 2, + lamports_per_write: Some(100), + compress_to_account_pubkey: None, + token_account_version: TokenDataVersion::ShaFlat, + compression_only: true, + }) + .idempotent() + .instruction() + .unwrap(); + + context + .rpc + .create_and_send_transaction( + &[create_dest_ix], + &context.payer.pubkey(), + &[&context.payer], + ) + .await + .unwrap(); + + // Build strict ATA decompress with intentionally wrong bump. + let wrong_bump = context.ata_bump.wrapping_add(1); + let in_tlv = vec![vec![ExtensionInstructionData::CompressedOnly( + CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: true, + bump: wrong_bump, + owner_index: 0, // updated by helper; bump remains wrong + }, + )]]; + + let ix = create_generic_transfer2_instruction( + &mut context.rpc, + vec![Transfer2InstructionType::Decompress(DecompressInput { + compressed_token_account: vec![context.compressed_account.clone()], + decompress_amount: context.amount, + solana_token_account: context.ata_pubkey, + amount: context.amount, + pool_index: None, + decimals: 9, + in_tlv: Some(in_tlv), + })], + context.payer.pubkey(), + true, + ) + .await + .unwrap(); + + // Payer-only signing should reach on-chain ATA derivation checks and fail there. + let result = context + .rpc + .create_and_send_transaction(&[ix], &context.payer.pubkey(), &[&context.payer]) + .await; + + assert_rpc_error(result, 0, INVALID_ATA_DERIVATION).unwrap(); +} + +/// Test that regular Decompress without owner signer fails for non-ATA compressed tokens. +/// Non-ATA tokens require the owner to sign; a third-party payer alone is insufficient. +#[tokio::test] +#[serial] +async fn test_permissionless_non_ata_decompress_fails() { + // Set up a non-ATA compressed token using the same pattern as decompress_restrictions.rs + let mut rpc = LightProgramTest::new(ProgramTestConfig::new_v2(false, None)) + .await + .unwrap(); + let payer = rpc.get_payer().insecure_clone(); + + let extensions = &[ExtensionType::Pausable]; + let (mint_keypair, _) = + create_mint_22_with_extension_types(&mut rpc, &payer, 9, extensions).await; + let mint_pubkey = mint_keypair.pubkey(); + + let spl_account = + create_token_22_account(&mut rpc, &payer, &mint_pubkey, &payer.pubkey()).await; + let mint_amount = 1_000_000_000u64; + mint_spl_tokens_22(&mut rpc, &payer, &mint_pubkey, &spl_account, mint_amount).await; + + // Create regular (non-ATA) Light Token account with compression_only=true + let owner = Keypair::new(); + let account_keypair = Keypair::new(); + let ctoken_account = account_keypair.pubkey(); + + let create_ix = + CreateTokenAccount::new(payer.pubkey(), ctoken_account, mint_pubkey, owner.pubkey()) + .with_compressible(CompressibleParams { + compressible_config: rpc + .test_accounts + .funding_pool_config + .compressible_config_pda, + rent_sponsor: rpc.test_accounts.funding_pool_config.rent_sponsor_pda, + pre_pay_num_epochs: 0, + lamports_per_write: Some(100), + compress_to_account_pubkey: None, + token_account_version: TokenDataVersion::ShaFlat, + compression_only: true, + }) + .instruction() + .unwrap(); + + rpc.create_and_send_transaction(&[create_ix], &payer.pubkey(), &[&payer, &account_keypair]) + .await + .unwrap(); + + // Transfer tokens to the Light Token account + let has_restricted = extensions + .iter() + .any(|ext| RESTRICTED_EXTENSIONS.contains(ext)); + let (spl_interface_pda, spl_interface_pda_bump) = + find_spl_interface_pda_with_index(&mint_pubkey, 0, has_restricted); + + let transfer_ix = TransferFromSpl { + amount: mint_amount, + spl_interface_pda_bump, + decimals: 9, + source_spl_token_account: spl_account, + destination: ctoken_account, + authority: payer.pubkey(), + mint: mint_pubkey, + payer: payer.pubkey(), + spl_interface_pda, + spl_token_program: spl_token_2022::ID, + } + .instruction() + .unwrap(); + + rpc.create_and_send_transaction(&[transfer_ix], &payer.pubkey(), &[&payer]) + .await + .unwrap(); + + // Warp epoch to trigger forester compression + rpc.warp_epoch_forward(30).await.unwrap(); + + // Get compressed token accounts + let compressed_accounts = rpc + .get_compressed_token_accounts_by_owner(&owner.pubkey(), None, None) + .await + .unwrap() + .value + .items; + + assert_eq!( + compressed_accounts.len(), + 1, + "Should have 1 compressed account" + ); + + // Create destination Light Token account for decompress + let dest_keypair = Keypair::new(); + let create_dest_ix = CreateTokenAccount::new( + payer.pubkey(), + dest_keypair.pubkey(), + mint_pubkey, + owner.pubkey(), + ) + .with_compressible(CompressibleParams { + compressible_config: rpc + .test_accounts + .funding_pool_config + .compressible_config_pda, + rent_sponsor: rpc.test_accounts.funding_pool_config.rent_sponsor_pda, + pre_pay_num_epochs: 2, + lamports_per_write: Some(100), + compress_to_account_pubkey: None, + token_account_version: TokenDataVersion::ShaFlat, + compression_only: true, + }) + .instruction() + .unwrap(); + + rpc.create_and_send_transaction(&[create_dest_ix], &payer.pubkey(), &[&payer, &dest_keypair]) + .await + .unwrap(); + + // Build Decompress instruction with is_ata=false (non-ATA) + let in_tlv = vec![vec![ExtensionInstructionData::CompressedOnly( + CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: false, + bump: 0, + owner_index: 0, + }, + )]]; + + let ix = create_generic_transfer2_instruction( + &mut rpc, + vec![Transfer2InstructionType::Decompress(DecompressInput { + compressed_token_account: vec![compressed_accounts[0].clone()], + decompress_amount: mint_amount, + solana_token_account: dest_keypair.pubkey(), + amount: mint_amount, + pool_index: None, + decimals: 9, + in_tlv: Some(in_tlv), + })], + payer.pubkey(), + true, + ) + .await + .unwrap(); + + // Only payer signs -- owner does NOT sign. For non-ATA this should fail + // at the transaction signing level (owner is marked as signer in the instruction + // but no keypair provided) -- proving non-ATA decompress is not permissionless. + let result = rpc + .create_and_send_transaction(&[ix], &payer.pubkey(), &[&payer]) + .await; + + assert!( + result.is_err(), + "Non-ATA decompress without owner signer should fail" + ); +} + +/// Test that ATA decompress with an already-spent compressed account +/// is a no-op (returns Ok without modifying the CToken balance). +/// The bloom filter in the V2 tree catches the already-nullified account. +#[tokio::test] +#[serial] +async fn test_ata_decompress_already_spent_is_noop() { + let mut context = setup_ata_compressed_token(&[ExtensionType::Pausable], None, false) + .await + .unwrap(); + + // Create destination ATA + let create_dest_ix = CreateAssociatedTokenAccount::new( + context.payer.pubkey(), + context.owner.pubkey(), + context.mint_pubkey, + ) + .with_compressible(CompressibleParams { + compressible_config: context + .rpc + .test_accounts + .funding_pool_config + .compressible_config_pda, + rent_sponsor: context + .rpc + .test_accounts + .funding_pool_config + .rent_sponsor_pda, + pre_pay_num_epochs: 2, + lamports_per_write: Some(100), + compress_to_account_pubkey: None, + token_account_version: TokenDataVersion::ShaFlat, + compression_only: true, + }) + .idempotent() + .instruction() + .unwrap(); + + context + .rpc + .create_and_send_transaction( + &[create_dest_ix], + &context.payer.pubkey(), + &[&context.payer], + ) + .await + .unwrap(); + + // First decompress: spend the compressed account normally + let in_tlv = vec![vec![ExtensionInstructionData::CompressedOnly( + CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: true, + bump: context.ata_bump, + owner_index: 0, + }, + )]]; + + let first_ix = create_generic_transfer2_instruction( + &mut context.rpc, + vec![Transfer2InstructionType::Decompress(DecompressInput { + compressed_token_account: vec![context.compressed_account.clone()], + decompress_amount: context.amount, + solana_token_account: context.ata_pubkey, + amount: context.amount, + pool_index: None, + decimals: 9, + in_tlv: Some(in_tlv.clone()), + })], + context.payer.pubkey(), + true, + ) + .await + .unwrap(); + + let second_ix = first_ix.clone(); + + context + .rpc + .create_and_send_transaction(&[first_ix], &context.payer.pubkey(), &[&context.payer]) + .await + .unwrap(); + + // Verify ATA has the tokens after first decompress + use borsh::BorshDeserialize; + use light_token_interface::state::Token; + let dest_account = context + .rpc + .get_account(context.ata_pubkey) + .await + .unwrap() + .unwrap(); + let dest_ctoken = Token::deserialize(&mut &dest_account.data[..]).unwrap(); + assert_eq!(dest_ctoken.amount, context.amount); + + // Second decompress: reuse the same instruction (the proof won't be + // verified because the bloom filter check short-circuits before the CPI). + let result = context + .rpc + .create_and_send_transaction(&[second_ix], &context.payer.pubkey(), &[&context.payer]) + .await; + + assert!( + result.is_ok(), + "ATA decompress with already-spent account should be no-op: {:?}", + result.err() + ); + + // Verify CToken balance is unchanged (still the original amount, not doubled) + let dest_account = context + .rpc + .get_account(context.ata_pubkey) + .await + .unwrap() + .unwrap(); + let dest_ctoken = Token::deserialize(&mut &dest_account.data[..]).unwrap(); + assert_eq!( + dest_ctoken.amount, context.amount, + "CToken balance should be unchanged after idempotent no-op" + ); +} diff --git a/program-tests/justfile b/program-tests/justfile index d65fa80df2..b7a75a6bd3 100644 --- a/program-tests/justfile +++ b/program-tests/justfile @@ -19,7 +19,7 @@ test-registry: RUST_MIN_STACK=16777216 RUSTFLAGS="-D warnings" cargo test-sbf -p registry-test # System program tests -test-system: test-system-address test-system-compression test-system-re-init +test-system: test-system-address test-system-compression test-system-re-init test-system-v2-failing test-system-address: RUSTFLAGS="-D warnings" cargo test-sbf -p system-test -- test_with_address @@ -30,6 +30,9 @@ test-system-compression: test-system-re-init: RUSTFLAGS="-D warnings" cargo test-sbf -p system-test --test test_re_init_cpi_account +test-system-v2-failing: + RUSTFLAGS="-D warnings" cargo test-sbf -p system-test --test v2_failing_tests + # System CPI tests (v1) test-system-cpi: RUSTFLAGS="-D warnings" cargo test-sbf -p system-cpi-test @@ -52,7 +55,7 @@ test-system-cpi-v2-functional-account-infos: RUSTFLAGS="-D warnings" cargo test-sbf -p system-cpi-v2-test -- functional_account_infos # Compressed token tests -test-compressed-token: test-compressed-token-unit test-compressed-token-v1 test-compressed-token-mint test-compressed-token-light-token test-compressed-token-transfer2 test-compressed-token-token-pool +test-compressed-token: test-compressed-token-unit test-compressed-token-v1 test-compressed-token-mint test-compressed-token-light-token test-compressed-token-transfer2 test-compressed-token-token-pool test-compressed-token-compress-only test-compressed-token-freeze test-compressed-token-unit: RUSTFLAGS="-D warnings" cargo test -p light-compressed-token @@ -72,6 +75,12 @@ test-compressed-token-transfer2: test-compressed-token-token-pool: RUSTFLAGS="-D warnings" cargo test-sbf -p compressed-token-test --test token_pool +test-compressed-token-compress-only: + RUSTFLAGS="-D warnings" cargo test-sbf -p compressed-token-test --test compress_only + +test-compressed-token-freeze: + RUSTFLAGS="-D warnings" cargo test-sbf -p compressed-token-test --test freeze + # Compressed token batched tree test (flaky, may need retries) test-compressed-token-batched-tree: RUSTFLAGS="-D warnings" cargo test-sbf -p compressed-token-test -- test_transfer_with_photon_and_batched_tree @@ -99,13 +108,13 @@ build-compressed-token-small: ci-account-compression-and-registry: test-account-compression test-registry # Matches CI: light-system-program-address -ci-system-address: test-system-address test-e2e test-e2e-extended test-compressed-token-light-token +ci-system-address: test-system-address test-system-v2-failing test-e2e test-e2e-extended test-compressed-token-light-token # Matches CI: light-system-program-compression ci-system-compression: test-system-compression test-system-re-init # Matches CI: compressed-token-and-e2e -ci-compressed-token-and-e2e: test-compressed-token-unit test-compressed-token-v1 test-compressed-token-mint test-compressed-token-token-pool +ci-compressed-token-and-e2e: test-compressed-token-unit test-compressed-token-v1 test-compressed-token-mint test-compressed-token-token-pool test-compressed-token-compress-only test-compressed-token-freeze # Matches CI: compressed-token-batched-tree (with retry for flaky test) ci-compressed-token-batched-tree: diff --git a/program-tests/utils/src/actions/legacy/instructions/transfer2.rs b/program-tests/utils/src/actions/legacy/instructions/transfer2.rs index 1ff92eeda9..61bcd4e557 100644 --- a/program-tests/utils/src/actions/legacy/instructions/transfer2.rs +++ b/program-tests/utils/src/actions/legacy/instructions/transfer2.rs @@ -162,6 +162,21 @@ pub enum Transfer2InstructionType { CompressAndClose(CompressAndCloseInput), } +fn set_owner_index_for_ata_tlvs( + tlvs: &mut [Vec], + wallet_owner_index: u8, +) { + for tlv in tlvs.iter_mut() { + for ext in tlv.iter_mut() { + if let ExtensionInstructionData::CompressedOnly(data) = ext { + if data.is_ata { + data.owner_index = wallet_owner_index; + } + } + } + } +} + // Note doesn't support multiple signers. pub async fn create_generic_transfer2_instruction( rpc: &mut R, @@ -333,7 +348,8 @@ pub async fn create_generic_transfer2_instruction( } token_accounts.push(token_account); } - Transfer2InstructionType::Decompress(input) => { + Transfer2InstructionType::Decompress(ref input) => { + let tlv_start = collected_in_tlv.len(); // Collect in_tlv data if provided if let Some(ref tlv_data) = input.in_tlv { has_any_tlv = true; @@ -344,9 +360,9 @@ pub async fn create_generic_transfer2_instruction( collected_in_tlv.push(Vec::new()); } } + let tlv_end = collected_in_tlv.len(); // Check if any input has is_ata=true in the TLV - // If so, we need to use the destination Light Token's owner as the signer let is_ata = input.in_tlv.as_ref().is_some_and(|tlv| { tlv.iter().flatten().any(|ext| { matches!(ext, ExtensionInstructionData::CompressedOnly(data) if data.is_ata) @@ -363,28 +379,18 @@ pub async fn create_generic_transfer2_instruction( .unwrap(); let recipient_account_owner = recipient_account.owner; - // For is_ata, the compressed account owner is the ATA pubkey (stored during compress_and_close) - // We keep that for hash calculation. The wallet owner signs instead of ATA pubkey. - // Get the wallet owner from the destination Light Token account and add as signer. + // For is_ata, get the wallet owner from the destination Light Token account. + // ATA decompress is permissionless -- wallet_owner is not a signer. if is_ata && recipient_account_owner.to_bytes() == LIGHT_TOKEN_PROGRAM_ID { - // Deserialize Token to get wallet owner use borsh::BorshDeserialize; use light_token_interface::state::Token; if let Ok(ctoken) = Token::deserialize(&mut &recipient_account.data[..]) { let wallet_owner = Pubkey::from(ctoken.owner.to_bytes()); - // Add wallet owner as signer and get its index - let wallet_owner_index = - packed_tree_accounts.insert_or_get_config(wallet_owner, true, false); - // Update the owner_index in collected_in_tlv for CompressedOnly extensions - for tlv in collected_in_tlv.iter_mut() { - for ext in tlv.iter_mut() { - if let ExtensionInstructionData::CompressedOnly(data) = ext { - if data.is_ata { - data.owner_index = wallet_owner_index; - } - } - } - } + let wallet_owner_index = packed_tree_accounts.insert_or_get(wallet_owner); + set_owner_index_for_ata_tlvs( + &mut collected_in_tlv[tlv_start..tlv_end], + wallet_owner_index, + ); } } @@ -405,13 +411,13 @@ pub async fn create_generic_transfer2_instruction( rpc_account, &mut packed_tree_accounts, &mut in_lamports, - false, // Decompress is always owner-signed + false, TokenDataVersion::from_discriminator( account.account.data.as_ref().unwrap().discriminator, ) .unwrap(), - None, // No override - use stored owner (ATA pubkey for is_ata) - is_ata, // For ATA: owner (ATA pubkey) is not signer + None, + is_ata, ) }) .collect::>(); @@ -419,20 +425,13 @@ pub async fn create_generic_transfer2_instruction( let mut token_account = CTokenAccount2::new(token_data)?; if recipient_account_owner.to_bytes() != LIGHT_TOKEN_PROGRAM_ID { - // For SPL decompression, get mint first let mint = input.compressed_token_account[0].token.mint; - - // Add the SPL Token program that owns the account let _token_program_index = packed_tree_accounts.insert_or_get_read_only(recipient_account_owner); - - // Use pool_index from input, default to 0 let pool_index = input.pool_index.unwrap_or(0); let (spl_interface_pda, bump) = find_spl_interface_pda_with_index(&mint, pool_index, false); let pool_account_index = packed_tree_accounts.insert_or_get(spl_interface_pda); - - // Use the new SPL-specific decompress method token_account.decompress_spl( input.decompress_amount, recipient_index, @@ -442,7 +441,6 @@ pub async fn create_generic_transfer2_instruction( input.decimals, )?; } else { - // Use the new SPL-specific decompress method token_account.decompress(input.decompress_amount, recipient_index)?; } @@ -694,3 +692,65 @@ pub async fn create_generic_transfer2_instruction( }; create_transfer2_instruction(inputs) } + +#[cfg(test)] +mod tests { + use light_token_interface::instructions::extensions::CompressedOnlyExtensionInstructionData; + + use super::*; + + fn compressed_only(is_ata: bool, owner_index: u8) -> ExtensionInstructionData { + ExtensionInstructionData::CompressedOnly(CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata, + bump: 0, + owner_index, + }) + } + + #[test] + fn set_owner_index_for_ata_tlvs_updates_only_selected_slice() { + let mut collected_in_tlv = [ + vec![compressed_only(true, 1)], + vec![compressed_only(true, 2)], + vec![compressed_only(true, 3)], + vec![compressed_only(true, 4)], + ]; + + set_owner_index_for_ata_tlvs(&mut collected_in_tlv[2..4], 9); + + assert_eq!( + collected_in_tlv[0], + vec![compressed_only(true, 1)], + "entries before slice must remain unchanged" + ); + assert_eq!( + collected_in_tlv[1], + vec![compressed_only(true, 2)], + "entries before slice must remain unchanged" + ); + assert_eq!( + collected_in_tlv[2], + vec![compressed_only(true, 9)], + "entries inside slice must be updated" + ); + assert_eq!( + collected_in_tlv[3], + vec![compressed_only(true, 9)], + "entries inside slice must be updated" + ); + } + + #[test] + fn set_owner_index_for_ata_tlvs_does_not_touch_non_ata() { + let mut tlvs = vec![vec![compressed_only(false, 7), compressed_only(true, 8)]]; + + set_owner_index_for_ata_tlvs(&mut tlvs, 11); + + assert_eq!(tlvs[0][0], compressed_only(false, 7)); + assert_eq!(tlvs[0][1], compressed_only(true, 11)); + } +} diff --git a/programs/compressed-token/program/CLAUDE.md b/programs/compressed-token/program/CLAUDE.md index 36f65b535f..a6ea701b71 100644 --- a/programs/compressed-token/program/CLAUDE.md +++ b/programs/compressed-token/program/CLAUDE.md @@ -69,6 +69,7 @@ Every instruction description must include the sections: 5. **Transfer2** - [`docs/compressed_token/TRANSFER2.md`](docs/compressed_token/TRANSFER2.md) - Batch transfer instruction for compressed/decompressed operations (discriminator: 101, enum: `InstructionType::Transfer2`) - Supports Compress, Decompress, CompressAndClose operations + - ATA decompress (is_ata=true) is permissionless and idempotent (bloom filter check) - Multi-mint support with sum checks 6. **MintAction** - [`docs/compressed_token/MINT_ACTION.md`](docs/compressed_token/MINT_ACTION.md) diff --git a/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md b/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md index c98e28aaf0..12b62f6afc 100644 --- a/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md +++ b/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md @@ -26,9 +26,11 @@ - SPL tokens when compressed are backed by tokens stored in ctoken pool PDAs 3. Compression modes: - - `Compress`: Move tokens from Solana account (ctoken or SPL) to compressed state - - `Decompress`: Move tokens from compressed state to Solana account (ctoken or SPL) - - `CompressAndClose`: Compress full ctoken balance and close the account (authority: compression_authority only, requires compressible extension, **ctoken accounts only - NOT supported for SPL tokens**) + - `Compress` (0): Move tokens from Solana account (ctoken or SPL) to compressed state + - `Decompress` (1): Move tokens from compressed state to Solana account (ctoken or SPL) + - `CompressAndClose` (2): Compress full ctoken balance and close the account (authority: compression_authority only, requires compressible extension, **ctoken accounts only - NOT supported for SPL tokens**) + + **Permissionless ATA decompress:** When the input has CompressedOnly extension with `is_ata=true`, Decompress skips the owner/delegate signer check (permissionless). This is safe because the destination is a deterministic PDA (ATA derivation is still validated). ATA decompress is restricted to exactly 1 input and 1 decompress compression per instruction (error: `AtaDecompressRequiresSingleInput` if violated). It also includes a bloom filter idempotency check -- if the compressed account is already spent, the transaction returns Ok as a no-op. 4. Global sum check enforces transaction balance: - Input sum = compressed inputs + compress operations (tokens entering compressed state) @@ -59,7 +61,7 @@ - `out_tlv`: Optional TLV data for output accounts (used for CompressedOnly extension during CompressAndClose) 2. Compression struct fields (path: program-libs/token-interface/src/instructions/transfer2/compression.rs): - - `mode`: CompressionMode enum (Compress, Decompress, CompressAndClose) + - `mode`: CompressionMode enum (Compress=0, Decompress=1, CompressAndClose=2) - `amount`: u64 - Amount to compress/decompress - `mint`: u8 - Index of mint account in packed accounts - `source_or_recipient`: u8 - Index of source (compress) or recipient (decompress) account @@ -310,11 +312,14 @@ When compression processing occurs (in both Path A and Path B): - **For Decompress:** - Adds decompression amount to the recipient ctoken account balance (with overflow protection) - **Extension state transfer (with CompressedOnly in input TLV):** - - Validates destination CToken is fresh (zero amount, no delegate, no close_authority) + - **Amount validation:** Compression amount must equal the input compressed account amount (error: `DecompressAmountMismatch`) + - **Destination validation (src/transfer2/compression/ctoken/decompress.rs: `validate_destination`):** + - Non-ATA: CToken owner must match the input owner (wallet pubkey) (error: `DecompressDestinationMismatch`) + - ATA: destination account address must equal the input owner (ATA pubkey), AND CToken owner must equal the wallet owner from `owner_index` (error: `DecompressDestinationMismatch`) + - Validates destination CToken is fresh (zero amount, no delegate, no close_authority) (error: `DecompressDestinationNotFresh`) - Transfers delegate and delegated_amount from CompressedOnly extension to CToken - - Transfers withheld_transfer_fee to CToken's TransferFeeAccount extension + - Transfers withheld_transfer_fee to CToken's TransferFeeAccount extension (error: `DecompressWithheldFeeWithoutExtension` if fee > 0 but no TransferFeeAccount extension on CToken) - Restores frozen state (sets CToken.state = 2 if extension.is_frozen) - - Error: `DecompressDestinationNotFresh` if destination has non-zero state - **CompressedOnly inputs must decompress to CToken, not SPL token accounts:** - Error: `CompressedOnlyRequiresCTokenDecompress` if decompressing to SPL token account - **For CompressAndClose:** @@ -385,6 +390,11 @@ When compression processing occurs (in both Path A and Path B): - `CTokenError::CompressedOnlyBlocksTransfer` (error code: 18048) - CompressedOnly inputs cannot have compressed outputs (must decompress only) - `CTokenError::OutTlvOutputCountMismatch` (error code: 18049) - out_tlv length does not match out_token_data length - `CTokenError::DecompressDestinationNotFresh` (error code: 18055) - Decompress destination CToken has non-zero state (amount, delegate, etc) +- `TokenError::DecompressDestinationMismatch` (error code: 18057) - Decompress destination owner/address mismatch (non-ATA: CToken owner != input owner; ATA: destination address != ATA pubkey or CToken owner != wallet owner) +- `TokenError::DecompressWithheldFeeWithoutExtension` (error code: 18060) - Withheld transfer fee > 0 but destination CToken has no TransferFeeAccount extension +- `TokenError::DecompressAmountMismatch` (error code: 18064) - Compression amount does not match input compressed account amount +- `TokenError::InvalidAtaDerivation` (error code: 18066) - ATA derivation failed (wrong bump or wallet/mint mismatch) +- `TokenError::AtaDecompressRequiresSingleInput` (error code: 18067) - ATA decompress (is_ata=true) requires exactly 1 input and 1 decompress compression per instruction - `CTokenError::InvalidInstructionData` (error code: 18001) - Compressions not allowed when writing to CPI context - `CTokenError::InvalidCompressionMode` (error code: 18018) - Invalid compression mode value - `CTokenError::CompressInsufficientFunds` (error code: 18019) - Insufficient balance for compression diff --git a/programs/compressed-token/program/tests/transfer2_processor.rs b/programs/compressed-token/program/tests/transfer2_processor.rs new file mode 100644 index 0000000000..e30641b0b2 --- /dev/null +++ b/programs/compressed-token/program/tests/transfer2_processor.rs @@ -0,0 +1,157 @@ +use anchor_lang::AnchorSerialize; +use light_compressed_token::compressed_token::transfer2::processor::is_idempotent_ata_decompress; +use light_token_interface::instructions::{ + extensions::{CompressedOnlyExtensionInstructionData, ExtensionInstructionData}, + transfer2::{ + CompressedTokenInstructionDataTransfer2, Compression, CompressionMode, + MultiInputTokenDataWithContext, + }, +}; +use light_zero_copy::traits::ZeroCopyAt; +use rand::{rngs::StdRng, Rng, SeedableRng}; + +fn serialize(data: &CompressedTokenInstructionDataTransfer2) -> Vec { + let mut buf = Vec::new(); + AnchorSerialize::serialize(data, &mut buf).unwrap(); + buf +} + +fn base_input() -> MultiInputTokenDataWithContext { + MultiInputTokenDataWithContext::default() +} + +fn base_data() -> CompressedTokenInstructionDataTransfer2 { + CompressedTokenInstructionDataTransfer2 { + with_transaction_hash: false, + with_lamports_change_account_merkle_tree_index: false, + lamports_change_account_merkle_tree_index: 0, + lamports_change_account_owner_index: 0, + output_queue: 0, + max_top_up: 0, + cpi_context: None, + compressions: None, + proof: None, + in_token_data: vec![], + out_token_data: vec![], + in_lamports: None, + out_lamports: None, + in_tlv: None, + out_tlv: None, + } +} + +fn check(data: &CompressedTokenInstructionDataTransfer2) -> bool { + let buf = serialize(data); + let (z, _) = CompressedTokenInstructionDataTransfer2::zero_copy_at(&buf).unwrap(); + is_idempotent_ata_decompress(&z) +} + +#[test] +fn test_is_idempotent_ata_decompress_empty() { + assert!(!check(&base_data())); +} + +#[test] +fn test_is_idempotent_ata_decompress_no_compressions() { + let mut data = base_data(); + data.in_token_data = vec![base_input()]; + data.in_tlv = Some(vec![vec![ExtensionInstructionData::CompressedOnly( + CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: true, + bump: 0, + owner_index: 0, + }, + )]]); + assert!(!check(&data)); +} + +#[test] +fn test_is_idempotent_ata_decompress_multiple_inputs() { + let mut data = base_data(); + data.in_token_data = vec![base_input(), base_input()]; + data.compressions = Some(vec![Compression::decompress(100, 0, 0)]); + assert!(!check(&data)); +} + +#[test] +fn test_is_idempotent_ata_decompress_compress_mode() { + let mut data = base_data(); + data.in_token_data = vec![base_input()]; + data.compressions = Some(vec![Compression::compress(100, 0, 0, 0)]); + data.in_tlv = Some(vec![vec![ExtensionInstructionData::CompressedOnly( + CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: true, + bump: 0, + owner_index: 0, + }, + )]]); + assert!(!check(&data)); +} + +#[test] +fn test_is_idempotent_ata_decompress_not_ata() { + let mut data = base_data(); + data.in_token_data = vec![base_input()]; + data.compressions = Some(vec![Compression::decompress(100, 0, 0)]); + data.in_tlv = Some(vec![vec![ExtensionInstructionData::CompressedOnly( + CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: false, + bump: 0, + owner_index: 0, + }, + )]]); + assert!(!check(&data)); +} + +#[test] +fn test_is_idempotent_ata_decompress_random_always_false() { + let mut rng = StdRng::seed_from_u64(42); + for _ in 0..1000 { + let mut data = base_data(); + let num_inputs = rng.gen_range(0..5); + data.in_token_data = (0..num_inputs).map(|_| base_input()).collect(); + + // Random compressions -- never Decompress mode so result is always false. + if rng.gen_bool(0.5) { + let num_compressions = rng.gen_range(0..4); + data.compressions = Some( + (0..num_compressions) + .map(|_| { + if rng.gen_bool(0.5) { + Compression::compress(rng.gen(), 0, 0, 0) + } else { + Compression { + mode: CompressionMode::CompressAndClose, + amount: rng.gen(), + mint: 0, + source_or_recipient: 0, + authority: 0, + pool_account_index: 0, + pool_index: 0, + bump: 0, + decimals: 0, + } + } + }) + .collect(), + ); + } + + assert!( + !check(&data), + "Expected false for random input with {num_inputs} inputs" + ); + } +} diff --git a/sdk-libs/client/src/interface/load_accounts.rs b/sdk-libs/client/src/interface/load_accounts.rs index 0d564734a2..d1c04a8c20 100644 --- a/sdk-libs/client/src/interface/load_accounts.rs +++ b/sdk-libs/client/src/interface/load_accounts.rs @@ -70,7 +70,9 @@ pub enum LoadAccountsError { TreeInfoIndexOutOfBounds { index: usize, len: usize }, } -const MAX_ATAS_PER_IX: usize = 8; +// Permissionless ATA decompress is strictly gated on-chain to a single-input +// idempotent ATA decompress shape, so ATA load instructions must stay 1-per-ix. +const MAX_ATAS_PER_IX: usize = 1; const MAX_PDAS_PER_IX: usize = 8; const PROOF_FETCH_CONCURRENCY: usize = 8; @@ -443,7 +445,7 @@ fn build_transfer2( }, )?; - let owner_idx = packed.insert_or_get_config(ctx.wallet_owner, true, false); + let owner_idx = packed.insert_or_get_read_only(ctx.wallet_owner); let ata_idx = packed.insert_or_get(derive_token_ata(&ctx.wallet_owner, &ctx.mint)); let mint_idx = packed.insert_or_get(token.mint); let delegate_idx = token.delegate.map(|d| packed.insert_or_get(d)).unwrap_or(0); diff --git a/sdk-tests/csdk-anchor-full-derived-test/tests/amm_stress_test.rs b/sdk-tests/csdk-anchor-full-derived-test/tests/amm_stress_test.rs index 1bd04c0cbc..810276bb8c 100644 --- a/sdk-tests/csdk-anchor-full-derived-test/tests/amm_stress_test.rs +++ b/sdk-tests/csdk-anchor-full-derived-test/tests/amm_stress_test.rs @@ -565,11 +565,7 @@ async fn decompress_all(ctx: &mut AmmTestContext, pdas: &AmmPdas) { .expect("create_load_instructions should succeed"); ctx.rpc - .create_and_send_transaction( - &decompress_ixs, - &ctx.payer.pubkey(), - &[&ctx.payer, &ctx.creator], - ) + .create_and_send_transaction(&decompress_ixs, &ctx.payer.pubkey(), &[&ctx.payer]) .await .expect("Decompression should succeed"); diff --git a/sdk-tests/csdk-anchor-full-derived-test/tests/amm_test.rs b/sdk-tests/csdk-anchor-full-derived-test/tests/amm_test.rs index 050531f970..1f894f30e4 100644 --- a/sdk-tests/csdk-anchor-full-derived-test/tests/amm_test.rs +++ b/sdk-tests/csdk-anchor-full-derived-test/tests/amm_test.rs @@ -692,11 +692,7 @@ async fn test_amm_full_lifecycle() { .expect("create_load_instructions should succeed"); ctx.rpc - .create_and_send_transaction( - &decompress_ixs, - &ctx.payer.pubkey(), - &[&ctx.payer, &ctx.creator], - ) + .create_and_send_transaction(&decompress_ixs, &ctx.payer.pubkey(), &[&ctx.payer]) .await .expect("Decompression should succeed"); diff --git a/sdk-tests/csdk-anchor-full-derived-test/tests/d10_token_accounts_test.rs b/sdk-tests/csdk-anchor-full-derived-test/tests/d10_token_accounts_test.rs index 32b1e218e5..226e02f4cf 100644 --- a/sdk-tests/csdk-anchor-full-derived-test/tests/d10_token_accounts_test.rs +++ b/sdk-tests/csdk-anchor-full-derived-test/tests/d10_token_accounts_test.rs @@ -564,13 +564,9 @@ async fn test_d10_single_ata_markonly_lifecycle() { .await .expect("create_load_instructions should succeed"); - // Execute decompression (ATA owner must sign for decompression) + // Execute decompression (ATA owner no longer needs to sign) ctx.rpc - .create_and_send_transaction( - &decompress_instructions, - &ctx.payer.pubkey(), - &[&ctx.payer, &ata_owner_keypair], - ) + .create_and_send_transaction(&decompress_instructions, &ctx.payer.pubkey(), &[&ctx.payer]) .await .expect("ATA decompression should succeed"); From e378d776c18409db18052c932f22988e385a67ce Mon Sep 17 00:00:00 2001 From: ananas Date: Sat, 11 Apr 2026 19:10:36 +0100 Subject: [PATCH 3/6] fix(compressed-token): validate stale ATA decompress replays When the input bloom filter detects an already-spent compressed ATA input, the idempotent path returned Ok(()) without re-checking the compression entry. A wallet owner could replay the spent input under a different mint or destination and have it succeed as a no-op, leaving indexers with a fake decompress event. Add validate_idempotent_ata_decompress_replay, called only on the bloom-filter-hit branch, which enforces: - compression amount equals input amount - compression mint pubkey equals input mint pubkey - destination is the canonical ATA derived from (recorded wallet, program id, mint, recorded bump) - destination CToken's stored mint equals the compression mint (loaded via Token::from_account_info_checked) A failing replay now returns the matching TokenError variant instead of a silent Ok(()). Honest replays with identical fields still succeed. --- .../compressed_token/transfer2/processor.rs | 84 ++++++++++++++++++- 1 file changed, 83 insertions(+), 1 deletion(-) diff --git a/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs b/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs index 9627be88f0..b10b79174b 100644 --- a/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs +++ b/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs @@ -15,10 +15,11 @@ use light_token_interface::{ ZCompressionMode, }, }, + state::Token, TokenError, }; use light_zero_copy::{traits::ZeroCopyAt, ZeroCopyNew}; -use pinocchio::account_info::AccountInfo; +use pinocchio::{account_info::AccountInfo, pubkey::pubkey_eq}; use spl_pod::solana_msg::msg; use super::check_extensions::{build_mint_extension_cache, MintExtensionCache}; @@ -263,6 +264,7 @@ fn process_with_system_program_cpi<'a>( #[allow(clippy::collapsible_if)] if is_idempotent_ata_decompress { if check_ata_decompress_idempotent(inputs, &cpi_instruction_struct, validated_accounts)? { + validate_idempotent_ata_decompress_replay(inputs, validated_accounts)?; return Ok(()); } } @@ -420,3 +422,83 @@ fn check_ata_decompress_idempotent( Err(e) => Err(ProgramError::from(e)), } } + +#[cold] +fn validate_idempotent_ata_decompress_replay( + inputs: &ZCompressedTokenInstructionDataTransfer2, + validated_accounts: &Transfer2Accounts, +) -> Result<(), ProgramError> { + let input_token_data = inputs + .in_token_data + .first() + .ok_or(ProgramError::InvalidAccountData)?; + let compression = inputs + .compressions + .as_ref() + .and_then(|c| c.first()) + .ok_or(ProgramError::InvalidAccountData)?; + let ext_data = inputs + .in_tlv + .as_ref() + .and_then(|tlvs| tlvs.first()) + .and_then(|tlv| { + tlv.iter().find_map(|ext| match ext { + ZExtensionInstructionData::CompressedOnly(data) if data.is_ata() => Some(data), + _ => None, + }) + }) + .ok_or(ProgramError::InvalidAccountData)?; + + let compression_amount: u64 = compression.amount.get(); + let input_amount: u64 = input_token_data.amount.get(); + if compression_amount != input_amount { + msg!( + "Idempotent ATA decompress: amount mismatch (compression {}, input {})", + compression_amount, + input_amount, + ); + return Err(TokenError::DecompressAmountMismatch.into()); + } + + let wallet = validated_accounts + .packed_accounts + .get_u8(ext_data.owner_index, "idempotent: wallet")?; + let compression_mint = validated_accounts + .packed_accounts + .get_u8(compression.mint, "idempotent: compression mint")?; + let input_mint = validated_accounts + .packed_accounts + .get_u8(input_token_data.mint, "idempotent: input mint")?; + let destination = validated_accounts + .packed_accounts + .get_u8(compression.source_or_recipient, "idempotent: destination")?; + + if !pubkey_eq(compression_mint.key(), input_mint.key()) { + msg!("Idempotent ATA decompress: compression mint does not match input mint"); + return Err(TokenError::MintMismatch.into()); + } + + let bump_seed = [ext_data.bump]; + let ata_seeds: [&[u8]; 4] = [ + wallet.key().as_ref(), + crate::LIGHT_CPI_SIGNER.program_id.as_ref(), + compression_mint.key().as_ref(), + bump_seed.as_ref(), + ]; + let derived_ata = + pinocchio::pubkey::create_program_address(&ata_seeds, &crate::LIGHT_CPI_SIGNER.program_id) + .map_err(|_| TokenError::InvalidAtaDerivation)?; + if !pubkey_eq(destination.key(), &derived_ata) { + msg!("Idempotent ATA decompress: destination is not the canonical ATA of the recorded wallet"); + return Err(TokenError::DecompressDestinationMismatch.into()); + } + + let destination_ctoken = + Token::from_account_info_checked(destination).map_err(ProgramError::from)?; + if !pubkey_eq(destination_ctoken.mint.array_ref(), compression_mint.key()) { + msg!("Idempotent ATA decompress: destination mint does not match compression mint"); + return Err(TokenError::MintMismatch.into()); + } + + Ok(()) +} From 076162d1840cb4d2570e9c77ecb7cd1e6a67524b Mon Sep 17 00:00:00 2001 From: ananas Date: Tue, 14 Apr 2026 03:08:15 +0100 Subject: [PATCH 4/6] docs(compressed-token): document permissionless freeze via ATA decompress Document known behavior where permissionless ATA decompression of a frozen compressed token can freeze another user's existing ATA balance. --- .../compressed-token/program/docs/compressed_token/TRANSFER2.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md b/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md index 12b62f6afc..00a61b2241 100644 --- a/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md +++ b/programs/compressed-token/program/docs/compressed_token/TRANSFER2.md @@ -32,6 +32,8 @@ **Permissionless ATA decompress:** When the input has CompressedOnly extension with `is_ata=true`, Decompress skips the owner/delegate signer check (permissionless). This is safe because the destination is a deterministic PDA (ATA derivation is still validated). ATA decompress is restricted to exactly 1 input and 1 decompress compression per instruction (error: `AtaDecompressRequiresSingleInput` if violated). It also includes a bloom filter idempotency check -- if the compressed account is already spent, the transaction returns Ok as a no-op. + **Known behavior -- permissionless freeze via ATA decompress:** ATA decompression is permissionless and merges into the existing balance. A third party can trigger decompression of a frozen compressed token into its owner's ATA, freezing the ATA's existing balance and increasing it. Standard SPL ATAs do not allow this -- an account's frozen state and balance cannot be changed without owner consent. Permissionless decompression is required; changing the merge behavior for frozen accounts would create other inconsistencies. + 4. Global sum check enforces transaction balance: - Input sum = compressed inputs + compress operations (tokens entering compressed state) - Output sum = compressed outputs + decompress operations (tokens leaving compressed state) From e34370955b69ebf5426f3d04db9b7feaedcb5a46 Mon Sep 17 00:00:00 2001 From: ananas Date: Tue, 14 Apr 2026 03:44:05 +0100 Subject: [PATCH 5/6] fix(compressed-token): require exactly one TLV entry in idempotent ATA detection Tighten is_idempotent_ata_decompress() to require exactly one outer and one inner TLV entry instead of using flatten().any() which accepted overly broad TLV shapes. --- .../compressed_token/transfer2/processor.rs | 6 +-- .../program/tests/transfer2_processor.rs | 40 +++++++++++++++++++ 2 files changed, 43 insertions(+), 3 deletions(-) diff --git a/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs b/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs index b10b79174b..cb2c7814dd 100644 --- a/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs +++ b/programs/compressed-token/program/src/compressed_token/transfer2/processor.rs @@ -359,9 +359,9 @@ pub fn is_idempotent_ata_decompress(inputs: &ZCompressedTokenInstructionDataTran .as_ref() .is_some_and(|c| c.len() == 1 && c.iter().any(|c| c.mode.is_decompress())) && inputs.in_tlv.as_ref().is_some_and(|tlvs| { - tlvs.iter().flatten().any(|ext| { - matches!(ext, ZExtensionInstructionData::CompressedOnly(data) if data.is_ata()) - }) + tlvs.len() == 1 + && tlvs[0].len() == 1 + && matches!(&tlvs[0][0], ZExtensionInstructionData::CompressedOnly(data) if data.is_ata()) }) } diff --git a/programs/compressed-token/program/tests/transfer2_processor.rs b/programs/compressed-token/program/tests/transfer2_processor.rs index e30641b0b2..3f5f728976 100644 --- a/programs/compressed-token/program/tests/transfer2_processor.rs +++ b/programs/compressed-token/program/tests/transfer2_processor.rs @@ -115,6 +115,46 @@ fn test_is_idempotent_ata_decompress_not_ata() { assert!(!check(&data)); } +#[test] +fn test_is_idempotent_ata_decompress_multiple_tlv_entries() { + let mut data = base_data(); + data.in_token_data = vec![base_input()]; + data.compressions = Some(vec![Compression::decompress(100, 0, 0)]); + let compressed_only = + ExtensionInstructionData::CompressedOnly(CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: true, + bump: 0, + owner_index: 0, + }); + // Two TLV entries for a single input -- should reject. + data.in_tlv = Some(vec![vec![compressed_only.clone(), compressed_only]]); + assert!(!check(&data)); +} + +#[test] +fn test_is_idempotent_ata_decompress_extra_tlv_outer_vec() { + let mut data = base_data(); + data.in_token_data = vec![base_input()]; + data.compressions = Some(vec![Compression::decompress(100, 0, 0)]); + let compressed_only = + ExtensionInstructionData::CompressedOnly(CompressedOnlyExtensionInstructionData { + delegated_amount: 0, + withheld_transfer_fee: 0, + is_frozen: false, + compression_index: 0, + is_ata: true, + bump: 0, + owner_index: 0, + }); + // Two outer TLV vecs despite single input -- should reject. + data.in_tlv = Some(vec![vec![compressed_only.clone()], vec![compressed_only]]); + assert!(!check(&data)); +} + #[test] fn test_is_idempotent_ata_decompress_random_always_false() { let mut rng = StdRng::seed_from_u64(42); From 41667c3d00caae2bc0522d53a57e0b3d998944c8 Mon Sep 17 00:00:00 2001 From: ananas Date: Thu, 16 Apr 2026 00:57:43 +0100 Subject: [PATCH 6/6] chore: add certora audit --- ..._18_04_light_token_relax_ata_decompress.pdf | Bin 0 -> 270949 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 audits/certora_2026_18_04_light_token_relax_ata_decompress.pdf diff --git a/audits/certora_2026_18_04_light_token_relax_ata_decompress.pdf b/audits/certora_2026_18_04_light_token_relax_ata_decompress.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e322315264f150d5f3d582d42fe0e7aede4ac0ff GIT binary patch literal 270949 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

-e9>^;zwPm`|S0_MEs*Uvm;ibM@>(?J) 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⩔WCj%lOI~a{; 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Μ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