$ ./security

Security

What can take your fox, what can't, and what we did to keep the surface small.

# what cannot happen

# hardening measures

  init_if_needed              REMOVED   (reinit attack surface)
  initialize signer           GATED to ProgramData.upgrade_authority
  bank PDA                    SINGLETON, one-shot init
  transfer_checked            REQUIRED  (decimals verified onchain)
  Token2022 InterfaceAccount  BOTH classic + Token2022 mints accepted
  cross-wallet unwrap         TESTED    (vault follows NFT)
  adversarial test suite      wrong NFT / wrong vault rejected
  verifiable build            solana-verify, deterministic .so

# test coverage

  rust unit tests    passing  (tier accounting, cap, reuse)
  anchor integration passing  (wrap, unwrap, cross-wallet, adversarial, royalty)
  verifiable build   solana-verify  .so matches public repo commit

# keys + wallets

  deployer wallet    signs anchor deploy + initialize. cold backed.
  upgrade authority  same as deployer. can patch program bugs, cannot touch user state.
  royalty treasury   SEPARATE wallet. receives 5% secondary royalties.
  RPC key            server-side only in /api/rpc. never in client bundle.

# things that can still break (named honestly)

Found something? DM us on X @wrapped_fox. We respond to anything that touches user state inside 24h.