Machine-readable standards for evaluating whether public digital infrastructure can be corrected, contested, and controlled by the communities it serves.
| Asset | Description |
|---|---|
| dpi-infrastructure.json | DPI operator manifest |
| dpi-audit.json | DPI assessment |
| epi-infrastructure.json | EPI LWD-R manifest |
| epi-audit.json | EPI assessment |
This protocol defines schemas for:
- DPI (Digital Public Infrastructure) — identity, payments, data systems
- EPI (Epistemic Public Infrastructure) — AI/ML systems in public services
Two independent documents per system:
infrastructure.json— Operator's declaration of system structureaudit.json— Independent auditor's verification
A system is corrigible only if it passes ALL five tests:
| Test | Question |
|---|---|
| EXIT | Can users leave without penalty? |
| CODE | Is the source code inspectable? |
| AUDIT | Can independent parties verify claims? |
| GOVERN | Do affected communities have binding input? |
| FORK | Can the system be replicated independently? |
Failure of ANY test = Structurally Incorrigible
- Create
infrastructure.jsonusing schema - Declare your corrigibility claims
- Sign with your organization's key
- Publish at
/.well-known/corrigibility/infrastructure.json
- Fetch and hash operator's manifest
- Conduct independent verification
- Create
audit.jsonwith results - Sign and publish
See docs/llm-instructions.md for machine reasoning protocol.
Both protocol roles may be operated by agents. AGENTS.md
states the invariants: record-borne origination (role_execution),
answerability terminating at a sanctionable party, fresh grants, and,
for auditors, checker independence in operator and in substrate.
The schemas are the interface; the papers are the specification. docs/failure-modes.md indexes common operator evasion patterns against the tests they degrade and the fields that catch them. Hand-written assessment rule files from the 3.0 era are preserved under archive/skills-v3-era/.
| Tier | Use Case | Requirements |
|---|---|---|
| trivial | Translation, summarization | Action boundaries, closed APIs permitted |
| decision_support | Search, RAG over govt data | Open weights, local data storage |
| high_stakes | Policing, welfare, courts | Full verified LWD-R, accountable-authority checkpoint |
# Install runtime deps
pip install 'jsonschema[format]>=4.18' referencing jcs
# Validate a manifest (auto-detects DPI/EPI × infrastructure/audit)
python tools/validate.py path/to/infrastructure.json
# RFC 8785 SHA-256 hash for chaining/anchoring
python tools/hash.py path/to/infrastructure.json
# RFC 8785 canonical bytes for signing
python tools/canonicalize.py path/to/infrastructure.jsonCurrent: 3.1 (July 2026 paper alignment — see CHANGELOG.md; 3.0 documents remain valid).
Schemas anchor every field to a specific paper section. Canonicalisation is RFC 8785 (JCS), signatures are Ed25519 over a W3C DID-resolved key, and binding-authority claims (Rule A.9) are enforced structurally via JSON Schema conditionals.
See PROTOCOL.md for versioning rules.
| Resource | Link |
|---|---|
| Papers | corrigibility-framework |
| Website | anivar.net/corrigibility |
CC0 1.0 (Public Domain)
Anivar A Aravind · ORCID: 0009-0009-8995-0005