Anchor
InstructionMissing
“Instruction discriminator not provided”
The instruction data is shorter than 8 bytes, so Anchor cannot read the instruction discriminator.
Common causes
- Sending an empty or truncated instruction, usually from a hand-built transaction.
- Calling an Anchor program through a client that was generated from the wrong IDL.
How to fix it
- Use the generated client (
program.methods.name()) so the discriminator is prepended automatically. - If building raw instructions, prefix the data with the 8-byte discriminator:
sha256("global:<name>")[0..8].