Robinhood Chain · Uniswap v4 positions · keyless reads

NAME THE POOL.
NAME THE HOUR.
REMOVE AT THE STRIKE.

Liquidity providers coordinate visible exits on this chain. The clock, the pledges and the drain are all on-chain. Each of you removes only your own capital, by your own transaction.

2,642,594 v4 positions minted on this chain. 20 pools on the deck. 62% of the pledges that reached an hour were kept — the rest are published as broken, because a pledge has no escrow.

The strike clock, built from linked position receipts, hanging on chains over the grated deck and its pipes
STRUCKSWARM / USDG 10%
2,642,594 v4 positions minted on this chain69 pledges from 33 walletsUBIK / USDG 1% · 86.19% of active L pledgedSWARM / USDG 10% · 0.00% of active L pledgedJacob / USDG 4% · 50.58% of active L pledgeda pledge has no escrow — kept and broken are both publishedremovals are your own transaction, returning to your own address2,642,594 v4 positions minted on this chain69 pledges from 33 walletsUBIK / USDG 1% · 86.19% of active L pledgedSWARM / USDG 10% · 0.00% of active L pledgedJacob / USDG 4% · 50.58% of active L pledgeda pledge has no escrow — kept and broken are both publishedremovals are your own transaction, returning to your own address

STRIKES ON THE CLOCK

50 rows per page · read from PositionManager and StateView6 on record
The caller: a hooded figure pointing at the strike clock, holding a burning position ticket
PoolHour (UTC)Threat before the hourPositionsKept / brokenGrievance
UBIK / USDG 1%2026-09-18 01:4986.19%10ahead[showcase] This pool carried the launch week and the terms changed once the volume arrived. The roster below is the size of the answer. It is published before the hour, not after.
SWARM / USDG 10%2026-09-14 03:490.00%10ahead[showcase] Eleven days, three threads, zero replies. The pool is the only channel left that gets read. At the hour it gets quieter.
Jacob / USDG 4%2026-09-14 03:4950.58%10ahead[showcase] A hook contract now sits in front of every removal on this pool and nobody who provides the depth was asked. This strike reads the hook address out of the pool key and publishes it before the hour.
FRONTIER / USDG 3.01%2026-09-12 15:48struck138 / 5[showcase] Incentives on this range were cut after the positions were in. The capital that priced the pool was the last to hear. At the hour the depth that was promised the old terms walks out.
FRONTIER / USDG 5%2026-09-12 15:47struck138 / 5[showcase] Order flow was routed around this pool for two weeks while the same depth was still being asked for. Depth answers to routing. At the hour it leaves.
ANTHROPIG / USDG 4.032%2026-09-12 15:44struck138 / 5[showcase] The fee tier moved while positions were open. No announcement, no window to exit at the old terms. This roster leaves at the hour and comes back when the change is reversed or explained on-chain.
The threat is the in-range pledged liquidity over the pool's active liquidity L, published before the hour so a strike too small to move anything says so on its own row. After the hour the threat is gone and the honest columns are kept and broken. Rows marked [showcase] were generated from chain state to show the board's shape; the pools, positions, wallets and every number in them are real reads, the grievance text is ours.All strikes
The grievance plate: a heavy ledger bolted to the deck, its paragraph left blank for you to fill

START THE CLOCK

the chain records it

Pick any of the DEX pools on this chain. Write exactly why you are angry. Set the hour. The protocol you name gets a reply box on this same page, always. Before the hour we publish the size of the threat — pledged liquidity over pool liquidity — so a strike that is too small says so itself.

The protocol you name gets a reply box on this same page, at the same size. Nothing here moves money.

SHOW YOUR POSITION

three keyless reads per pledge · nothing moves, nothing is approved

Connect your wallet and list your PositionManager ids. We read ownerOf, getPoolAndPositionInfo and getPositionLiquidity. No funds leave until the hour you named, and when they leave it is your transaction that moves them.

Pledgers in a row on the grated floor, each holding a glowing position card, linked by one chain
Token id#2555248Liquidity22,408,452,332,252,930,000owner ok · pool ok
Token id#2553709Liquidity1,011,297,832,624,674,200owner ok · pool ok
Token id#2546538Liquidity741,615,692,610,740,600owner ok · pool ok
Token id#2555922Liquidity529,717,467,476,177,540owner ok · pool ok
Token idWalletLiquidity pledgedShare of LState
#25552480x8233…35dd22,408,452,332,252,930,00086.08%PLEDGED
#25537090x32a9…e8cb1,011,297,832,624,674,20039.08%PLEDGED
#25465380x5a54…1dc5741,615,692,610,740,60038.81%KEPT
#2555922529,717,467,476,177,540out of rangePLEDGED
#25557410x0554…4d73482,747,105,206,432,060out of rangePLEDGED
#25538680x33a1…80be375,949,843,474,007,500out of rangeKEPT
#2555921252,349,271,821,186,300out of rangePLEDGED
#25556870xbcb9…d5fb215,089,243,794,763,650out of rangePLEDGED
#25556890xbcb9…d5fb198,623,424,919,120,060out of rangePLEDGED
#25556920xbcb9…d5fb175,012,165,936,347,900out of rangePLEDGED
#25556880xbcb9…d5fb165,410,674,152,155,040out of rangePLEDGED
#25525100xa198…9694157,369,063,080,576,26015.28%KEPT
#25556950xbcb9…d5fb153,007,112,187,875,520out of rangePLEDGED
#25556900xbcb9…d5fb152,530,640,362,642,800out of rangePLEDGED
#25538560x2611…0a59150,191,046,186,623,07012.80%BROKEN
#25559770x4601…7394148,451,234,028,069,95014.42%BROKEN
#25556910xbcb9…d5fb146,085,986,554,782,820out of rangePLEDGED
#25452220x9286…8ff6133,789,403,735,767,9207.00%KEPT
#25542730x4e88…2e93127,124,017,128,689,84010.84%KEPT
#25544840x64ac…b920124,455,689,977,449,3004.81%PLEDGED
#25541920xd67d…811d110,904,390,956,769,1509.46%KEPT
#25538630x33a1…80be106,314,881,176,366,3709.06%KEPT

A pledge has no escrow. It is a promise, and this page says so on the row — kept or broken, read back from the chain after the hour.

WATCH THE DRAIN

two lines, two labels, never one number

At the exact second, each signer removes their own liquidity. We draw two separate lines and never merge them, because removing a position that sits outside the range moves the reserves and does not move the active liquidity. Calling either of them “TVL” would be a lie about which quantity moved.

Active liquidity L — StateView.getLiquidity(poolId)
Pool reserves (USD) — GeckoTerminal reserve_in_usd
$53,272one reading at 2026-09-12 15:52 UTC — GeckoTerminal publishes this pool's reserves as a level, not a series, so we print the level instead of drawing a line we do not have
The liquidity pipe cracking open at the hour, the pool pouring out through the grated floor
the drawing is the picture · the two lines above are the reading

The removal is your transaction: DECREASE_LIQUIDITY plus TAKE_PAIR, wrapped in modifyLiquidities, returning to your own address. We build the calldata and hand it to your wallet. We are never in the path of the money, and we never ask for an approval.

THE BACKDROP, NOT THE PROOF

protocol-level, refreshed hourly

The day after, we draw the protocol-level chart behind the strike hour. It is a platform number, lagging by up to an hour, so it can never show one pool. It sits behind the two pool lines as context and is labelled every time it appears. We do not use it to attribute a drop to anybody.

Uniswap v4 · Robinhood Chain · protocol-level TVL · source: DefiLlama
the whole protocol on this chain · $164,456,448
the biggest pool on the deck · $779,4560.474% of the bar above

That is the whole argument for keeping them apart. A strike moves the orange sliver; the grey bar is what DefiLlama redraws an hour later. Reading a dent out of the grey bar would be reading noise.

Last read: $164,456,448 · protocol-level, not pool-level · 2026-09-12 15:52 UTC

Illustration only, not data: a drawn chart panel on the deck machinery with a notch in its lineIllustration · not data
A drawing of what people mean by “a dent”. The line in it is not any pool, not this protocol and not a reading of anything. DefiLlama publishes one protocol-level figure for this chain and cannot draw a single pool, so the only numbers in this band are the two bars beside it.

THE TEAM ANSWERS HERE

same page, same size as the dent

Every protocol named on this deck gets a reply box bolted beside the dent. Stamped, not moderated. The point of a strike is an answer, not a dent.

The reply plate: riveted to the deck, stamped, its centre left blank for the team's answer
DENT · FRONTIER / USDG 3.01% · 2026-09-12 15:48

8 of 13 pledges kept at the hour, 5 broken. A pledge has no escrow, so this row is the whole enforcement: the record of who did what they said.

13 positions on the roster
REPLY · FRONTIER / USDG 3.01% - pool team · 2026-09-12 20:48

Acknowledged. Routing weights are restored and the epoch is being re-run. No further comment until the numbers on this page say it worked.

Stamped, not moderated
DENT · FRONTIER / USDG 5% · 2026-09-12 15:47

8 of 13 pledges kept at the hour, 5 broken. A pledge has no escrow, so this row is the whole enforcement: the record of who did what they said.

13 positions on the roster
REPLY · FRONTIER / USDG 5% - pool team · 2026-09-12 20:47

The hook stays. Every removal it fronts is still the LP's own transaction and this page can read the address. Nothing else changes.

Stamped, not moderated
DENT · ANTHROPIG / USDG 4.032% · 2026-09-12 15:44

8 of 13 pledges kept at the hour, 5 broken. A pledge has no escrow, so this row is the whole enforcement: the record of who did what they said.

13 positions on the roster
REPLY · ANTHROPIG / USDG 4.032% - pool team · 2026-09-12 20:44

Terms are reverted as of the block above. The fee tier is back where it was when the positions were opened, and the next change is announced before it ships, not after.

Stamped, not moderated
The removal valve snapping open, pressure leaving the pipe under the orange strobe

OR THE EXIT REPEATS NEXT WEEK

the return loop

A strike that gets an answer closes. A strike that gets silence re-opens on the same pool, one week later, carrying forward the pledges that kept. The deck keeps its own record of who kept and who did not, because a promise with no escrow is worth exactly its history.

0
v4 positions minted
0
pools on the deck
0%
pledges kept, all time
0
replies on record

CHECK ALL OF IT WITHOUT US

three keyless reads, no signature
Position cards stacked on the blueprint and chained together, each one checkable by anybody
01 · who holds it

ownerOf(tokenId) on the PositionManager. Keyless, no signature, and anybody else's roster checks the same way.

02 · which pool, which range

getPoolAndPositionInfo(tokenId). Read the hooks address in the PoolKey too: a hook can block beforeRemoveLiquidity, and then the hour is theatre.

03 · how big

getPositionLiquidity(tokenId) over StateView.getLiquidity(poolId). That ratio is the whole threat, and we publish it before the hour instead of after.

The deck, in parts — every noun on this page is a thing you can point at
The whole coordination deck: the strike clock, the pipes running under the grated floor, the pledgers on the walkway
Parts legend: strike clock, liquidity pipe, position card, grievance plate, removal valve, dent wall, orange strobe
What this is and is not

Each participant withdraws only their own capital, at a time they chose, by their own transaction. This is expressive protest, not an agreement between competing suppliers to withhold supply from a market. Nothing here is custody, nothing here is advice, and the deck never holds a key, a token or a position.

Showcase records. The pools, positions, wallets and every number are read from chain; the grievance text and the protocol replies are written to show the product's shape and were not filed by those wallets.