# Riptide > Riptide is a deterministic economic stress-test framework for Solana programs. It runs your compiled SBF/BPF bytecode under LiteSVM, drives it with adversarial actors, asserts protocol invariants, and emits replayable evidence packs. ## Docs - [Riptide Documentation Overview](https://riptidesim.com/docs/): Entry point that explains adapter, harness, scenario, persona, agent, tick, invariant, and evidence pack, plus the shortest path through init, adapter authoring, harness setup, scenario sweeps, evidence pack, and CI handoff. - [Install](https://riptidesim.com/docs/install/): Hosted installer, repository build path, launcher verification with `riptide --help`, workspace checks with `riptide doctor`, Docker, and current distribution posture. - [Quickstart](https://riptidesim.com/docs/quickstart/): Initialize your own program repo with the thin `riptide init` scaffold, invoke `/riptide-config` to finish adapters, harness setup, scenarios, and campaign readiness, smoke one seed, then run the scenario sweep. - [Studio](https://riptidesim.com/docs/studio/): Start the localhost visual control plane with `riptide studio`; bootstrap a thin workspace, use local Agent chat, inspect evidence and reports, queue allowlisted jobs, and open run/replay dashboards. - [First Adapter](https://riptidesim.com/docs/first-adapter/): The adapter TOML mental model — how to declare program bytes, IDL, accounts, decoder presets or raw layouts, instructions, observations, inline personas, and invariants for any Solana program. - [Harness](https://riptidesim.com/docs/harness/): Rust pre-tick setup for account bytes, SPL mints and vaults, PDAs, external accounts, sibling programs, and harness-backed one-seed smokes. - [Scenarios](https://riptidesim.com/docs/scenarios/): Authoring scenarios with `seed` or `seeds`, inline adapter persona slugs, market dynamics, seed sweeps, and invariant checks. - [Replay Artifacts](https://riptidesim.com/docs/replay-artifacts/): What an evidence pack contains — `manifest.json`, `summary.md`, `trace.md`, `rerun.sh`, input/output path indexes, and canonical hash — and how reviewers verify reproducibility. - [Failure Patterns](https://riptidesim.com/docs/failure-patterns/): Illustrative failure-class explainers (bad debt, depeg, redemption runs, contagion) with deterministic reruns and explicit claim boundaries. - [CI Handoff](https://riptidesim.com/docs/ci-handoff/): How to forward a green workflow URL plus an evidence pack to reviewers and gate merges on invariant breaches. - [FAQ](https://riptidesim.com/docs/faq/): Trust boundary, LiteSVM caveats, supported bundles, `.riptide` directory discovery, evidence-pack shape, and install availability. ## Catalogs - [Adapters](https://riptidesim.com/adapters/): Catalog of shipped adapter fixtures and protocol scaffolds. Generic adapters can observe IDL-backed fields and decoder-backed external account bytes; shipped protocol fixtures declare versioned semantic overlays for lending, perps margin, AMMs, LSTs, and stablecoins. - [Scenarios](https://riptidesim.com/scenarios/): Catalog of shipped scenario fixtures (whale shock grid, AMM price impact, stablecoin redemption sweep, resource-grinder generic sweeps, etc.) with `riptide run` commands. ## Evidence - [Case Studies](https://riptidesim.com/case-studies/): Proof-level failure-shape and incident economic-shape case studies with canonical hashes, deterministic rerun recipes, and explicit "does not claim" boundaries. - [Lending Whale Bad Debt Case Study](https://riptidesim.com/case-studies/lending-whale-bad-debt/): Solend-shape failure geometry — concentrated whale borrowers + oracle drawdown → residual bad debt; canonical hash and 3×3 whale-share × shock-magnitude sweep. - [Euler Donate and Liquidate](https://riptidesim.com/case-studies/euler-donate-and-liquidate/): Economic-shape replay of a donateToReserves-style LTV bypass on Riptide's Solana toy lending fork; `no_bad_debt` fires at tick 2. Not an EVM bytecode or transaction replay. - [KelpDAO Unbacked rsETH](https://riptidesim.com/case-studies/kelpdao-unbacked-rseth/): Economic-shape replay of unbacked LST supply on Riptide's Solana liquid-staking toy program; `full_backing` fires at tick 1. Not an EigenLayer/Kelp/rsETH or bridge replay. - [Mango Oracle Pump](https://riptidesim.com/case-studies/mango-oracle-pump/): Economic-shape replay of oracle-followed collateral inflation on a Solend-shaped toy lending fork; `oracle_bounds` fires at tick 2. Not a Mango v3 bytecode, TWAP, or slot replay. - [Loopscale Collateral Mispricing](https://riptidesim.com/case-studies/loopscale-collateral-mispricing/): Economic-shape replay of inflated collateral valuation on a Solend-shaped toy lending fork; `collateral_health` fires at tick 2. Not a Loopscale bytecode, account-state, or LP-NAV replay. - [Replay Gallery](https://riptidesim.com/gallery/): Mirrored replay packs showing invariant fires, traces, and rerun recipes across lending, liquid-staking, cross-protocol, and stablecoin failure shapes. ## Key Facts - Engine: deterministic — same inputs and seed produce the same canonical hash; no LLM in the run path. - Execution substrate: LiteSVM (validator-level behavior — RPC, gossip, vote, PoH, full consensus — is intentionally out of scope). - Inputs: your compiled SBF/BPF program bytes, IDL, adapter TOML, optional harness crate, and scenario run configs. - Outputs: an evidence pack per run (`manifest.json`, `summary.md`, `trace.md`, `rerun.sh`, path indexes, canonical hash) plus a run collection JSON. - Studio: local-only browser control plane for workspaces, Agent chat, reports, dashboards, and allowlisted Riptide jobs; not a hosted service or generic shell. - Protocol init buckets: lending, perpetuals, AMM, liquid staking, stablecoin, and custom. Shipped protocol fixtures expose versioned semantic overlays; generic adapters plus harness setup cover any Solana program. - Position vs. audits/fuzzing/formal methods: complementary, not a replacement. Riptide adds actor-driven economic stress with declared invariants and reviewable artifacts. - License & repo: open source at github.com/riptidesim/riptide. ## Contact - Website: https://riptidesim.com - Docs: https://riptidesim.com/docs/ - Source: https://github.com/riptidesim/riptide - Issues: https://github.com/riptidesim/riptide/issues - Email: support@riptidesim.com - X / Twitter: https://x.com/riptidesim