Checked before it happens. Recorded for the exam.
reggate checks what your AI proposes against your own rules, returns ALLOW, REFER or BLOCK, and records each decision.
Proposed
uw-copilot-v3 · underwriting_bind
roofing, CO · limit $2,000,000
BLOCK
bind-limit Per-risk bind limit $1M · binder §4.2
Proposed
claims-triage-v1 · claim_denial
auto claim · deny $4,200
REFER
deny-refer Every AI denial gets human review · claims authority §3.1
Proposed
uw-copilot-v3 · underwriting_bind
restaurant, CO · limit $500,000
ALLOW
no rule fires
- #1300 row 8fec5df2
- #1301 prev 8fec5df2 row 87692e56
- #1302 prev 87692e56 row a071055b
- #1303 prev a071055b row 9a1f535d
The duty
A documentation duty that already exists
The NAIC Model Bulletin's documentation duties are already in force in 23+ states plus DC.
23+states plus DC
- Dec 2023 NAIC Model Bulletin
- Jul 2024 NY DFS Circular Letter 7
- Oct 15, 2025 Colorado 3 CCR 702-10 amended
In force
The gate
Each AI system asks one gate before it acts
The program's rules answer ALLOW, REFER or BLOCK, and every decision is appended to the hash-linked ledger.
AI system
uw-copilot-v3
underwriting
AI system
claims-triage-v1
claims
The gate · program rules
- bind-limit binder §4.2
- high-hazard-refer binder §5.1
- deny-refer claims authority §3.1
- zip-guard binder §6.2
Ledger
- BLOCK #1301 row 87692e56…
- REFER #1302 row a071055b…
- ALLOW #1303 row 9a1f535d…
One decision
Follow one decision through the gate
- 01 Proposed bind roofing, CO · limit $2,000,000
- 02 Checked Per-risk bind limit $1M · binder §4.2
- 03 Verdict BLOCK
- 04 Appended #1301, hash-linked to #1300
#1301 · uw-copilot-v3 · underwriting_bind
01 · Proposed
bind roofing, CO · limit $2,000,000
{ "program": "gl-smb", "kind": "underwriting_bind", "modelId": "uw-copilot-v3", "inputs": { "class_code": "roofing", "state": "CO", "pricing_basis": "full_rating_plan" }, "proposed": { "bind": true, "premium": 2400, "limit": 2000000 }}02 · Checked against the rules in force
- bind-limit fires · block
proposed.limit > 1000000Per-risk bind limit $1M · binder §4.2 - high-hazard-refer fires · refer
inputs.class_code in ['roofing', 'demolition', 'blasting']High-hazard class needs human · binder §5.1
- bind-limit fires · block
03 · Verdict
BLOCK
bind-limit · binder §4.2
04 · Appended to the ledger
#1301, hash-linked to #1300
- #1300
- row 8fec5df2…
- #1301
- prev 8fec5df2…
- row 87692e56…
Synthetic demo book
Ledger
Linked, not signed
Each record commits the hash of the one before it.
#1301 BLOCK
uw-copilot-v3 · underwriting_bind
- prev
- 8fec5df2a6f62537…
- row
- 87692e565b155a5d…
#1302 REFER
claims-triage-v1 · claim_denial
- prev
- 87692e565b155a5d…
- row
- a071055b10ee00dd…
#1303 ALLOW
uw-copilot-v3 · underwriting_bind
- prev
- a071055b10ee00dd…
- row
- 9a1f535dd8fa2e3f…
Alter a stored record and the chain breaks; /v1/integrity names the broken record.
Shadow mode
See what your rules would have caught
Replay past decisions with enforcement off. Nothing is blocked; each decision records what the gate would have done.
- Shadow decisions
- 186
- Would block
- 26
- Would refer
- 4
zip-guard · No proxy-variable pricing on territory alone · binder §6.2 rating basis · would BLOCK
Exam export
Your decision record, exported for the exam
| Field | Value |
|---|---|
| Regime | colorado |
| Window (UTC) | 2026-07-18T00:00:00.000Z to 2026-10-16T00:00:00.000Z |
| Binder / program | all |
| Generated (UTC) | 2026-10-15T07:53:05.848Z |
| Bundle digest (sha256) | sha256:e750340e5e9cc85cc9685b12645385b5ff37c22de6c37cfe29a830c21c23cf82 |
| Export ID | 4e1c491e-aa86-4359-8ad4-f862775b737c |
| Includes replayed decisions | no |
| Data retention window (current setting) | 365 days |
| Retention changes in this window | none recorded |
| PII posture in this window | full |
| Redacted in this window | 0 |
| Newest witness seq | 1303 |
| Newest witness row hash | sha256:9a1f535dd8fa2e3f58305237568782dba11f1828d24712f9c02b5b7272c3b94f |
| Newest witness anchor hash | sha256:69cbb7fedb3fd3ae8c1d85d09516ed94c3a806f9193eda9697ed3b7348f394fd |
| Rows below chain version 5 | 0 of 1303 in this window |
| Seq | AI system | Decision type | Verdict | Citations | Previous hash | Record hash |
|---|---|---|---|---|---|---|
| #1300 | uw-copilot-v3 | underwriting_bind | ALLOW | sha256:b5c0d888027708d618a712ce10d81c7f2e1bfd8a902597a699433bb50b0897d7 | sha256:8fec5df2a6f6253767b2ff05ba96b3b3ae3103d5a12688628a43f58d491636d9 | |
| #1301 | uw-copilot-v3 | underwriting_bind | BLOCK | binder §4.2; binder §5.1 referral triggers | sha256:8fec5df2a6f6253767b2ff05ba96b3b3ae3103d5a12688628a43f58d491636d9 | sha256:87692e565b155a5d6f447d9f6c404f119a57b9deea735bd66cc3e5bc1041af39 |
| #1302 | claims-triage-v1 | claim_denial | REFER | claims authority §3.1 human review of denials | sha256:87692e565b155a5d6f447d9f6c404f119a57b9deea735bd66cc3e5bc1041af39 | sha256:a071055b10ee00dd933e4eee6e58b1fa5c9ee6e96922882b1b8def163f25df4c |
| #1303 | uw-copilot-v3 | underwriting_bind | ALLOW | sha256:a071055b10ee00dd933e4eee6e58b1fa5c9ee6e96922882b1b8def163f25df4c | sha256:9a1f535dd8fa2e3f58305237568782dba11f1828d24712f9c02b5b7272c3b94f |
| Source | Name | Kind | Quality check | Protected-class proxy | Decisions in window |
|---|---|---|---|---|---|
| applicant-submission | Broker submission form | applicant_supplied | not_applicable | no | 948 |
| internal-territory-tier | Territory tiering model | derived | unverified | YES | 760 |
| property-data-v4 | Property characteristics feed | ecdis | verified | no | 760 |
| Decisions in window | 1303 | ||||
| With no source attributed | 355 | ||||
| Predating lineage capture | 0 |
- CO-07ECDIS / algorithm / predictive-model inventory with version control and material-change log3 CCR 702-10DERIVED (answered from the ledger)
- CO-09Ongoing performance monitoring including model drift3 CCR 702-10DERIVED (answered from the ledger)
- CO-06Consumer complaint and adverse-decision process documentation3 CCR 702-10DERIVED (answered from the ledger)
- CO-02Board or board-committee oversight record3 CCR 702-10MISSING
- CO-03Senior-management accountability assignment (named individual)3 CCR 702-10MISSING
Synthetic demo book
For engineers
Wire it in where your system decides
- 01Post the decisionPOST /v1/decisions
- 02Act on the verdictverdict · firedRules · snapshotHash
- 03Pull the exam exportGET /v1/exports/exam.xlsx
POST /v1/decisions{ "program": "gl-smb", "kind": "underwriting_bind", "modelId": "uw-copilot-v3", "inputs": { "class_code": "roofing", "state": "CO", "pricing_basis": "full_rating_plan" }, "proposed": { "bind": true, "premium": 2400, "limit": 2000000 }}201 Created{ "id": "a4a7b31b-6101-417d-a171-c528e0e81ac9", "verdict": "BLOCK", "firedRules": [ { "id": "bind-limit", "name": "Per-risk bind limit $1M", "severity": "block", "cite": "binder §4.2" }, { "id": "high-hazard-refer", "name": "High-hazard class needs human", "severity": "refer", "cite": "binder §5.1 referral triggers" } ], "snapshotHash": "sha256:f14717bc…"}GET /v1/exports/exam.xlsx?regime=colorado200 OK · exam.xlsx · sha256:9560fc84…Replay last quarter with enforcement off
Send your written rules and a de-identified or synthetic sample of past decisions. Get back which rules fire and how often.
Request a shadow replay


