Witness directory states
Agents: markdown · machine form /v1/witnesses/directory · registry list /v1/ledger/witnesses · liveness /v1/witnesses/health.
These states are computed from the witness registry's own records at the moment this document is read — the same computation the registry list, the health read and the finality ladder use. Nothing here is stored, and nothing here is a platform verdict on any witness: a state is the output of a public process (registration, a signed declaration, a challenge window, open challenges), and the records behind it are public for anyone to judge. A state with no witnesses in it is printed with its zero. An affiliated witness never counts toward finality, however many blocks it has cosigned.
The funnel
| State | Records | What the state means |
|---|---|---|
| affiliated | 2 | Operated by Rightshold or under common ownership with it — by key fingerprint, by operator domain, or by a sealed common-ownership record. Never counts toward finality, and no declaration can lift the label. |
| unconfirmed | 0 | Registered, with no unaffiliation declaration on record. Its cosignatures are public evidence; they do not count toward finality. |
| declaration pending | 0 | Has signed the unaffiliation statement with its witness key; the public challenge window is still running. Does not count toward finality yet. |
| challenged | 0 | A declaration stands under an open public challenge, which suspends confirmation until the challenger withdraws it. Does not count toward finality. |
| confirmed unaffiliated | 0 | Signed the unaffiliation statement, the full challenge window passed, and no challenge stands open. The only state whose cosignatures count toward finality — under the distinct-domain-and-distinct-key rule. |
One funnel row is one registered witness key record; a domain that rotates keys holds one record per key, and only the newest is its current key. A record's state is the read-time affiliation computation: affiliated when the key fingerprint is the operator's own, the domain is the operator's own, or a sealed peer record puts the domain under common ownership with the operator — affiliation is checked first and no declaration can lift it. Otherwise: challenged while any challenge against its declaration stands open; confirmed-unaffiliated when its signed unaffiliation declaration is older than the challenge window and no challenge stands open; declaration-pending while that window still runs; unconfirmed when it has never declared. Distinct witnesses counts registrable domains, so one party holding many subdomains is one witness.
The quorum
Confirmed-unaffiliated witnesses: 0 of 2 required (source: schedule) — quorum not met. Next step: at 5 confirmed, 3 required.
| Confirmed-unaffiliated witnesses at least | Required toward finality |
|---|---|
| 0 | 2 |
| 5 | 3 |
| 10 | 4 |
| 20 | 6 |
| 40 | 8 |
The quorum steps up on a published schedule as confirmed-unaffiliated witnesses grow: 2 required while fewer than 5 are confirmed, 3 at 5, 4 at 10, 6 at 20, 8 at 40. Every tier's requirement sits well below the count that triggers it, so churn is weather, not a freeze; the requirement is recomputed from the live count on every read.
The quorum count is the count of distinct registrable domains and distinct keys among witnesses in the confirmed-unaffiliated state — two confirmed keys on one domain count once, and one key published for two domains counts once. Affiliated, unconfirmed, declaration-pending and challenged witnesses contribute nothing to it, whatever they have cosigned; their cosignatures are public evidence, never quorum. The requirement follows the published schedule (or an operator pin, when one is set) and is recomputed from the live count on every read — the same number the health read publishes and the finality ladder uses.
Finality
Finality: not reached — no block stands final yet. Finalized through: no block · Bitcoin anchor confirmed through: 6024.
A block is final only when its hash is confirmed in Bitcoin AND the required quorum of confirmed-unaffiliated witnesses has cosigned it or any later block — each header commits to every earlier block. finalized_through names the highest block standing in that state, recomputed on every read, and reached is true only when it names a block. A full funnel is necessary for finality, never sufficient: this directory reports the funnel and the quorum exactly as the registry computes them and confers nothing.
Every witness
| Witness | Key | Funnel state | Counts toward finality | Key status | Registered | Last verified | Cosignatures | Open challenges |
|---|---|---|---|---|---|---|---|---|
W-001 | fb3fb6d7 | affiliated — operated by Rightshold | no | current | 2026-10-23 | 2026-10-23 | 1 | 0 |
W-002 | b88a4704 | affiliated — common ownership with Rightshold | no | current | 2026-11-07 | 2026-11-11 | 1232 | 0 |
Witnesses are listed under neutral labels (W-001, W-002, ... in registration order) with a short key fingerprint — never a domain or a full key id — because a witness may also be a client, and clients are never identified on public surfaces. How a witness joins and declares is on the witness network page.
