What is live
Part by part, not a blanket disclaimer
"Nothing here works" is easy to write and tells a reader nothing about which part to trust.
| Part | State | What that means |
|---|---|---|
| contract | executed | Compiled and run on Robinhood Chain through eth_call. 27 properties, 12 sabotages. Not audited. |
| leeway | executed | The sandwich is performed against real Uniswap V3 pools on this chain, inside one eth_call, with real tokens. |
| ladder | measured | Read live from every tokenised-equity market on the chain. Recomputable in your browser on /soundings. |
| app | live | Deploys a vault from your own wallet and drives every entry point. Nothing here holds a key. |
| canonical | undeployed | No canonical Plimsoll vault is deployed. Deploying costs gas from a funded wallet and this repository holds no key, so /app deploys one from yours. |
| fuzz | executed | Thousands of randomised operations with nine invariants re-checked after every one, on this chain's own EVM. |
| walletPath | executed | The app's whole write path driven in a real browser against a replayed history. Everything up to the signature. |
| audit | none | Adversarially self-reviewed by its author. That is a test suite, not an audit, and no third party has looked at it. |
Photographs
Every photograph on this site is Creative Commons, used unmodified except for scaling and the CSS grade noted below, and credited here.
| Where | Author | Licence | Source |
|---|---|---|---|
| hero | Gordon Hatton | CC BY-SA 2.0 | Wikimedia Commons |
| loadline | David Wright | CC BY-SA 2.0 | Wikimedia Commons |
| disc | Robert Brook on Flickr | CC BY 2.0 | Wikimedia Commons |
How the numbers on this site were produced
- The ladder —
tools/discover.mjsreads everyPoolCreatedlog where one side is USDG, thentools/scan.mjsreads each pool's price and liquidity and computes the swing withjs/swing.js, the module the browser also imports. - The sandwich —
tools/verify-leeway.mjsinstallscontracts/Leeway.solat a fixed address by state override and executes the whole attack in oneeth_callagainst live pools. - The contract —
tools/verify-contract.mjsruns each property as its owneth_call, then recompiles the contract with one defect at a time. - The app —
tools/verify-app.mjsexecutes the front end's own calldata against real USDG, with negative controls;tools/verify-wallet.mjsthen drives the real page in a real browser through the whole write path. - The long test —
tools/fuzz.mjsruns 3,360 randomised operations with 9 invariants after every one, and requires 6 deliberate breaks to be caught by the invariant named for each. - Whether a vault exists —
tools/find-vaults.mjsasks the chain for the event every vault emits in its own constructor and reads each candidate back through the whole interface. 21 log(s) matched that topic and 0 were vaults, which is why a topic match is treated as a candidate rather than an answer.
No key, no proxy, no backend
rpc.mainnet.chain.robinhood.com answers the browser preflight, which is why the
live panels here are pages rather than serverless functions. Nothing on this site holds an API key and
nothing here can sign.