ONYX

The log, and how to check it yourself

Every decision ONYX makes goes into one log that only grows. Every hour it signs a note saying how big it was and what its fingerprint is. If anything were rewritten later, those notes would stop adding up.

Events in the log
165,622
Latest note
#1,647
Signed
2026-10-11 04:52
Notes so far
1,647
Fingerprint of the last event
b9b5ff410b5ca0daa51080c1be08e06927a555048f3cf7bd43c0f1183a74a350
Tree root
864f5da6cb41e624e9ed20b6bcced17f1660073780195a41bcd04c93d6031386

Check it in your browser

Signature

Every note is signed with the key published above — checked here, on your machine.

Chain

Each note points at the one before it. A missing note leaves a hole.

It only grows

The height never goes down. To delete something from the past you would have to make the log shorter than a note that is already signed.

Up to date

The latest note is recent. If it had stopped, you would see it.

Witness signatures

Every co-signature is checked here too, against the same bytes. A witness cannot co-sign without seeing the same history you are seeing.

What this does not prove. The mirror is off. All of this is signed by the same machine that holds the log, so it proves nothing has broken by accident — not that whoever runs the bot has not touched it. Whoever holds the key can sign a different story. Turning the mirror on puts a copy where they do not have that key.
What it is for

For when somebody says «you punished me for no reason». Their receipt carries a number, that number has to be inside this log, and this log cannot have changed since. Without it, the only possible answer would be «trust us».

Witnesses

Independent people who download each note, check it grows from the one they saw before, and co-sign it with their own key. A witness who saw one history will not co-sign a different one — so a forged history has no co-signatures, and that shows.

Nobody is watching yet. No witness is watching yet. Until somebody is, all of this is signed by us alone, and whoever holds the key can sign a different story. Anybody can be one, and nobody needs our permission:
node tools/witness.js https://axis-bot.app

One command. It makes a key, watches every hour, and stops if anything stops adding up.

The notes

#1,6472026-10-11 04:52165,622 events
#1,6462026-10-11 03:52165,564 events
#1,6452026-10-11 02:52165,523 events
#1,6442026-10-11 01:52165,429 events
#1,6432026-10-11 01:42165,406 events
#1,6422026-10-11 00:42164,853 events
#1,6412026-10-10 23:42164,506 events
#1,6402026-10-10 23:18163,973 events
#1,6392026-10-10 22:18163,840 events
#1,6382026-10-10 21:18163,791 events
#1,6372026-10-10 20:18163,738 events
#1,6362026-10-10 19:17163,688 events

The raw data

This page reads exactly this, and nothing else. You can too. /api/attest

{
  "v": 2,
  "algo": "ed25519",
  "key": "MCowBQYDK2VwAyEA25zqsz+yCAxGMPwfT+c/DfOJRhlzI7A8Wn6bT2nMPXI=",
  "signed": {
    "1": "JSON.stringify({v,seq,at,height,head,prev})",
    "2": "JSON.stringify({v,seq,at,height,head,size,root,prev})",
    "3": "JSON.stringify({v,seq,at,height,head,size,root,code,prev})",
    "4": "JSON.stringify({v,seq,at,height,head,size,root,code,prev})"
  },
  "count": 1647
}