starling
proof

Do not trust us. Rerun it.

A flock only has to be believed on one point: that everybody gets the same price, and that you can walk out near where you came in. Here is how each claim is checked, and the commands to check it yourself.

33

contract tests passing, 10 of them against the real Pons factory on a fork of Robinhood Chain

17

engine and ABI tests, pinned to real launches and to Foundry's cast

20

real flock launches on the fork, reproduced to the wei by the JS engine

8,135

real Pons launches replayed over 4 days, invariant error 7e-14

1. The contract, against the real chain

The flock contract is one file, contracts/src/Flock.sol: no owner, no upgrade, no fee of ours. It is tested two ways.

  • On a mock factory (23 tests): windows and caps, deposits, leaving, oversubscription filled with the same fraction, refunds, cancellation, the one-day grace, a price floor that reverts the launch, reentrancy on refund and claim, a participant who refuses ETH, and fuzzing that every wei is accounted for.
  • On a fork of Robinhood Chain (10 tests, including the vector run and a check of the Pons facts): a real flock launches a real token through the real Pons factory, buys on the real curve, and the tests check the result against the curve's formula. They also check that a bot buying right after pays more and is hit by the 99% snipe tax, that a member can sell back for about the fees, and that an oversubscribed flock refunds exactly.

End to end: engine/tests/e2e-fork.mjs starts a local fork of the chain, deploys the contract, and plays a whole flock using only the site's own JavaScript: the same code that builds the calls on the Open page encodes open, join, launch and claim, reads the Opened event back, and checks that the tokens bought equal the engine's to the wei and that every refund is exact (last run: passed).

Flock launches on the real chain, and the engine

flockcreator taxtokens bought (wei)of supplyengine
0.01 ETH2%57406640231993845061253470.57%identical
0.05 ETH2%280590107029216083309227652.81%identical
0.1 ETH2%545863815419245920090039395.46%identical
0.2 ETH2%10352187833511205976520811010.35%identical
0.25 ETH2%12613784135240572171651495412.61%identical

Each row is one real launch of one real token on a fork of the chain, written by contracts/test/Vectors.t.sol. The engine that draws this site computes the same numbers, to the wei, including the reserves of the curve and what a sale returns.

2. What we read on the chain

factvaluehow it was read
start of the curve1.68 ETH virtual quote, 1e27 token weireserves of a fresh curve
curve fee1%quote reserve after a real buy
snipe tax99% for the first 3 secondsfactory snipeTaxStartBps and snipeTaxSeconds
exemptionsthe launcher and the fee recipient are exempttrace of a real launch
creator taxPons allows up to 10%; a flock allows 0% to 5%factory maxCreatorTaxBps; launches at 0, 0.01, 0.5, 1, 3 and 5% on the fork
graduation4.2 ETH raisedfactory event and curve data
round trip of a lone flock(1 − fee − tax)², about 94.1% at 2% taxreal buy and real sell on the fork, within 2 wei

3. The market numbers

The premiums, the share of the first wallets and the outcomes by flock size come from research/measure*.mjs, run over 8,135 Pons launches on Robinhood Chain seen over 4 days up to 2026-10-11. Every trade of every curve was replayed (blocks 82,486,873 to 85,808,992); reserves rebuilt from the logs match the constant-product invariant to 7e-14. The Lab uses a random sample of 700 of them.

Limits of the measurement: one four-day window, ETH pairs and the default configuration only, exits modelled on the curve, so graduated tokens (26) are not followed past graduation. It says what happened, not what will.

4. Rerun everything

git clone <the repo> starling && cd starling
node --test engine/tests/engine.test.mjs engine/tests/abi.test.mjs   # engine + ABI
cd contracts && forge test                                           # mock and fork tests (needs network)
node research/measure.mjs && node research/measure2.mjs && node research/measure3.mjs
node _tools/verify-all.mjs                                           # all of it, writes research/verify-report.json

Last full run: 2026-10-13 10:58 UTC, 17/17 engine tests, 33 contract tests, 0 failures.

5. What is not proven

StatusThe flock contract is not deployed yet and has not been audited. Everything above runs on forks and local tests. Independent review, a longer market window, and live flocks are what is missing. A flock buys a token that can go to zero; the floor protects against the curve, not against a bad project, and it ends at graduation.