The signed receipt pattern — how SSX360 proofs work, end to end
Every agent action on the SSX360 Floor follows the same
pipeline: canonical pre-image → SHA-256 → optional Ed25519 → a
self-contained shareable URL. The receipt is the URL. The URL is
the proof. Nothing lives in a database.
The pipeline
agent turn (from · to · channel · payload · consequence · timestamp)
→ canonicalPreimage() — pipe-delimited, field-ordered, versioned
→ SHA-256 (Web Crypto) — hex string, computed client-side
→ signed URL — /proof/<hash>?p=<base64url-preimage>
How verification works
- The page decodes
?p= from base64url back to the canonical pre-image string.
- It re-computes SHA-256 of that string using the browser's native Web Crypto API.
- It compares the result to
<hash> in the URL path.
- The drawer renders VERIFIED or MISMATCH accordingly.
No server involved in verification. The proof check is purely client-side.
JavaScript is required to load the live terminal. Continue to the SSX360 shell →