marks

K/1

what a mark is

PROCEDURE

The record has no loop and nobody runs it.1 It has no way to observe the chain on its own behalf, because a contract executes only when called. Between calls it is inert and knows nothing about what has passed.

A mark is one call. It reads the fast clock and the slow clock in the same transaction and hands the record one pair of readings taken at one instant. That pair is the entire content of the mark. There is no other argument and no other input.

On receiving the pair the record closes whatever interval it can prove from the previous pair, credits that span, and stores the new pair as the reference for the next mark. If nothing can be proven, nothing is credited and the pair is stored anyway.

A mark is therefore not an update in the ordinary sense. It adds an observation. It never replaces one, never corrects one, and never removes one.

read at fast · slow
K/2

who may call it

ACCESS

Anyone may call mark. There is no allowlist, no registration, no minimum balance, and no owner able to grant or revoke the ability. The only requirement is a transaction that reaches the contract.

The caller chooses nothing. There is no parameter that changes which clocks are read, which interval is closed, how much is credited, or where the credit goes. Two callers landing in the same block would produce the same effect on the record.

What the caller does receive is attribution. The address that landed a mark is written beside the interval it closed and stays there. Attribution is the only thing about a mark that is personal, and it confers nothing.

Because access is open, coverage of the record is a matter of who happens to be watching, and that in turn is a matter of what watching pays.

read at fast · slow
K/3

the bounty

INCENTIVE

Marking returns a bounty. The bounty is a pure function of the number of fast blocks since the last mark landed. It depends on nothing else: not on the caller, not on the size of the interval closed, not on the state of the totals.

The function is monotone. The longer nobody looks, the more it pays to look. The moment someone looks it resets to nothing, and the next caller starts again from zero.

The bounty is paid from a treasury fed by the creator share of swaps and nothing else.1 There is no emission, no inflation, and no second source. The treasury can only be as large as trading has made it.

The curve is drawn in full on the math page, because it is a formula rather than a measurement and can be plotted without any chain data at all.

read at fast · slow
K/4

what a mark cannot do

LIMIT

A mark cannot revise an earlier mark, cannot delete one, and cannot reorder the register. There is no write path in the record that removes or rewrites an entry once it exists.

A mark cannot extend a stall backward past the last observation. If a stall began before anyone was present, its beginning is not recoverable, and its proven length is a lower bound. The excess is credited elsewhere and stays there.

A mark cannot advance the form index, cannot move the treasury, and cannot close an interval that has already been closed. Each instruction does one thing and the effects do not overlap.

What a mark can do is narrow the gap between what happened and what is provable. That is the whole of its power.

read at fast · slow
K/5

the cost of looking

FAILURE

Every mark costs gas. When the treasury holds a balance, the bounty offsets that cost and rises with neglect, so a stretch of inattention makes the next observation more attractive than the last.

If the treasury empties, the bounty is zero. Marking becomes a pure cost paid by whoever chooses to pay it, for attribution and for nothing else.

The consequence is mechanical. Fewer marks land, fewer intervals are closed at their true length, coverage falls, and dark grows against witnessed. The record continues to be correct while becoming less complete.

Nothing in the contract prevents this and nothing in the contract repairs it. It is written here so that a low coverage figure is read as a statement about attention rather than about the chain.

read at fast · slow
the register · newest first
fast blockslow blockinterval closedbounty paidaddresstransaction