Ebbline
Ebbline/Whitepaper

Ebbline · September 2026 · The complete rules in one place

Ebbline: a market that answers its own outflow.

The ebb-reading token. One Uniswap v4 market on Ethereum, one signal measured in the pool’s own hook, and a supply that only ever holds or falls.

1Abstract

Ebbline is a flow-reading market system that turns net outflow into permanent retirement of its own supply. All 150,000 EBBL are created once, and every unit of it sits in the market at launch. Each trade leaves behind 2% — the Draw — which gathers in the Shallows, a balance held by the pool’s hook. The hook measures one signal per window: buy volume minus sell volume across the single market. When a window closes on net outflow, an Ebb settles: the gathered Draw buys EBBL back from the market, and the bought units settle in the Silt — removed from the supply at address zero, permanently. When a window closes on net inflow, nothing happens beyond the gathering; nothing is issued, ever. The fee, the window rule and the supply have no setter, and no one can move a holder’s balance, pause the market, or reissue a retired unit.

2The problem, stated once

Token markets have a direction problem. Buying arrives in weather and selling arrives in weather, and between the two the tide goes out. In a plain market nothing answers the ebb: value leaves, and the design’s only plan for outflow is to hope for inflow.

The usual answers make it worse. Issuance against inflow dilutes the holder to pay for growth. Fees paid out to someone convert the holder’s market into someone else’s revenue. Ebbline’s answer is structural: the market keeps a part of every trade and spends it, exactly when outflow is measured, on buying its own token back — and what it buys can never return.

3Design

The system has four parts and one fact around them.

Trades The Draw 2% of each trade The Shallows where the Draw waits The single market one pool, one signal The Silt settled, permanently leaves 2% gathers trades on an Ebb: on outflow, buys back settle

The Draw is what each trade leaves behind: 2%, taken by the hook at the moment of the swap. It cannot be raised, lowered, redirected, or paid out. The Shallows is where the Draw waits: the balance the hook holds. It grows only from trades and shrinks only into buybacks. An Ebb is one settlement: when a window closes on net outflow, the Shallows buy EBBL from the market. It cannot be called early, delayed, or aimed. The Silt is where bought units settle: removed from the supply at address zero in the same transaction, recorded by an event, with no path back. Around the four parts sits one fact: 150,000 EBBL, created once, with no issuance path anywhere in the system.

4Parameters

Every parameter, where it lives, and whether anything can change it
NameValueUnitWhere it livesSetter
Token nameEbblinetextToken contractFixed at deployment
SymbolEBBLtextToken contractFixed at deployment
Total supply150,000EBBLToken contractNo setter
The Draw2% of each tradeThe hookNo setter
The window ruleFixedper windowThe hookNo setter
IssuanceNoneEBBL, everNowhere — no mint pathNo path
Authority over balancesNoneEBBLNowhere — no such functionNo path
PauseNoneNowhere — no such functionNo path
MarketUniswap v4quoted in ETHEthereum mainnetFixed at deployment

5Mechanism

A reader should be able to reimplement the settlement from this section alone.

Per trade. The pool calls the hook on every swap. The hook takes the Draw — 2% of the trade — into the Shallows, and adds the trade’s size to the current window’s tally: buys to one side, sells to the other.

Per window. The window rule is fixed at deployment and has no setter. When a window closes, the hook reads its own tally. The reading is buy volume minus sell volume across the single market. Nothing else is read: no price, no oracle, no external signal.

On net inflow. Nothing happens. The tally resets with the next window; the Draw remains in the Shallows. Nothing is issued against inflow, ever.

On net outflow. An Ebb settles. The hook spends the Shallows buying EBBL from the market at the market’s own price, settles the bought units out of the supply at address zero, and emits an Ebb event carrying the window’s outflow and what was spent and retired. The supply of units falls by exactly what the Draw could buy.

6Worked examples

A window of heavy outflow

StepAmountUnitReading
Buys in the window40ETH+40
Sells in the window55ETH−55
The Draw, 2% of 95 ETH volume1.9ETH of valuegathers in the Shallows
Net flow−15ETHoutflow — an Ebb settles
Settled in the SiltWhat 1.9 ETH boughtEBBLpermanent

A quiet window on net inflow

StepAmountUnitReading
Buys in the window3ETH+3
Sells in the window1ETH−1
The Draw, 2% of 4 ETH volume0.08ETH of valuegathers in the Shallows
Net flow+2ETHinflow — nothing settles

7Failure and edge cases

  • A window with no trades. The tally reads zero. Nothing settles, nothing is issued, and the Draw simply waits in the Shallows. Nothing happens.
  • A window closing on exact zero net flow. Zero is not outflow. Nothing settles.
  • An Ebb call that reverts. A failed buy leaves the Shallows untouched: the Draw remains where it was, the window settles nothing, and the next window is read on its own tally. No state is half-written.
  • An empty Shallows at outflow. If the Shallows hold nothing, there is nothing to spend. The window settles nothing; the reading is still recorded.

8What cannot change

From softest to hardest. A holder controls their own balance: it answers to their key alone, and no function can freeze, move, or take it. The market controls the price: the mechanism answers flow and never targets a level. Nobody controls the rules: the Draw’s 2%, the window rule, and the 150,000 EBBL supply are constants, not storage, so no transaction can rewrite them; the Silt moves in one direction only, because no exit path exists. Changing any of these would require a different contract, and a different contract would be a different product.

9Verification

Every claim in this paper is checkable on the explorer, in the vocabulary of this paper.

  • The supply. Read totalSupply on the token contract: 150,000 EBBL, never rising.
  • The Shallows. Read the hook’s balance at two moments: it grows with volume and falls only into buybacks.
  • The Record. Filter the Ebb events: one per settlement, each carrying the window’s outflow and what was spent and retired. The Console’s Record is a view of this log, nothing more.
  • The Silt. Read the supply at two moments: it never rises. The settlement events enumerate every retirement, each with the amount and the supply after. That pair is the retirement rule.
  • The constants. The verified source is public. The Draw, the window rule and the supply appear as constants; the absence of mint, pause and balance-moving functions is readable in the same file.

10Notation and definitions

TermDefinition
Ebbline / EBBLThe token and its symbol. 150,000 EBBL, created once, all of it in the market at launch.
The DrawWhat each trade leaves behind: 2%, taken by the hook at the moment of the swap.
The ShallowsWhere the Draw waits: the balance the hook holds between settlements.
The readingNet flow per window: buy volume minus sell volume across the single market, measured in the hook.
An EbbOne settlement: on net outflow, the Shallows buy EBBL from the market.
The SiltWhere the bought units settle: removed from the supply at address zero, recorded by the settlement event.
The single marketWhere EBBL trades against ETH: one market on Uniswap v4, on Ethereum.
The RecordOne row per Ebb, rebuilt from the event log; shown in the Console.