legend
how to read this
A leg is one hop of the link being raced for. Each Sentinel's legs come from its own sentinel.relayStatus and each worker's searches from the worker's /stats, three times a second; the hop input joins the two.
Where the block is, node by node, is read from each node's log once a second. A thin line says a node has the block, not which peer handed it over: the node does not log the sender.
A Sentinel is in a link once: the winner of a leg sits out the rest. Every Sentinel on a leg runs a search of its own: the hop input holds its operator key, so a nonce one of them finds is no use to another.
Sends go from the demo account to a second demo address. A relayed send makes the workers hash, so do not send while a scenario is timing the relay.
Point at any box for everything that node said.
Each send comes from its own empty account, and all of them are handed to the Sentry in the same moment. One account sends one block at a time, each built on the one before, so the Send tab has one block out. A burst has many. The lab runs one flow at a time: while a burst is out nothing else starts, from any browser.
No burst has run since the console started.
Click a row for the rest of what that node reports: its relay counters, its registry record and its operator.
How the market works
Workers that only hash (tools/powworker), each a step below the one before. A Sentinel asks the workers it lists for a hop's nonce and signs the first that meets the target. A Sentinel that loses the leg hangs up, and the worker stops. Two Sentinels asking one worker for the same hop are two searches: each hop input holds its Sentinel's operator key.
With every search at once a worker has no queue, and each search still runs at the worker's nominal rate: a worker asked for more than this host has cores for delivers late, and its last search says by how much. The asking price is a label: nothing is charged yet.
What the contract stored for one epoch: audit verdicts, hops counted, pay booked.