The Audit Row Reader open in a browser
Audit Row Reader, as it opens. Select the image to open the tool.

The Audit Row Reader lays out the audit logs a decision-head server writes, row by row, in your browser. Each line gives one question's answer with the probability behind it and shows whether the server flagged it as low confidence. Nothing is uploaded, and the page has no server.

What it does

Drop the audit.jsonl files with their seals, and rotated files check as one series. Each seal starts where the previous file's seal ended, so a missing, reordered, extended or edited file breaks at its boundary, and the page names the file and the row. A log of 100,000 rows loads in about two seconds behind a progress bar, and the table draws only what is on screen.

Cases group the rows that answered the same request. A calibration table puts each yes/no question's answers into probability bins before and after a calibration change. Charts show calibration drift and the answer mix by day, with a probability histogram per question, and each chart has a table of its numbers. A short list points at rows worth a second look. Before anything leaves the page, a redaction check counts values that look like an email address, a phone number, an IBAN or a name, and the export waits for you.

How to use it

Open the tool and press Load the sample log, or Load it as three rotated files to see the series check at work. The sample is generated: 461 rows from 119 requests between 21 September and 4 October 2026, and no deployed system wrote it. Three of its cases come back with a different answer after the calibration change on 28 September.

To read your own logs, drop them on the page with their .chain seals. A guide on the page says where to keep the seal so the account that writes the log can't rewrite it.

What it does not do

Without a seal or a prev_hash field it can't prove a log unchanged, and decision-head writes neither today. It doesn't recompute request hashes or calibrated probabilities, since that needs the case records and the calibration file.

The log holds no outcomes, so the calibration table shows spread only. The redaction check matches patterns, which means it misses names in lower case and flags some product names. Logs of several hundred megabytes will strain a browser tab.

Where the numbers come from

The row format and the hash rules come from the decision-head repository's documentation and its security review of 6 October 2026, which proposed a prev_hash on every row. The shift screen uses the textbook two-sample Kolmogorov-Smirnov coefficients. Every other number on the page comes from the log you load. The decision head itself is described in the lab's three-part publication, and its code is public.

Open the tool

The page opens empty with the sample one click away. The full self-check of 84 tests runs when you open it with ?selfcheck. It runs in your browser and sends nothing anywhere.

Open the tool Full screen in a new tab Open with the sample loaded