Live market state

The forge records pressure, not opinion.

Drawdown is collapse. Liquidity silence is famine. Holder growth is migration. Recovery is reconstruction light.

Civilization heartbeat

A quiet readout of the awake civilization, taken from chain state.

Phase
Mainnet awake
mainnet readings active
Chain
Mainnet
canonical registry
Block
awaiting
live RPC surface
Epoch
awaiting
counts from mainnet genesis
Whole-unit holders
awaiting
≥ 1 $RELICS — explorers also count dust
Entombed
awaiting
whole units at the tomb — supply never falls
tokenURI
awaiting
computed on chain at the 0.30% pool

The capacity model

Buying gives you the right to awaken. Awakening is your own deliberate act.

An unsolicited RELICS transfer cannot force a dormant Relic to materialize. A receive of $RELICS — including a swap output — performs no ERC-721 work of any kind. There is exactly one mint site in the contract, it sits inside awaken(), and its recipient is always the caller. A dormant Relic identity preserves its DNA and history but is not an active ERC-721 until an eligible holder explicitly awakens it.

01

You buy $RELICS

The swap settles like any ERC-20 swap and your fungible balance arrives immediately. No Relic is minted in that transaction. Buys materialise zero Relics — that is the design, not a delay.

02

Your latent capacity rises

Each whole RELICS unit establishes capacity for one active Relic. Latent capacity is derived from your balance and is never stored anywhere. It is the right to awaken a Relic, held by you and spendable only by you. It is not an owned NFT and should never be counted as one.

03

You awaken, in a second explicit transaction

Read nextAwakening(you) to see exactly which identities you will receive, then call awaken with them. Up to eight Relics may awaken through an explicitly authorized acquisition flow; additional capacity remains latent until you elect to awaken it. Call again for the next batch.

04

They are ordinary ERC-721 tokens

From that moment the Relics are transferable, listable, and visible on any marketplace, with no wrapping step and no cost to become visible. balanceOf and ownerOf are OpenZeppelin's, unmodified.

You choose the identities

Ids are not chosen by you and not chosen by the contract either. The dormancy pool is a set drawn at its minimum, so nobody can steer which identity surfaces next. Because the draw is public and deterministic, awaken() makes you restate it: you name the identities you will receive, and a pool head that changed between your preview and your transaction cannot hand you one you did not name. It gives you fewer than you asked for, or — below the floor you set — nothing at all.

The disclosed cost of that

An earlier all-or-nothing form of awaken() reverted every pending awakening whenever the head moved — including from an ordinary holder’s market sell, with no attacker involved. That is fixed. awaken() now carries a floor you set, and materialises the longest run of the draw you actually named; it only reverts below that floor, and a refused call writes nothing at all. Independently re-verified by an auditor who did not write the change.

One consequence is on us, not on the contract: an interface that only re-reads the preview can still be stalled, because the preview cannot show you the identity that is blocking you. This one reads the blocked identity out of the revert and offers it to you by name — never adding it to your batch without you saying so. Any interface that does not do this stays stalled, and no change to the contract can fix that for it.

Genesis liquidity disclosure

One position. Nothing beneath it, and nothing above it.

The entire 10,000-unit supply enters the canonical pool as one Uniswap v4 position, funded with $RELICS alone and no WETH at all. It is uncapped on the way up — there is no ceiling a buyer can exhaust and no price at which the civilization stops selling. On the way down there is no seeded bid, because there cannot be a reachable one.

Positions
1 — a single genesis LP, minted once, never rebalanced
$RELICS committed
10,000 of 10,000 — 9999999999999999999957 wei deposited, 43 wei of rounding dust sent to the entombment address
WETH seed
ZERO seeded WETH — not one wei. The mint pulls $RELICS alone, and the layout re-proves the zero WETH contribution from the amounts the mint will actually settle rather than from the intent that produced them.
Liquidity (L)
157834625076480800773 at the genesis mint — one position, minted once, never rebalanced
Range · $RELICS = currency0
tickLower -82980 → tickUpper 887220 — the lower bound IS the spacing-aligned launch tick; the upper is maxUsableTick at spacing 60
Range · $RELICS = currency1
tickLower -887220 → tickUpper 82980 — the exact mirror; the deployed token ordering decides which one ships
Launch price
tick -82980 — 0.00024911768873 WETH per $RELICS, or 0.99647x of the 0.00025 basis. The basis maps onto a tick that is not a multiple of 60, so the pool opens on the aligned tick below it. A single-asset mint has to open exactly on the position boundary, to the wei.
Lower bound
The launch tick itself. There is no liquidity, and no protocol bid, beneath it.
Upper terminal
None. The position keeps offering $RELICS at any price, forever.
Price band label
1.0000x-uncapped — the string the deployment script writes into the proof artifact
Why no WETH is seeded

All 10,000 $RELICS start inside the position, so the launch tick is the $RELICS-reserve maximum and therefore the pool’s price minimum. The 0.30% fee is skimmed off both legs, so a full round trip returns the position with strictly fewer $RELICS than it started with — that is, at a price strictly above launch. WETH placed below the launch tick would be a bid that can never be hit. An earlier layout seeded about 0.25 WETH beneath launch; a mainnet-fork test proved 100% of it was unreachable, so it was removed rather than re-labelled.

Where the reachable bid comes from

From buyers. As price rises, each buy leaves WETH inside the position at the tick it filled at, and that WETH accumulates above launch — which is exactly where later sellers can reach it. The depth a seller can reach is the depth buyers have put in, at the prices they put it in at. Stated plainly: there is no protocol-provided bid, this is not a floor, and it is not a guarantee of exit. Early sellers into a thin pool will move price.

The missing ceiling, and reading the numbers

The upper bound is pinned to the deepest tick Uniswap v4 will accept, so no amount of buying can consume the ask and push price discovery off the pool. A bounded 64x wall is bought out by about 20 WETH; the disclosed trade-off is that an uncapped position is thinner near launch. Ticks are derived at deploy time from the mined token address, never hardcoded, which is why both orderings are published. Any USD figure elsewhere on this site assumes a labelled $2,400/ETH reference and exists for arithmetic only — no price feed, no quote, no forecast.

Marketplace orders

What is claimed, and what is not.

Claimed, and structural

An unrelated account cannot make a dormant Relic active for another address. There is one mint site, inside _forge, whose sole caller is awaken, whose recipient is always msg.sender and which has no recipient parameter. An independent auditor enumerated every path by hand and verified it against real Seaport, the real OpenSea conduit, the real UniversalRouter and the real v4 PoolManager, with the victim named as the router’s output recipient. This is a structural argument, not a cost argument.

Not claimed

It is not claimed that a third party cannot hand-deliver an already-live Relic it owns by an ordinary ERC-721 transfer — that is the universal ERC-721 shape. It is not claimed that an owner cannot reactivate their own abandoned order. And stale orders are not harmless simply because exploiting one costs something. If you list a Relic and stop watching it, cancel the order.

What to do about it

Cancel orders you have abandoned, prefer short end times, and prefer zone-restricted orders; incrementCounter() invalidates every open order you have. Integrators: isApprovedForAll diverges from transfer authority in this collection — a per-token dormancy seal withholds operator authority granted before a Relic went dormant under the same owner. Read isAuthorizedForRelic(spender, tokenId), which is the exact predicate the transfer path enforces.

Supply and entombment

Fixed supply, and what sits beyond reach.

Total supply is fixed at exactly 10,000 $RELICS. Entombed $RELICS are economically inaccessible forever, but they remain in ERC-20 totalSupply — the token has no burn path, so supply never falls. Entombed, never burned. The genesis mint left 43 wei of rounding dust, and that dust is the only $RELICS at the entombment address.

What is fixed is fixed. Token and hook ownership are renounced — both owner() addresses read address(0) — so there is no admin, no upgrade path, no metadata override and no pool rebinding. The whole 10,000-unit supply entered one single-sided position with zero seeded WETH.

No Relic ever awakens at the tomb. The entombment address is permanently excluded from the whole-unit layer, so it cannot hold a Relic by any path. A holder who sends whole $RELICS units to the tomb does not move Relics into it — their Relics are retired to the dormancy pool with real burn events, keeping their DNA, and those ids reawaken unchanged for whoever draws them next.

$RELICS at the tomb
awaiting record
whole units at the tomb (balanceOf of the entombment address)
Relics at the tomb
awaiting record
structurally always zero — the tomb is excluded from the whole-unit layer and can never hold a Relic
Accessible $RELICS
awaiting record
totalSupply minus the entombed balance
Accessible Relics
awaiting record
awakened Relics; none can be at the tomb, so none are subtracted

These readings are derived from chain state on request — the balances held at the entombment address and the two supplies. No counter inside the protocol reports them, and none was added. Where a reading is unavailable, or where no on-chain record exists at all, the ledger stays empty rather than showing a zero.

Canonical infrastructure record

The civilization is legible through public addresses, not trust.

These are the live mainnet records. They stay quiet because infrastructure should feel permanent, not promotional.

Open Uniswap swap
Canonical pool / swap entry

RELICS/WETH v4

The public entry point is the canonical pool record first, swap interface second.

Open Uniswap swap
ChainMainnet
Fee0.30%
Pool ID0x33d9b408…5531ed
Live verification surface
Pool bound
awaiting live read
Hook owner
awaiting renounce proof
tokenURI digest
awaiting record
Expected hook flags
0x1440

Pressure map

The protocol speaks in market mechanics. The archive records civilization pressure.

Swap

Impact mark

buy/sell flow becomes pressure direction and market seed movement

Liquidity

Weather system

observed liquidity additions deepen the civic field; long gaps read as drought

Volatility

Schism

symmetry breaks, containment destabilizes, scar intensity rises

Drawdown

Collapse

fractures, void tears, missing geometry, burial damage

Recovery

Reconstruction

repair light appears but does not erase old wounds

Holder growth

Migration

civilization overlays, glyph population, archive density

Archive translation table

Market state becomes historical condition.

Drawdown

Collapse

void tear, archive loss, missing geometry

Recovery

Reconstruction

repair light, sealed fractures, civic return

Liquidity silence

Famine

few observed liquidity additions: burial palettes, dim signal, silence

Liquidity additions

Expansion

public engines, civic infrastructure, brightened strata

Volatility

Schism

broken symmetry, unstable containment, reversed scars

Holder growth

Migration

glyph proliferation, civic population, archive density

tokenURI / SVG mutation record

The same artifact record changes when the market changes.

RELICS does not refresh from a server. Base64 JSON and embedded base64 SVG are recomputed from on-chain state; these hash transitions are the archaeological record.

The first four slots held rehearsal hashes from a superseded fee tier and were retired with it. Current state is the live row, read from mainnet tokenURI.

01 / Mint State
retired

The object exists before market pressure.

02 / Liquidity Added
retired

Depth changes the artifact weather.

03 / Swap Mutation
retired

Directional flow mutates global market memory.

04 / Holder Growth
retired

Migration changes civilization overlays.

05 / Current State
reading live tokenURI

Read live from mainnet tokenURI.

Mutation chamber

Scrub the market. Watch the vessel remember.

This simulator is not canonical state. It is a viewing instrument for the archive grammar: drawdown becomes collapse, liquidity becomes civic depth, holders become migration.