System
Architecture
Three layers: proposal, adjudication, human gate. Deterministic logic stays out of policy language.
Proposal layer (untrusted)
The LLM only stages facts. It never decides, so the model can be swapped without drifting decision semantics.
Adjudication layer (deterministic)
Input is rendered to RDF, SHACL checks evidence shape, then OPA/Rego decides. SLA hours and date math are precomputed upstream; OPA only judges.
Human gate
Escalate never self-heals: it parks in the human queue until a named reviewer signs off. Decisions and reviews both chain.
Traceability
Each rule cites a real source URL; each instance carries sourceURL, verifiedDate, confidence. Unknown sections are marked pending legal review, never invented.
Web layer
This console is a thin front end: /api/check and /api/ledger/verify proxy to backend /v1 and fall back to mock, so demos survive a dead API.
Documents
ADRs, gap analysis and pack authoring rules live in the repo docs/ directory; the API contract is policy/schema/input-v0.schema.json.
- docs/EVOLUTION.md
- docs/gap-analysis.md
- policy/schema/input-v0.schema.json
- README.md