Reactor on X

//Reference

Docs

The protocol is one loop. You buy $REACTOR on Pons, your address is tokenized into an agent, and from the next pulse that agent is airdropped a crumb of every tokenized equity in the Pons family — all 13, by weight, not by lottery. The pulse it first holds all 13 it fledges: it joins the swarm, its weight rises 35%, it compounds pheromone, and it gets a vote on where the next sweep leans. This page is the arithmetic behind that, and section 08 is the list of what is still a database row rather than a transaction.

Pulse

45s

sweep · airdrop · fledge

Family

13

equities to fledge

Min mass

25.0K

$REACTOR to hatch

Vote steers

50%

of every sweep

01The pulse

The loop, precisely

One pulse always runs in this order. It fires from two places — the scheduled GET /api/pulse and lazily on API reads — so the hive row is claimed before any money moves and a second caller finds nothing to do rather than paying the swarm twice.
  1. 01

    Claim

    Due once 45s have passed. The hive row is taken by a conditional update carrying a 60-second lock; a caller that loses gets not-due or locked.

  2. 02

    Advance prices

    Every symbol steps one pulse along its seeded walk, scaled from its annualised vol. Previous close rolls only after a day's worth of pulses. Not quotes — see 08.

  3. 03

    Weigh the swarm

    Every SWARMING agent is weighed and the weights summed. Grounded agents weigh zero and take nothing.

  4. 04

    Size the sweep

    The hive sweeps 80% of $REACTOR trading fees (8000 bps). In dollars: a $42.00 baseline times deterministic volume noise keyed off the pulse index, scaled by the log of the swarm's size. At zero total weight the pulse records itself and pays nobody.

  5. 05

    Resolve the drift

    The focus symbol is the one with the most weight behind it — votes tallied by the voter's weight, not headcount. An unvoted or tied swarm falls back to whichever equity the fewest agents hold, keeping the family from drifting out of reach.

  6. 06

    Allocate

    50% of the sweep splits evenly across all 13 equities; the other 50% piles onto the focus. The even half is deliberate — without it a popular vote would starve every other symbol and no new agent could finish its basket.

  7. 07

    Cut and split

    An agent's cut is the sweep times its share of total weight. Behaviour decides only where that cut lands: evenly, or concentrated onto the best mover, the worst mover, the hive's heaviest buy, or the hive's allocation pro rata.

  8. 08

    Credit holdings

    Dollars become quantities at the pulse's price, written as one upsert for the whole swarm that adds to both quantity and cost basis.

  9. 09

    Settle

    Any agent holding a positive balance of all 13 equities and not yet fledged fledges here. Pulse counts tick up; already-fledged agents gain 0.01 pheromone, capped at 2. An airdrop line is logged per agent, plus a fledge line for whoever got airborne.

  10. 10

    Release

    The pulse is recorded with its index, dollars swept, focus and agents paid; the hive total is incremented; the lock drops. On a throw the lock drops but the clock is left alone, so the next caller retries.

02Weight

What an agent’s claim is worth

Weight is the only thing deciding how much of a sweep an agent receives. Four factors, multiplied; a grounded agent short-circuits to zero.

weight = mass0.75 × caste pheromone × accrued pheromone × 1.35 if fledged

The exponent is the point. At power 0.75, a wallet a hundred times larger gets about 32 times the airdrop, not a hundred. Returns to size are sublinear on purpose: without it the swarm is one whale and a rounding error.

The rest is rolled or earned. Caste pheromone comes out of the artwork and never changes. Accrued pheromone starts at 1 and only compounds after fledging, 0.01 per consecutive pulse to a ceiling of 2 — about 100 pulses, or 1h 15m of flying. The 1.35× bonus is the only factor an operator earns rather than buys.

Mass×min massmass^0.75×min weight
25.0K1.0×2.0K1.00×
100.0K4.0×5.6K2.83×
250.0K10.0×11.2K5.62×
1.00M40.0×31.6K15.91×
4.00M160.0×89.4K44.99×

Both weight columns assume a Drone at pheromone 1, isolating the mass term. A fledged Broodmother at the cap carries 9.45× the weight of an unfledged Drone of the same mass. A grounded agent of any caste carries none of it.

03Castes

Rarity, and where it bites

An agent is derived from its seed — the buyer's lowercased address — by five weighted rolls: strain, wings, eyes, thorax, habitat. Rarity is the probability of the likeliest possible agent divided by the probability of this one, so the commonest colouring scores exactly 1 and nothing scores less. The score picks a caste, and the caste multiplies the agent's share of every airdrop for as long as it exists.
CasteRarity floorPheromoneRelative weight
Drone0×1
Forager27×1.25
Scout75×1.6
Sentinel200×2.2
Broodmother900×3.5

The trait tables produce 36,864 distinct agents. Floors come from the measured distribution, not a guess: roughly 55% come out Drones, 1% Broodmothers. One wallet, one agent — no re-roll, nothing to trade up into, and the founding brood of 128 on /collection runs through the same function, so it can be checked.

04Foraging

Where an agent’s cut lands

Behaviour is the only real decision an operator makes, and it is narrower than it looks: it moves where a cut lands, never how large the cut is. Concentration is a genuine cost, because an agent needs a positive balance of all 13 equities before it can fledge.
BehaviourWhat it doesConcentration
ScatterEven split across the whole family. Fledges fastest, wins nothing in particular.0%
DriftFollows the swarm's vote. You get the consensus basket, for better or worse.35%
CarrionOverweights the worst 24h performer in the family. Buys what everyone dropped.55%
ChaseOverweights the best 24h performer. Concentrated, and slow to fledge.70%
HiveMirrors whatever the treasury actually swept most of this pulse.45%

Concentration is the share of a cut piled onto one symbol; the remainder spreads evenly. At 0% an agent fledges as fast as the hive can feed it and wins nothing in particular. At 70% it is buying upside with the time it takes to get airborne — and the 1.35× bonus and all pheromone accrual sit on the far side of that wait.

05The basket

The Pons family, all 13

The family is exactly what Pons accepts as a quote token, which is the only reason this design is possible. When Pons lists another ticker it goes in the table, the basket widens, and no agent has to opt in.
SymbolNameKindFledge set
NVDANvidiaEQUITYyes
AAPLAppleEQUITYyes
HOODRobinhood MarketsEQUITYyes
TSLATeslaEQUITYyes
INTCIntelEQUITYyes
BABoeingEQUITYyes
RKLBRocket LabEQUITYyes
SNOWSnowflakeEQUITYyes
NETCloudflareEQUITYyes
LMTLockheed MartinEQUITYyes
CEGConstellation EnergyEQUITYyes
GLXYGalaxy DigitalEQUITYyes
RCATRed Cat HoldingsEQUITYyes
USDGGlobal DollarSTABLEno

The fledge set is the 13 equities only. USDG is the family's stablecoin and the settlement leg the sweep passes through, so no agent needs to hold it to fledge. The tape lives on /family.

06Auth

Signing in proves a wallet, nothing else

No transaction, no approvals, no gas. The wallet signs a plain-text message naming the site, the address and a single-use nonce; the server trades a valid signature for a session cookie.
  1. 01

    Request a nonce

    The client posts an address. The server mints a random single-use nonce, stores it against the lowercased address with a five-minute expiry, and returns it.

  2. 02

    Sign the message

    The wallet is asked to personal_sign a deliberately boring message: host, address, nonce, and a line stating that signing authorises no transaction and moves no funds. Nothing is broadcast and no allowance is granted.

  3. 03

    Burn, then verify

    The nonce is burned before the signature is checked, by a conditional update that only succeeds while it is unused. A replayed nonce therefore fails even when the signature is perfectly valid, and two requests racing one nonce cannot both win. Only then is the signer recovered and compared to the claimed address.

  4. 04

    Issue the session

    The wallet is found or created — a first-time wallet is credited 1,000,000 $REACTOR, see 08 — and an HS256 JWT is set as an httpOnly, sameSite=lax cookie for seven days. The client never holds a token it could leak.

07Chain

Arc

Reactor is here and not on another EVM chain because Arc is the settlement network this deployment targets. Official docs publish the wallet values below; viem ships no definition for Arc yet, so the app carries its own.
Name
Arc
Chain ID
5042
Currency
USDC
RPC
https://rpc.mainnet.arc.io
Stack
Circle Arc · EVM L1 · USDC gas

Gas is paid in USDC (18 decimals). Official docs describe Arc as an EVM Layer-1, not an L2. The app expects chain 5042, and every RPC URL is overridable because the public endpoint is not meant to carry production traffic.

08Status

What is not real yet

Four things here are simulated. Better you read it now than work it out later; each one is a single seam, named so you can find it in the repository.

$REACTOR is a ledger balance, not a token. No mint, no contract, no pool. Every wallet is credited 1,000,000 $REACTOR the first time it signs in so the app is usable before the token exists. Mass, feeding and the 25.0K hatch minimum all move that number in a database column.

Prices are a seeded random walk, not quotes. Every figure on the tape comes from a deterministic per-symbol walk, stepped once per pulse from a starting seed and an annualised vol. Not market data, not delayed, not a feed — invented numbers with plausible variance. Nothing here should be used to value anything.

Airdropped balances are database rows, not transfers. Crediting an agent with 13 equities writes quantities and cost bases to a holdings table. No tokenized share moves, no wallet receives anything, and there is no settlement contract to receive it. A basket is an accounting record of what the protocol would have bought.

Hatching is triggered by sign-in, not by a buy. In production an agent is tokenized by an indexer watching $REACTOR buys on the Pons pool — which is why the hatch path takes an address rather than a session and offers no artwork to choose. Here the sign-in flow stands in for that indexer so the loop can run end to end today.

//Legal position

Read this part twice

Airdropped stock balances are promotional rewards. They are not dividends, distributions, yield or investment income, and holding an agent entitles you to none of those.

An agent conveys no equity and no ownership in Reactor or in any company whose ticker appears on this site, and carries no shareholder rights of any kind: no company votes, no claim on assets or earnings, no legal or beneficial interest in any security. The only vote an agent has is over which symbol the next sweep leans towards.

Nothing here is financial, investment, tax or legal advice, and nothing here is an offer, solicitation or recommendation to buy or sell any security or token.

Reactor is independent and not affiliated with, sponsored by or endorsed by Circle, Arc, Pons, Uniswap, or any company listed in the Pons family. Ticker symbols and company names identify the assets the protocol references and nothing more.