SHOOK / OFFICIAL PROTOCOLDocumentation
MAINNET EDITIONOpen SHOOK
Reference / SHOOK

Authority and risks

The actual permissions, dependencies, and failure boundaries of the official protocol.

Authority matrix

RoleCan doCannot do through this role
Token holder / approved spenderTransfer; holder burn or approved burnFromMint additional SHOOK
CreatorNominate replacement creator; receive accrued revenueChange curve or pool fees; withdraw LP principal
Reserve ownerRegister, disable, reassign and route streams; withdraw retained and unaccounted token assets; transfer ownershipUpgrade core contracts or directly withdraw locked LP principal
Any accountSync formation, harvest, retry reserve delivery, relay beacon signatures, execute evidence-based eligible settlementRedirect another account’s claims or invent signatures
Tic-Tac-Toe participantStart its game; open its dispute; resign; claim its own entitlementChange the other player’s session signer or force an invalid move
Application / indexerRelay data and present indexed stateOverride contract state or authorize user withdrawals

Immutability has limits

The inspected core contracts expose no upgrade proxy, governance voting, owner pause, or economic parameter setter. That removes those specific controls; it does not prove the code free of bugs. Deploying a different contract or changing frontend configuration does not upgrade an existing address.

Reserve source administration can affect liveness. Required source deposits revert if streams are disabled or reassigned. The isolated delivery mechanism protects against destination failure, not every reserve configuration failure.

Market and custody exposure

Token price can rise or fall and a trade may experience slippage or adverse ordering. Locked liquidity does not guarantee a liquidation value. ReserveVault is owner-controlled custody and does not provide a token-holder redemption right.

Staking rewards are denominated in SHOOK. More tokens in a position do not guarantee greater ETH or fiat value. Games risk the wager, and an unavailable session key or missed dispute deadline can cause a loss.

External dependencies

The permanent market depends on the deployed Uniswap v4 PoolManager and compatible chain execution. Randomness depends on its fixed beacon and BN254 cryptographic verification. Users also depend on RPC availability, transaction inclusion, valid approvals, and correct receiver behavior.

The frontend and API are convenience layers. Indexed data can lag or become stale. Use contract reads, transaction receipts, and authenticated signed evidence to resolve discrepancies.

Verification status

This documentation is an implementation reference, not an audit certificate or deployment attestation. The checked-in mainnet runtime currently lacks contract addresses and a deployment block. Verify the final deployment manifest, bytecode, parameters, role acceptance, and published audit evidence before treating a release as deployed.

Source reference

Checked against the source shipped with this documentation. Contract calls and units are detailed in the contract reference.

Imported source files 69

Supporting contracts, interfaces, and libraries imported by the sources above, including their dependencies.

SHOOK docs Official protocol · Mainnet parameters