Skip to content

fix(sdk-coin-sol): recognize Token ACL thaw in WASM explain - #9692

Merged
abhishekagrawal080 merged 1 commit into
masterfrom
CSHLD-1182
Sep 9, 2026
Merged

fix(sdk-coin-sol): recognize Token ACL thaw in WASM explain#9692
abhishekagrawal080 merged 1 commit into
masterfrom
CSHLD-1182

Conversation

@abhishekagrawal080

Copy link
Copy Markdown
Contributor

TICKET: CSHLD-1182

Token enablement (and transfer) prebuilds for Token-2022 mints gated by the sRFC-37 Token ACL program append a ThawPermissionlessIdempotent instruction (program TACLkU6..., discriminator 9) after the ATA-init /TokenTransfer. The JS-side classifier (getInstructionType) knows this program, but the WASM explain path (tsol) does not: @bitgo/wasm-solana
parses the instruction as Unknown, and deriveTransactionType falls through to CustomTx, so verifyTxType rejects enablement with: Invalid transaction type on token enablement: expected "AssociatedTokenAccountInitialization", got "CustomTx".

Mirror the JS-side handling in explainTransactionWasm.ts: treat Unknown instructions from the Token ACL program like boilerplate — excluded from the meaningful-instruction ATA check and from the Unknown->CustomTx trigger (which also fixes token transfers carrying the thaw, previously misclassified as CustomTx instead of Send).

Verified against sdk-coin-sol 8.8.0 on a devnet Token-2022 mint (TransferHook + DefaultAccountState frozen + Token ACL permissionless thaw enabled):

  • enablement [ATA-init + thaw]: CustomTx -> AssociatedTokenAccountInitialization
  • transfer [TokenTransfer + thaw]: CustomTx -> Send

@abhishekagrawal080
abhishekagrawal080 requested a review from a team as a code owner September 9, 2026 09:06
@linear-code

linear-code Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

CSHLD-1182

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

⚠️ Unit tests are failing on Node 26.x (Current release line, non-blocking). This is not an LTS version yet, so it does not block merge, but it signals an incompatibility to fix before Node 26.x becomes LTS.

View run

@abhishekagrawal080
abhishekagrawal080 merged commit 2871fad into master Sep 9, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants