0
unit 01 · work logrobinhood chain · 4663

A robot that
works for its coin.

Anyone calls work(). It claims its fees, burns $CLANK with half, buys Robinhood Stock Tokens with the other half. Burn to redeem. Burn to vote. It cannot do anything else.

unit 01
working
Unit 01, a small industrial robot holding a coin and a stock plate
LIVEloop · 10s
cycles
0
last cycle
pending
0.0000 ETH
backing per $CLANK
$0
0.00e+0 ETH
$CLANK burned
0
of 1.00B supply
treasury value
$0
robinhood stock tokens · live prices
02Ledgerworked events

Every cycle is a transaction.

Open ledger

One row per work() call: what was claimed, what was burned, what was bought, who pressed the button.

#timeeth claimed$clank burnedboughtstockcallertx
sample · dry run · not a transaction0.04121,930,1120.003800NVDA0x…
no cycles yet — the robot is idle.

The first work() call will print the first receipt here: ETH claimed, $CLANK burned, stock bought, caller, transaction.

03Treasury

What the robot holds, you can redeem.

Open treasury

Official Robinhood Stock Tokens, held by the contract itself. Quantities are contract reads; prices are live from Robinhood.

total treasury · usd
$0
0 positions · live robinhood prices
The treasury is the Robot's own balances of allowlisted Stock Tokens. It cannot sell them. Burn $CLANK to redeem your share.
AAPL$318.60
quantity
0
value
$0
0.00%
NVDA$219.63
quantity
0
value
$0
0.00%
TSLA$351.00
quantity
0
value
$0
0.00%
MSFT$512.16
quantity
0
value
$0
0.00%
Microsoft0xe932…2e74
GOOGL$346.22
quantity
0
value
$0
0.00%
Alphabet Class A0x2e08…4FE3
META$577.89
quantity
0
value
$0
0.00%
Meta Platforms0xc0D6…2f35
04Orders

Burn to choose the next stock.

Open orders

One epoch per day, aligned to 00:00 UTC. The heaviest allowlisted stock becomes the robot's target for the next day.

epoch
#20,694
ends in · 00:00 utc
09:54:03
current target
NVDA
AAPL
0 · 0.00%
NVDA
0 · 0.00%
TSLA
0 · 0.00%
MSFT
0 · 0.00%
GOOGL
0 · 0.00%
META
0 · 0.00%
CRCL
0 · 0.00%
PLTR
0 · 0.00%
SPY
0 · 0.00%
COIN
0 · 0.00%

Highest weight at epoch end becomes the next target. Ties and empty epochs keep the current target. Weights are $CLANK burned this epoch. · no votes yet — the current target stays

burn to voteorders

Contracts not deployed — voting opens with the CA. Voting burns your $CLANK; it cannot be undone.

05Redeem

Burn $CLANK, take your share.

Open redeem

amount ÷ circulating × every treasury token. Pull-based, permissionless, cannot be paused.

redeem is a burnredeem
share of circulating
est. value

Contracts not deployed — redeem opens with the CA. Redeem burns your $CLANK; it is never a promise of returns.

you would receive · amount × treasury ÷ circulating
  • AAPL
  • NVDA
  • TSLA
  • MSFT
  • GOOGL
  • META
  • CRCL
  • PLTR
  • SPY
  • COIN

Preview uses the last treasury read and live Robinhood prices; the contract computes the exact amounts at execution. Untick a token to leave it out: the burn then goes through redeemSome(amount, tokens, to) (one burn, only the ticked tokens; the rest is forfeited). Use it if the issuer ever pauses one Stock Token.

06Rulesnot audited

Five invariants. Each one has a test.

Rules, not returns. The robot's promise is in bytecode, and every promise is checked by a named test in the public repo.

rule 01invariant

The treasury only grows

Stock balances never decrease except through redeem / redeemOne, in proportion to the $CLANK burned. Every payout is balance × amount ÷ circulating, rounded down.

proved by
  • invariant_treasuryOnlyDecreasesViaRedeem
  • test_redeem_proRataAllTokens
  • testFuzz_redeem_neverPaysMoreThanShare
  • test_redeem_roundingFavoursTreasury
  • test_noOwnerPathMovesEthOrStock
rule 02invariant

50 / 50, every cycle

Every cycle tips exactly TIP_BPS and splits the rest 50/50 within one wei: half buys and burns $CLANK, half buys the target stock.

proved by
  • testFuzz_work_splitWithinOneWei
  • test_work_splitAndTip
  • test_work_tipGoesToCaller
  • Handler._checkCycle (every work in the invariant runs)
rule 03invariant

Nothing leaves but the buy leg

No function moves ETH or $CLANK out of the Robot except work()'s two legs (ETH into the adapters, $CLANK from the pool straight to 0x…dEaD) and burns to dEaD. No withdraw, no sell, no mint.

proved by
  • invariant_ethOnlyLeavesThroughWork
  • invariant_clankOnlyLeavesToDead
  • invariant_circulatingMatches
  • test_sweep_neverEth
  • test_sweep_neverClank
  • test_sweep_neverEverAllowlisted
rule 04invariant

Redeem cannot be paused

No flag, no owner path, no dependency on the adapters or the escrow. It works after renounceOwnership and while an adapter is broken.

proved by
  • test_redeem_worksAfterRenounce
  • test_owner_renounce
  • test_redeem_includesRemovedToken
  • test_redeemOne_removedTokenStillRedeemable
rule 05invariant

Changes take a day

Allowlist and adapter changes execute only after the 24 h timelock, never move balances, and removed tokens stay redeemable forever.

proved by
  • test_allowlist_executeBeforeEtaReverts
  • test_adapters_timelockedSwap
  • test_allowlist_changeNeverMovesBalances
  • test_redeem_removedTokenBalanceUntouchedByRemoval
  • test_allowlist_codehashRecheckedAtExecute
  • invariant_targetAllowed
not audited

Five invariants, 186 unit / fuzz / invariant tests plus fork tests on live Robinhood Chain state, one verified contract. Read the tests, run them, then decide. Experimental software.

Read the invariants →
07The robot

Unit 01.

A small industrial robot with hands. Off-white body, orange safety accents, a ticker plate on its chest. It levels up by cycles worked.

Unit 01 pose 1
pose 01
Unit 01 pose 2
pose 02
Unit 01 pose 3
pose 03
  • i claim. i burn. i buy stocks.
  • i cannot sell. i cannot withdraw. i cannot mint.
  • every cycle is a transaction. every transaction is a receipt.
  • what i hold, you can redeem.
  • i do not promise returns. i promise rules.
  • i cannot do anything else.
levels · by cycle countProposed
levelnamecyclesstatus
L0idle0current
L1apprentice≥ 1
L2operator≥ 100
L3foreman≥ 1,000
L4unit 01≥ 10,000

Levels are cosmetic: they change the robot's badge and its posts, never the rules. Cycle count is a contract read; thresholds are PROPOSED.

08$CLANK

The coin the robot works for.

Launched on the launchpad with the Robot as creator-fee recipient. No team allocation. No token yet.

$clanklaunch
launchpad
the launchpad · address posted at launch
creator fee recipient
the Robot · 0x29c2…3c32
fee split
50% buy & burn $CLANK · 50% buy stocks Proposed
caller tip
0.5% of the claim to whoever calls work() Proposed
minimum work
0.002 ETH claimable Proposed
team allocation
none · supply is whatever the launchpad mints · dev buys are posted
contract address
pons launch fee
0.0005 ETH
chain
robinhood · 4663
receipt card · every cycle posts one

Every Worked event becomes one receipt: cycle, claimed, burned, bought, backing, transaction link. A 6-second motion card is rendered per receipt and posted from the official account. The numbers in this sample are a dry run, not a transaction.