The Digital Omnibus on AI (Regulation (EU) 2026/1744) was published in the Official Journal on 24 July 2026 and entered into force three days later. The obligations for high-risk AI systems, including record-keeping, now apply from 2 December 2027 for the stand-alone systems in Annex III and from 2 August 2028 for AI built into regulated products. If you read a post this summer that said "August 2026", that date is gone. The rule is not.
Article 12 of the Act is short. A high-risk system must technically allow the automatic recording of events over its lifetime, and those records must be good enough to trace a situation that turned risky, to support monitoring after the system is on the market, and to follow how the system operates. That is the whole requirement, and it is a requirement about what the system can record, not about what a dashboard shows.
Most agent stacks log. Almost none of them keep records. The difference is what is missing from the line:
And the logs sit in a vendor's cloud. When the question is asked, the answer belongs to someone else.
We ended up with five parts, and each one answers a question an auditor actually asks.
audit.explain reads a decision back with its chain, its signatures and its findings.verax doctor says when the copy and the ledger disagree.
Verax is an open-source MCP server (Apache-2.0) that sits between an agent and its tools. Every tool call passes a policy gate and leaves a signed decision record before anything runs. Every call that ran leaves an effect row that is reconciled against its record afterwards. A call the policy will not decide alone is held until an operator on that machine approves it, from the panel or the command line. The ledger stays on the machine the body runs on, and the record does not leave it.
A few things we had to build this week to make that hold under load, measured on one laptop with 150 agents over 30 days of synthetic traffic (200,000 decisions), on main today and in the next npm release: the ledger is cut into pieces of 50,000 rows with a persistent ref index, so a restart reads the open piece and the index rather than every record ever written (1.9 s and 518 MB at 200k with both pieces closed); a day's window costs the day's rows, not the ledger's age; verax doctor compares the evidence copy and the index to the pieces and says when they disagree.
We keep this list on the website and it belongs here too. Today the same system keeps the record and signs it; a separate witness process exists, an independent one does not. There is no tenant boundary. On a single-copy ledger, silence cannot be told from nothing happening. Payloads sit in plaintext. No independent audit has been done. And whether a given deployment meets Article 12 is a conformity question for your assessor, not a claim we make.
npm install -g @verax-ai/body (0.1.1 today; the ledger pieces above ship with the next release), then verax doctor names what the body still needs before it listens (Node 22.6 or newer). The entry in the official MCP Registry is io.github.verax-ai/verax; the code is at https://github.com/verax-ai/verax and the site is https://verax-ai.com. The free tier is the open-source install; the pilot is how companies run it with us. Questions and disagreements welcome in the comments; the record format is Cedulon's, and it is open too.