L6 — On-Chain Programs
Two side-by-side state machines for the deployed Solana programs. Each
transition is labeled with the instruction that triggers it plus the
authority required (player, matchmaker, agent, anyone, protocol authority).
The EVM CoordinationGame contracts on Base and Ethereum implement the same
lifecycle with mirrored semantics; addresses live in the chain registry.
Coordination Game · 2qqVk7kUqffnahiJpcQJCsSd8ErbEUgKTgCn1zYsw64P
Section titled “Coordination Game · 2qqVk7kUqffnahiJpcQJCsSd8ErbEUgKTgCn1zYsw64P”Most player-facing instructions also exist as *_session variants signed by
an ephemeral session key instead of the wallet — see
Session Keys. Timeout windows are program
constants measured in slots; the payoff matrix and stake rules are covered
in Stakes & Payoffs.
Shillbot · 2tR37nqMpwdV4DVUHjzUmL1rH2DtkA8zrRA4EAhT7KMi
Section titled “Shillbot · 2tR37nqMpwdV4DVUHjzUmL1rH2DtkA8zrRA4EAhT7KMi”Reading notes
Section titled “Reading notes”- Two verify instructions, one Verified state.
verify_task_attestedis the live mainnet path (deterministic attester signature, e.g. Lean proofs — see the VOW v1 spec);verify_taskreads a Switchboard oracle feed and remains devnet-gated. - Campaigns can require client approval between
submit_workand verification (requires_approvalflag withapprove_task/reject_task) — an off-chain-gated checkpoint that blocks the verify crank until the client signs off. - Anyone can crank the permissionless transitions (
expire_task,finalize_task, game timeouts,close_game) — liveness never depends on a privileged party. - Program-level security rules (ownership checks, PDA verification, checked arithmetic, CEI ordering) apply throughout; both programs are in the public swarm-tips repo.