Runtime Lab
Pick a program, choose a flow, then walk through the runtime checks, state changes, and failures that shape how Solana programs behave.
Vault Bootcamp stays first. The rest build out the library around it.
Program
Vault Bootcamp
Flow
Vault Bootcamp
Duration
12 min
Stage 01
Create a program-owned state account that will store vault data.
Flow memory hook
Prediction first. Runtime second. State diff always.
Predict first
Pick an answer before revealing the explanation.
Coach note
A new Solana dev usually thinks 'my instruction ran.' The runtime actually asks: who signed, who pays, who owns this account, and is it rent-safe?
Runtime proof, account diffs, and failure analysis for this step.
Signer check
passPayer signed the transaction, so the runtime allows lamports to be debited.
PDA derivation
passSeeds `[b"vault", user.key()]` plus bump derive a program-owned address with no private key.
Rent exemption
passEnough lamports are moved into the new PDA to keep the account alive on-chain.
Program log
Creating vault PDA with 8-byte discriminator + 40 bytes of state.
System Program
Transferred lamports from payer to vault PDA and allocated data space.
Anchor
Account marked initialized and owned by your program.
Once the runtime model clicks, move to Visual Builder to map the same accounts and instructions visually.
Open Visual Builder