Repository navigation
Home
A computed-reputation and staked-slashing layer for autonomous agents, built on ERC-8004. The standard gives agents a canonical on-chain identity and a raw feedback ledger. Sigvara adds the two parts it deliberately leaves out: turning that feedback into one normalized score, and putting slashable capital behind it.
Live on Arc testnet (chain 5042002) with two bonded oracle operators.
Last checked against the code on 3 November 2026 (main 2b4ce3c). The SDK pages describe 1.0.0-alpha.15.
| If you want to | Read |
|---|---|
| Understand the design | System Overview |
| Register an agent and get a score | Getting Started |
| Gate your own API on a score | TypeScript SDK |
| Know how the score is computed | Reputation System Design |
| Run an operator | Oracle Production Deployment |
| See why a number came out the way it did | Scoring Engine |
Six factors, capped at 100. Each is bounded so no single input can carry a score, and the
practical ceiling today is 70: externalScore needs an agent linked to an ERC-8004 identity
whose NFT its operator holds, and none is linked, and propagationScore inherits only counterparties' ERC-8004
standing, so both read zero until linked agents exist.
| Factor | Max | What it measures |
|---|---|---|
feeScore |
20 | Value actually settled to the agent, age-weighted, capped per counterparty |
successScore |
15 | Reported outcomes, against a prior so one good job is not a perfect record |
ageScore |
30 | Tenure as span of paid activity, faded by how recently it traded |
externalScore |
25 | Standing in ERC-8004's registry, which this protocol does not control |
communityScore |
5 | Absence of unresolved flags |
propagationScore |
5 | Inherited trust from counterparties, limited to their ERC-8004 standing |
The protocol has taken a bond on a live deployment. On 3 October 2026 a scheduled drill slashed an agent's stake of 1,000 testnet faucet tokens and zeroed a score of 15: 500 burned, 250 to the victim, 250 to the reporter, summing to the stake to the wei, executed permissionlessly after the challenge window closed. That was the first split: since 2 November 2026 a slash on the testnet burns 75%, credits 25% to the victim and pays the reporter nothing. The drill log records what it proves and what it does not, including that every one of those 15 points was calendar tenure and an unflagged baseline, neither of which costs an attacker anything.
Since 3 November 2026 an adversarial drill has been taking three more agents through the other ways a slash can end: a disputed slash the admin drops, a veto, a withdrawal, and a proposal left to lapse and expire, with the re-file cooldown and every guard checked along the way. Its predictions were written before it ran, every day-0 prediction held, and it ends on 24 November. It does not show that the admin rules well or that the committee files in good faith: one person holds both keys on testnet (slash-drill.md:330-417, slash-drill-log.md:188-267).
Payment evidence arrives by pull as well as push: each operator indexes Transfer logs
itself, so a payment counts because it happened rather than because somebody posted it to
one operator's HTTP endpoint. That closed a 29-point divergence between two honest operators
where nobody had misbehaved and the evidence simply never arrived. Outcomes can travel the
same way now: since 31 October 2026 a payer can sign one over its payment, which needs no
token, and each operator imports the signed outcomes the other took.
- No external security audit. A precondition for mainnet.
- On the testnet, admin and upgrade rights sit on a deployer EOA. The migration script to a Safe and timelock exists and has not been run on a live deployment.
- Both operators are run by the same party. The checker provides a real second computation on separate hardware and a separate RPC provider, but not independent corroboration.
This is early protocol work with real engineering and a documented testnet lineage, not a mainnet product claim. The repository says the same thing in more detail.
These pages are generated from the source tree and then edited for publication: citation
links were repointed at the repository so you can check any claim against the code it came
from, and generator placeholders were removed. Generated at commit
f852051.
The pages describe the code on main, and the Arc testnet proxies run it. All four were upgraded
in place to the contracts on main on 26 October 2026 (fdce1a7), so the guardian pause,
admin-ruled disputes and the rest are live there, and identity and reputation still run that code.
The staking proxy moved to f89b3b9 on 28 October, which added the bound on upholding a dispute,
and to 25c2d59 on 2 November, where a slash pays the committee nothing. The oracle bond proxy
moved to 76bbc97 on 2 November, where an operator's exit time is fixed when it starts to leave.
Every testnet contract is source-verified on the Arc explorer and matches a build of 76bbc97
(tag arc-testnet-2026-11-02b, on the commit that records the upgrade). An upgrade does not rewrite role administrators, so the testnet
keeps the older arrangement: its admin still grants the slasher, committee and staking-core roles,
and the timelocked grants apply to a fresh deployment only.
Treat the code and the repository docs as authoritative where they disagree with a page
here. In particular, docs/ carries the material that is maintained by hand rather than
derived: the whitepaper,
the ADRs, the
divergence log
and the second-operator runbook,
which records what was measured rather than assumed.
- Agent Registration and Lifecycle
- Contract Overview and Architecture
- Economic Security Model and Incentives
- Evidence Verification and Merkle Proofs
- Key Management and Rotation
- Maturity Mechanism and Score Release
- Proposal Workflow and Challenge System
- Score Storage and Data Model
- SigvaraIdentity Contract
- SigvaraOracleBond Contract
- SigvaraReputation Contract
- SigvaraStaking Contract
- Slashing Lifecycle and Dispute Resolution
- Stake Management Functions
- Status Management and Control
- Token and Fee Contracts
- Unbonding Period and Withdrawal Security
- Anti-Manipulation and Security Measures
- Community Flag Processing
- Evidence Sources and Verification
- External Trust Integration
- Merkle Proof System
- Oracle Score Computation
- Payment-Backed Attestations
- Scoring Model and Formulas
- Agent Creation and Key Management
- Agent Operations
- Agent Registration Workflow
- Challenge-Response Authentication
- Gate Access Control
- Integration Patterns and Examples
- SDK Overview and Setup
- Verifier Functions