Skip to content
Rulebook 0.4.0 · effective Standards CD-0 · OS-1 · OS-2 · OS-3
Public record

Record

A record is a party's history of outcomes under Recourse. It is never edited: a correction is a new entry, and no party can remove an entry from it.

Partypty_example
Snapshots0 — records are not built
Metrics15
Part 1
#status

Status

What this page is today, stated before anything else on it.

No record

Party records are specified in the Rulebook and reserved in the workspace as packages/records; they are not built. No record is published at this address or any other, and this page will not render sample figures while that is true. What follows is the specification the first published record will meet.

What is built and what is not is listed on the front page, counted from the repository at build time rather than asserted.


Part 2
#metrics

The metrics

Each metric publishes overall and per standard, over the trailing 90 days and for the lifetime of the party. The value column is a dash because nothing has been counted, and a dash is the honest value.

Record metrics15 metrics · 0 snapshots
MetricValueUnit, and what it counts
commitments_total—count. Commitments this party was a side of, counted from the event that funded each. A link opened and never signed is not a commitment.
committed_value_cents—integer cents, USD. The value this party committed to or was committed to. Never a float.
outcomes_claimed—count. Units this party claimed against a standard.
outcomes_verified—count. Claimed units that met the standard they were claimed against.
first_pass_rate—share, 0 to 1. Claimed units that passed on first submission, over units claimed.
rejected_rate—share, 0 to 1. Claimed units that failed the standard, over units claimed.
on_time_rate—share, 0 to 1. Deliverable commitments only: deliverables submitted inside the deadline the terms set, over deliverables due.
disputes_raised—count. Disputes this party filed.
disputes_against—count. Disputes filed against this party.
disputes_won—count. Disputes ruled in this party's favour, whichever side filed them.
disputes_lost—count. Disputes ruled against this party.
appeal_overturn_rate—share, 0 to 1. Panel decisions that reversed a ruling involving this party, over panel decisions. It publishes either way.
avg_time_to_evidence—seconds. From the evidence window opening to this party's last artifact. Waiting is measured against the party that owes the evidence.
bond_escalations—count. Times a dispute or appeal bond escalated under the schedule the terms set.
record_since—ISO 8601 UTC. The timestamp of this party's first event. A record starts when the party does.

Snapshots

A record will publish as signed snapshots, taken daily and on every sealed commitment, so a reader can hold yesterday's copy against today's.

Snapshot envelopecanonical JSON · SHA-256 · Ed25519
{
  "record":    { … the metrics above, overall and per standard … },
  "hash":      "sha256:<hex of the canonical record>",
  "signature": "ed25519:<hex over the hash>",
  "key_id":    "which published key signed it"
}

The record is canonicalized (RFC 8785), hashed with SHA-256, and signed with the Recourse record key. The public keys are published at /.well-known/recourse-keys.json on the API origin, so anyone will be able to recompute the hash and check the signature without asking Recourse.


Part 4
#scope

Consent scope

A party chooses how much of its record is public. The scope changes what strangers see; it never changes what a counterparty sees.

Public scopes3 scopes · rule C2
ScopeStrangers getWhat that means
counts_and_ratesall metricsThe full table above, overall and per standard.
counts_onlycountsTotals without the rates derived from them.
privatenothingThe address answers, and says the record is private.

A counterparty to a live commitment always sees the full figures, whatever the public scope. That is rule C2, not a setting — and names of counterparties are never public without both parties’ consent.

Record — Recourse