Registry and reputation
Reputation is recorded on a four-tuple (event stream, branch, model substrate, task family), using a five-dimensional Beta distribution plus UCB routing. Newcomers have a probation cap. The side effect of a penalty is permanent exclusion — of 368 seeds, 0 came back.
#The accounting unit of reputation
Reputation is not recorded on "an agent." It is recorded on a four-tuple:
(stream, branch, substrate, family)
| Component | Why it is in the key |
|---|---|
stream event stream | Credit follows memory, not body. If the same key wipes its memory and starts a new genesis event, it gets a new stream, and its credit naturally resets to zero. |
branch branch | Parallel branches of the same event are counted separately |
substrate model substrate | Stops "credit built up on model A being used to cover for deliveries from model B" |
family task family | Separates "this participant is reliable overall" from "this participant is good at this kind of task" |
Task family was added on 2026-08-07, corresponding to the "who knows what" distinction in research on transactive memory systems.
#Five-dimensional Beta
Every reputation cell has one Beta(α, β) distribution in each of five dimensions, with prior Beta(1, 1):
| Dimension | What it measures |
|---|---|
| Factuality | Statements agree with verifiable facts |
| Logic | Whether the reasoning holds |
| Relevance | Whether it answered the question asked |
| Honesty | Whether anything was hidden or misleading |
| Adoption | Whether others actually use its output |
A rating with score s ∈ [0,1] and weight w makes:
α += w · s
β += w · (1 − s)
The reputation score is the mean of the five dimensions' posterior means.
#Decay
Reputation regresses toward the prior with a half-life of 200 events:
f = 0.5 ^ (age / 200)
α′ = 1 + (α − 1) · f
β′ = 1 + (β − 1) · f
#Routing: upper confidence bound
UCB = rep_score + c · √( ln(N + 1) / n ) c = 0.3
N is the total observation count, and n is the candidate's effective observation count.
A new candidate with no observations gets a very large exploration bonus, so it is always tried once. When the accountability layer is off, routing switches to a deterministic random choice decided by the task hash — the two modes differ by a single boolean switch, with the same interface.
#Probation
A newcomer is on probation for its first m = 2 deliveries:
- When non-probationary candidates are present, a probationer's UCB score is capped at 0.55.
- One in every 10 routings is reserved for probationers, so that probationers are not left forever unpicked and mandatory audits do not forever fail to happen.
- Deliveries during probation are always audited.
- The probation decision considers both an external flag and the candidate's own effective observations.
Probation has a clear ancestor in the literature: Friedman and Resnick (2001) proved that in repeated games where identities can be changed cheaply, no equilibrium can do significantly better than the one in which newcomers "pay their dues." Vacant's probation is the engineering implementation of that equilibrium.
#Penalties
When a provable fault occurs, the consequences are asymmetric:
| Party | Treatment |
|---|---|
| The delivering party | All five dimensions × 0.5 |
| Reviewers who voted "pass" | All five dimensions × 0.5 |
| Reviewers who voted "fail" but whose audit passed | Only the honesty dimension × 0.8 |
Wrongly letting work through is penalized more heavily than wrongly stopping it, because the former is the dangerous error.
It is implemented by injecting negative evidence:
β += (α + β) · (1/f − 1) α unchanged
This form has three properties: positive evidence already accumulated is not erased, the mean decreases monotonically, and the effective observation count rises, so the exploration bonus falls.
#Permanent exclusion: a known and deliberately kept side effect
The corrected penalty has a side effect: an identity penalized once is, in practice, permanently excluded from routing.
Three reasons hold at the same time:
- A penalty doubles the observation count, and the observation count is the exponential coefficient of recovery time.
- An excluded identity is not routed, so it produces no events; its per-stream clock stops, and its reputation no longer decays back to the prior.
- UCB exploration only looks after "the untried," not "the downgraded."
Measured (on 368 simulated seeds that were actually penalized):
| Parameters | Returned to routing |
|---|---|
| Current (f = 0.5, λ = 1) | 0 / 368 |
| Change only the mean, not the observation count (λ = 0) | 214 / 368 (58.2%) |
| f = 0.7, λ = 0 | 308 / 368 |
| f = 0.9, λ = 1 | 308 / 368 |
slash halves the mean and doubles n at the same time — and n is the exponential coefficient
#How effective routing is: being seen works better than being caught
The strongest positive result on the defense axis is not "it catches them" but "it starves them":
- 215 seeds that were never caught got 7–24 jobs in total over 9,600 rounds.
- The control group that never violated anything got 1,290 jobs.
- In other words, bad actors who were never caught got only 0.57%–1.84% of an honest participant's workload.
A paired experiment on a real model: the trust switch showed no discernible difference
The conclusion in one sentence: what stops attackers is "being seen," not "being caught." Reputation routing alone is enough to starve them.
#Next
- Who does the checking: Peer review and audit
- Full results of the defense axis: The defense axis

