OK ✓
verify_chain()
64
decisions + kill-switch + overrides
1
halt drills executed
702eb0736bd5e6…
hourly pin → S3 (prod)

How verification works

Every Decision emits to a per-tenant append-only ledger. Each entry hashes the previous entry's hash, the payload hash, the timestamp, and the tenant_id. The chain is verified by recomputing each entry_hash from previous_hash + payload_hash + timestamp. A single tampered byte breaks the chain everywhere downstream. In production this signs the hourly Merkle root with AWS KMS and pins to S3 Object Lock (compliance mode, 7-year retention).

Recent chain entries (showing last 20 of 64)

SeqKindEntry hashPrevious hashDecision / event IDTimestamp
64kill_switch702eb0736bd5e64e06bc7567…f53a5b1796797543b8f33590…kill::bc53e34e-518d-4ebd…2026-05-25T18:06:25
63decisionf53a5b1796797543b8f33590…aa57733bbc23fc3382937a44…94071e37-3d54-4394-b603-…2026-05-25T18:06:25
62decisionaa57733bbc23fc3382937a44…b053760cfdcd7624bf613947…6a9a4058-1d3b-435c-bb63-…2026-05-25T18:06:25
61decisionb053760cfdcd7624bf613947…76ab750ef284981cd18e2256…b159c414-ece6-445d-8de7-…2026-05-25T18:06:25
60decision76ab750ef284981cd18e2256…36eb7a605fc3909851308a57…996be9a3-3f21-4a0d-bb13-…2026-05-25T18:06:25
59decision36eb7a605fc3909851308a57…7e32620872d490263a3df7e0…c5f5aaad-3018-4cb2-8707-…2026-05-25T18:06:25
58decision7e32620872d490263a3df7e0…acbd577452e2a98a047e9765…72f6b031-4e82-4daf-8898-…2026-05-25T18:06:25
57decisionacbd577452e2a98a047e9765…485f0f4be5d10bcc378de831…c59bb0bb-aa19-4bf1-b726-…2026-05-25T18:06:25
56decision485f0f4be5d10bcc378de831…8ff6e6b10c1a37e75783610f…dec36b0b-b53b-4206-9524-…2026-05-25T18:06:25
55decision8ff6e6b10c1a37e75783610f…eaeb8564d8024334631bab5c…10ee7546-114d-43d0-b8bc-…2026-05-25T18:06:25
54decisioneaeb8564d8024334631bab5c…abe23715bab64fde88df46b6…64497c55-c1b7-40ae-b678-…2026-05-25T18:06:25
53decisionabe23715bab64fde88df46b6…de82a3dbaa1850863ec4d385…77d71529-cba3-48bf-8261-…2026-05-25T18:06:25
52decisionde82a3dbaa1850863ec4d385…2f0e0e7ef840c8bde730746a…3b1982b9-6019-44a1-8e62-…2026-05-25T18:06:25
51decision2f0e0e7ef840c8bde730746a…f362ab0cbddecf51a0f42568…6ee9b218-b983-41bc-8066-…2026-05-25T18:06:25
50decisionf362ab0cbddecf51a0f42568…035344b61ad8b61e80cd442f…a9ce2720-4199-4a41-9138-…2026-05-25T18:06:25
49decision035344b61ad8b61e80cd442f…62e65a2f98fbb0e2f77b0877…7af4a50c-3fbe-465e-8d1c-…2026-05-25T18:06:25
48decision62e65a2f98fbb0e2f77b0877…1bbef88f018fd6d7a3cbfc50…52fe8bea-5946-4e68-9a79-…2026-05-25T18:06:25
47decision1bbef88f018fd6d7a3cbfc50…97a648d9149bb51a80094267…fd9a5a05-2922-4366-991d-…2026-05-25T18:06:25
46decision97a648d9149bb51a80094267…2a2c3ca41425292ec6ef8b5b…563a04d8-3016-4aee-ae32-…2026-05-25T18:06:25
45decision2a2c3ca41425292ec6ef8b5b…2186616a84accd8ab3905f59…a28eb5ad-8f5e-46a7-b81d-…2026-05-25T18:06:25