Reliability-weighted consensus
Every agent gets a confusion matrix learned from the data, and its votes count in proportion to its
estimated reliability while the true labels are inferred, in one coupled estimation.
A reliable minority can overrule an unreliable majority, instead of letting the loudest bloc
decide by headcount.
Reliability learned from votes alone
Expectation-maximization recovers each agent's accuracy with no answer key, from the structure of agreement
and disagreement across many items, alternating label and reliability estimates until convergence.
You never label which agents are good; the model finds out, so it works on data you have not
graded.
Soft and hard inference
The soft mode keeps the full posterior for a calibrated confidence; the hard mode (Fast Dawid-Skene)
collapses each step to its argmax for speed when calibration is not needed.
Trade a little calibration for throughput with a single option, instead of swapping
libraries.
Per-agent reliability audit
The estimated confusion matrix and a single accuracy score are first-class outputs, with per-class accuracy
read straight off the diagonal.
You can find the rubber stamp, the contrarian, and the silently-degrading model in your
fleet, instead of trusting them all equally.
Calibrated confidence, not a tally
Every verdict carries the full posterior over labels, and the winning probability is a calibrated
confidence you can threshold, route on, or escalate from.
You act on a probability you can trust, instead of a raw fraction of votes that does not mean
what it looks like.
Measured calibration
Calibration is measured by simulation, drawing a fleet from known reliabilities, fitting the model, and
scoring accuracy and Brier against the truth, not asserted.
You can check the confidence matches the empirical accuracy under your regime, instead of
trusting an unverified promise.
Tamper-evident audit
An append-only log of every consensus verdict and decision, with a SHA-256 hash-chain you append
to and verifyChain via the Web Crypto API.
Prove a verdict was reached on the recorded votes, in Node, edge runtimes, or the browser,
when a decision is questioned.
Online updates and snapshots
Observe votes as agents report them and query at any time; the fit is lazy and the state is just the label
space and the votes, so a snapshot round-trips through JSON with fromSnapshot.
Consensus survives restarts and moves between processes as plain JSON, with no hidden state
and no database required.
Independence diagnostic
The built-in diversity check measures the error correlation across the fleet, reports the effective number
of independent voters, and warns when the agents fail in lockstep, the assumption Dawid-Skene needs but
does not police.
An inflated confidence from correlated, near-identical models is caught and can be
discounted, instead of trusted because the votes happened to agree.
Streaming with forgetting
A streaming model keeps running sufficient statistics and folds each batch in with a warm-started EM step,
with optional exponential forgetting so the model adapts when an agent's accuracy drifts.
Reliability evolves with the data and tracks a degrading agent, instead of averaging its
decline away or re-fitting the whole history every time.
SLSA provenance
Every published version signed with npm publish --provenance through GitHub Actions OIDC.
Lockfile committed, zero required runtime dependencies, node-free core.
Verify in one command that the tarball you installed was built from the source commit you
trust.