Each domain keeps its own book. What leaves it per closed period is a signed 32-byte snapshot root. The hub verifies the signature and the chain, never sees an event, and relays exactly those 32 bytes to the shared evidence rail. Everything below was observed on 3–4 September 2026 and read from the evidence files linked here.
In a data space, several independent organisations — hospitals, telecoms, cloud operators, integrators — must be able to show, months later, what happened in their own domain, and when: to an auditor, a regulator, a partner in a dispute, or a customer. Today they have two bad options. Trust the platform's logs, which somebody else owns and can rewrite. Or hand their operational data to a central party, which nobody wants to do — for privacy, for competition, for liability.
A third option. Every domain keeps its events and its book at home. Once per period it publishes one 32-byte fingerprint of that period to a shared evidence rail that no single party — including us — can rewrite. That is all that leaves the building: no records, no amounts, no identities, no telemetry. From then on the domain can prove any single record of that period — that it existed, in that form, at that time — offline, with anyone's calculator, even if the platform or the hub disappears. Two domains can also prove a claim between them (a handoff offered in one hour and accepted in the next) without either side opening its book.
Nine synthetic domains on our own iron closed eleven periods; seventy-seven local records stayed local; 11 separate 32-byte commitments went to the rail (352 bytes of commitment payload in total); every closure reached a witnessed public position; one cross-period handoff was proven between two domains; the monitoring held for a two-hour idle window. It did not show continuous hourly production, a 24-hour run, or adoption by any named organisation — the names are labels for synthetic domains we operate. Those are the next steps, each of which will be measured before it is claimed.
partner system / telemetry stays local
↓
partner-owned NEOedgeX book closes only when there was activity
↓
signed period snapshot Ed25519, monotonic sequence, prev-snapshot continuity
↓ direct JSON or ApeiroRA-style CloudEvent
project hub + live read surface recomputes the commitment byte for byte; no raw data crosses
↓ exactly 32 bytes per accepted period, one NEOf1 v0.2 frame each
NEOfX → NEOCL2 → NEOva2 witnessed public position, hourly unit
↓ signed rail receipt
RAIL_CLOSED
Retries are idempotent by the 32-byte commitment. One receipt per closed period, never per event. A separately signed, pseudonymous cross-period handoff (OFFERED in hour N, ACCEPTED by the named counterparty in N+1) is exposed only when both source snapshots are already rail-closed. Operational heartbeats live beside the evidence journal, never inside it.
32 bytes per object, not 352. This test recorded 11 separate commitments: 11 × 32 = 352 bytes in total. No 352-byte commitment was submitted. This sum excludes signatures, envelopes, receipts and network framing.
| domain | site | local records | rail closed | waiting | heartbeat |
|---|---|---|---|---|---|
| NEOcloudferro | IONOS | 7 | 1 | 0 | NO_HEARTBEAT |
| NEOengineering | synthetic-neo-0 | 14 | 2 | 0 | FRESH |
| NEOgdansk | synthetic-neo-1 | 7 | 1 | 0 | FRESH |
| NEOhospital-A | synthetic-neo-3 | 7 | 1 | 0 | FRESH |
| NEOinfobip | synthetic-neo-2 | 7 | 1 | 0 | FRESH |
| NEOreply | IONOS | 7 | 1 | 0 | NO_HEARTBEAT |
| NEOresult | Hvar-Telemach | 14 | 2 | 0 | FRESH |
| NEOtim | IONOS | 7 | 1 | 0 | NO_HEARTBEAT |
| NEOvillanova | IONOS | 7 | 1 | 0 | NO_HEARTBEAT |
Domain names are labels of synthetic, partner-controlled execution domains used for the rehearsal; no named organisation has installed, approved or operated a node. Four IONOS domains had no heartbeat at day-close (their forwarders were not instrumented); their earlier rail closures stand. Source: status.json (hashes in SHA256SUMS).
| domain | period | records | commitment | door request | ledger | NEOva2 position | witnesses | closed up to |
|---|---|---|---|---|---|---|---|---|
| NEOresult | 2026-09-03T16:00+02:00/PT1H | 7 | 124ccb6e1cabb332… | fx.7201.19.1.0 | anchored | 19 | neo-5, neo-6 | HOUR |
| NEOvillanova | 2026-09-03T16:05+02:00/PT1H-villanova | 7 | b91eebdf5e706235… | fx.7201.19.1.1 | anchored | 19 | neo-5, neo-6 | HOUR |
| NEOreply | 2026-09-03T16:10+02:00/PT1H-reply | 7 | 2f25c7db8db1e827… | fx.7201.19.1.2 | anchored | 19 | neo-5, neo-6 | HOUR |
| NEOtim | 2026-09-03T16:15+02:00/PT1H-tim | 7 | d9bfad5581206407… | fx.7201.19.1.3 | anchored | 19 | neo-5, neo-6 | HOUR |
| NEOcloudferro | 2026-09-03T16:20+02:00/PT1H-cloudferro | 7 | 107e648219f50225… | fx.7201.19.1.4 | anchored | 19 | neo-5, neo-6 | HOUR |
| NEOengineering | 2026-09-03T17:10+02:00/PT1H-ambition-engineering | 7 | acef818979a1f6bd… | fx.7201.20.1.0 | anchored | 20 | neo-5, neo-6 | HOUR |
| NEOgdansk | 2026-09-03T17:15+02:00/PT1H-ambition-gdansk | 7 | b41e153ed97416bd… | fx.7201.20.1.1 | anchored | 20 | neo-5, neo-6 | HOUR |
| NEOinfobip | 2026-09-03T17:20+02:00/PT1H-ambition-infobip | 7 | decfb7754fd53354… | fx.7201.20.1.2 | anchored | 20 | neo-5, neo-6 | HOUR |
| NEOhospital-A | 2026-09-03T17:25+02:00/PT1H-ambition-hospital-a | 7 | aa4189b935b73372… | fx.7201.20.1.3 | anchored | 20 | neo-5, neo-6 | HOUR |
| NEOresult | 2026-09-03T18:00+02:00/PT1H | 7 | fa892804460562dc… | fx.7201.21.1.0 | anchored | 21 | neo-5, neo-6 | HOUR |
| NEOengineering | 2026-09-03T19:00+02:00/PT1H | 7 | d305a4cd8409790b… | fx.7201.21.1.1 | anchored | 21 | neo-5, neo-6 | HOUR |
11 closures, positions [19, 20, 21], witnesses neo-5, neo-6. Each row is a signed rail receipt the hub verified: the ledger inclusion proof must reach its root, the NEOva2 bundle must name that root, carry two distinct witnesses and not disagree across archives. Source: rail-closures.json.
PAIRED_RAIL_CLOSED — offered by NEOresult in period slot 496792 (commitment fa892804460562dc…, NEOva2 position 21), accepted by NEOengineering in slot 496793 (commitment d305a4cd8409790b…, position 21). Handoff ref bc9bb5d1217648fb…; 0 unpaired. Source: handoffs.json, live proof.
The pair says: two independent books, two independent periods, both already public on the rail — and the claim between them is checkable without either book leaving home.
Window 2026-09-03T17:31:14Z → 2026-09-03T19:31:14Z. Liveness journal: 452 result rows, max gap — s. Dispatcher journal: 111 runs, max gap — s, zero new and zero waiting commitments. Liveness alarm proven live on ambition-hospital-a (proof); fleet expansion to nine domains observed 2026-09-03T17:10Z (proof).
Limits, in the evidence's own words:
The 24-hour checkpoint was not completed: the hub host was shut down before its deadline. It is not backfilled. A new soak starts with a new T0.
Source: soak-2h-2026-09-03.json.