● Verified
Ed25519 · RFC 8032
Signed by
y6F3rt10CEcSakCrnJIYkGymA66x3VXm0zCWbPjRxP8=Trust anchor
y6F3rt10CEcSakCrnJIYkGymA66x3VXm0zCWbPjRxP8=Entry signature verifies under the operator's published Ed25519 trust anchor. Hash chain matches: prevHash links to entry #5.
Hash-chain context
prevHash
62ba591b4ba97b0c93410aca4bb0dd719b6de4ada98b630ef17c5ad30ff640d6this entry · hash
707176d7cb205843a36487deca897c4849bf612a34720f087ec69a6cf4495c54next.prevHash (= this.hash)
707176d7cb205843a36487deca897c4849bf612a34720f087ec69a6cf4495c54Decision summary
Category
router
closed enumModel identity
anthropic
claude-sonnet-4-5-20250929 · v2026-05-01Latency
121 ms
within spec.maxLatencyMsSchema valid
✓ yes
Reviewer verdict
—
Fallback triggered
no
OTS anchor
covered by later head
Cryptographic commits (SHA-256)
specHash
5b05721a66c6c11d9cf1761a50485b486ffd0e628794651a76df5e05e78e810cinputHash
72528408c5c4e743c7127c1769c0f8040617699c575be8fbd407ab61f774c5ccPII-safe · raw input never recorded
outputCanonicalHash
8ef5f84c147c5448b692984cbd6eaace5753c71f07d594cf9ef19901f91d726cschema-projected; not the raw text
Regulatory questions this entry answers
| Field | Mandate | Answers |
|---|---|---|
L12 entry exists at all | AI Act Art. 12 (record-keeping) | Was each high-risk AI output produced under a declared schema? |
attestation.signature | GDPR Art. 5(1)(f), Art. 32 (integrity) | Has this record been tampered with? |
reviewerVerdict | GDPR Art. 22, AI Act Art. 14 | Did a human review the decision when required? |
fallbackTriggered | AI Act Art. 15 (accuracy + robustness) | When the model failed, did the system fall back safely? |
inputHash | GDPR Art. 25 (data minimisation) | Raw input never recorded — only the SHA-256 hash. |
modelIdentity | AI Act Art. 13, PSD3 vendor diligence | Which exact model version made this decision? |
Raw L12 entry (canonical form v1)
{
"id": 6,
"recordedAtMs": 1747049405000,
"recordedAtIso": "2025-05-12T11:30:05.000Z",
"productId": "civicgate",
"specId": "civicgate-message-router",
"specHash": "5b05721a66c6c11d9cf1761a50485b486ffd0e628794651a76df5e05e78e810c",
"inputHash": "72528408c5c4e743c7127c1769c0f8040617699c575be8fbd407ab61f774c5cc",
"outputCanonicalHash": "8ef5f84c147c5448b692984cbd6eaace5753c71f07d594cf9ef19901f91d726c",
"category": "router",
"modelIdentity": {
"provider": "anthropic",
"model": "claude-sonnet-4-5-20250929",
"version": "2026-05-01"
},
"latencyMs": 121,
"schemaValid": true,
"reviewerVerdict": null,
"fallbackTriggered": false,
"prevHash": "62ba591b4ba97b0c93410aca4bb0dd719b6de4ada98b630ef17c5ad30ff640d6",
"hash": "707176d7cb205843a36487deca897c4849bf612a34720f087ec69a6cf4495c54",
"attestation": {
"algorithm": "ed25519",
"publicKey": "y6F3rt10CEcSakCrnJIYkGymA66x3VXm0zCWbPjRxP8=",
"signature": "EbuyezlQOJPayyTxr/iLunOlBqlOdbmM90oDcGghT+X9lkLvmS+es4JGOGHYp2orDsuscOT3p4wCM0Gnr/CDDQ==",
"signedAtIso": "2025-05-12T11:30:05.000Z",
"canonicalForm": "v1"
}
}Reproduce this verification independently
Re-verify the entire chain
node verify.mjs civicgate-runtime-ai-receipts.jsonl
Cross-check with the Python verifier
python -m promethean_runtime_ai.verify civicgate-runtime-ai-receipts.jsonl
Verify the Bitcoin anchor
ots verify civicgate-runtime-ai-receipts.jsonl.anchors/707176d7cb205843….ots