Skip to content

fix(abi): NFT_PROGRAM_ID pointed at a program that is not deployed on devnet - #372

Merged
dcccrypto merged 1 commit into
mainfrom
fix/nft-program-id-devnet
Aug 28, 2026
Merged

fix(abi): NFT_PROGRAM_ID pointed at a program that is not deployed on devnet#372
dcccrypto merged 1 commit into
mainfrom
fix/nft-program-id-devnet

Conversation

@dcccrypto

Copy link
Copy Markdown
Owner

Fixes #371.

NFT_PROGRAM_ID defaulted to FqhKJT9g… — the mainnet address — while every other program id in this SDK is devnet:

$ solana account FqhKJT9gtScjrmfUuRMjeg7cXNpif1fqsy5Jh65tJmTS -u devnet
Error: AccountNotFound

Any consumer importing it built transactions against a program that does not exist, failing late and unhelpfully with "Account not found on-chain". percolator-launch already hit this and works around it with its own constant, documenting the symptom verbatim.

Fix: derive from PROGRAM_IDS_V17.nft instead of carrying an independent literal, so the two cannot drift apart again. The devnet id joins the env-override allowlist; the mainnet id stays allowed for an explicit override.

value on devnet
before FqhKJT9g… ❌ AccountNotFound
after CNGBPZR… ✅ deployed

Found by the pre-deploy gate harness, which asserts SDK program-id constants against the programs actually on chain. SDK suite unchanged: 968 passed / 31 skipped.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NgoNgagkvw7i5SSRC3FJ8D

@coderabbitai

coderabbitai Bot commented Aug 27, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 7e081fe9-82a1-4ce0-af92-caed14c3fd0b


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

… devnet

The ABI exported NFT_PROGRAM_ID defaulting to FqhKJT9g..., which is the MAINNET
address, while every other program id in this SDK is devnet. `solana account
FqhKJT9g... -u devnet` returns AccountNotFound, so any consumer importing this
constant built transactions against a program that does not exist and failed late and
unhelpfully with "Account not found on-chain".

percolator-launch already hit this and works around it with its own constant, which
documents the symptom verbatim: "made position-NFT mint/burn/transfer fail with
Account not found on-chain".

Now derived from PROGRAM_IDS_V17.nft rather than carrying an independent literal, so
the two cannot drift apart again. The devnet id joins the env-override allowlist; the
mainnet id remains allowed for an explicit override.

  before: NFT_PROGRAM_ID = FqhKJT9gtScjrmfUuRMjeg7cXNpif1fqsy5Jh65tJmTS  (not deployed)
  after:  NFT_PROGRAM_ID = CNGBPZRALk9Xu8BdgWNyrLJ7daQ9eJYFf1GnEEC7YCU3  (deployed)

Found by the pre-deploy gate harness, which asserts SDK program-id constants against
the programs actually on chain. Fixes #371.

SDK suite: 968 passed / 31 skipped, unchanged.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NgoNgagkvw7i5SSRC3FJ8D
@dcccrypto
dcccrypto force-pushed the fix/nft-program-id-devnet branch from ad33cb7 to ae10935 Compare August 28, 2026 03:35
@dcccrypto
dcccrypto merged commit b71798a into main Aug 28, 2026
3 of 4 checks passed
@dcccrypto
dcccrypto deleted the fix/nft-program-id-devnet branch August 28, 2026 03:36
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.

[Med] ABI exports NFT_PROGRAM_ID pointing at a program that is not deployed

1 participant