delphi.consensus.snapshot
Appended 10 Sept 2026, 05:30 UTC. Its place in the chain is fixed by the hash of the entry before it; what follows is whether that place is covered by a signature.
The entry
- sequence_
number - 1656
- entry_
type delphi.consensus.snapshot- entity_
type forecast_question - entity_
id cd22f6a9-1eb7-4927-a2e9-6736a77b75cc- logged_
at 2026-09-10T05:30:41.089919+00:00- previous_
hash c932faf43abf8037c7841549217aaeca767e6248c841da50a36b9d22a9ce806c- payload_
hash 37097a0d76f90bf145f7c29575a177df2cb47e9c60575e98f9a482c5a6444d47- entry_
hash a326484d5479c42ecd405324d93a6c822a9c605ad46a708ef14f2f81cc17a039
sourceGET /api/transparency/entries/{n}· one entry, as served to this reader· payload served
Payload
{
"timebase": {
"clock": "REAL_UTC"
},
"computed_at": "2026-09-10T05:30:41.086040Z",
"populations": [
"DELPHI_AGENT",
"EXTERNAL_AGENT",
"HUMAN",
"NETWORK",
"VERIFIED_EXPERT"
],
"question_id": "cd22f6a9-1eb7-4927-a2e9-6736a77b75cc",
"series_commitment": "a338ca2c025735e7650b8fdfbf2e2d78049bcce2fb73761f06b979986d56c58c",
"commitment_version": "v2"
}Shown indented so it can be read. The hash is taken over the canonical form of the same object — keys sorted by code point, no insignificant whitespace, UTF-8 rather than escaped ASCII, timestamps RFC 3339 in UTC to microseconds, decimals as their plain string form. The check below re-encodes the object canonically before hashing it, which is why an indented display cannot make it pass or fail.
Which digest recipe applies
The entry names its own version, so a reader can pick the right recipe without knowing when the salt was introduced.
sha256(canonical_json({question_id, computed_at, salt, readings})), where readings is the batch's populations sorted by population, each carrying exactly {population, method, method_version, sample_size, distinct_operator_count, value}
- salt
a46bd9fde8b4eaf427478a183be0e7bf4c7e85349dabee62017a7c30b6f69f82- readings
- 5
- recompute
- sha256(canonical_json({question_id, computed_at, salt, readings})) must equal series_commitment in the payload above. Take question_id and computed_at from that payload verbatim, sort readings by population, and give each reading exactly the six keys served here — the values carry their stored precision and are hashed as the decimal strings they appear as
Verify it here
Recomputing the hashes in this browser… If this sentence stays, this browser has no Web Crypto and nothing here has been verified locally.
The proof, as served
- leaf_
index - 1656
- tree_
size - 2479
- leaf_
hash adab25109199ef49863bff45b133a08b926d7e7dc1f18632643ad612230192ad- audit_
path (12) 0: 625d47e2eed13fc795929a0e9ac27e330fbdbd3eb5269f6591f9367aaac91a971: 531ca7f28939a39930212ccc19011a7824d4879fe2d5773d9b128edf3377556b2: 3aa12fa616cee42e5c2f1d2418beb50b990aaa74fef11b707e6341e3038df22b3: 65f60f308071d57579c664c0fd48cf7dfb92661899b80cc595e2a3c6a82066324: 3e3b5e32b4d43ed48e4b662c8baf5aa348a5a0701fb48ccec5fa81ff8dd1d49a5: 68134fb504110907cd6ea503e3b9ad00d7f4eeee8e5c017e134a0023f49e1d2b6: 00d36260786b8ce290bee853db49e73fdd5d2800eb992fa1e6e2b98e2e9d62487: f4a858c5afd6d2bbfe79825cc00005d2e5bc4cb6a3723b70509ff06cb4f713008: 49fbc719d10777c21e02e255a1174dbc47e89c67c7b327c5f50e8ea1ffbb5bad9: 5fb1ed5f5a35e845232517268bf48c5384c29f290dd198d1d6f802756a73a76d10: 9cc5fac487aa9ec1c73baef673025a398e2ca2721a82dbc4c270eb2473aaf7be11: 8d949d6aef53b2e3322ef5e232755263eaea63b886b405d936c87ac0c842b6a1- root_
hash 2135d33fc3b42de9408df8505e145fcd175142e943af391ea41c56bc99a1e5e2
The earliest published head that covers this entry
- tree_
size - 1669
- signed at
- 10 Sept 2026, 05:30 UTC
- key_
id 042b55492fabadcb8ffb9fe4e9b6a3e8- root_
hash 523070ab7c9144911686b260582d7847bb9af7cd001319dcd81f849fddf5ca28- signature
tlF26vhUzkZ1g6+zQtD/Vl7F+8URBvYLFh6zLzoV9MBBJJwMGhXJhrE3GhWFFjxrBmxlZH/66rXkfK9tIDB4Dw==
sourceGET /api/transparency/proof/inclusion· leaf_hash, audit_path, root_hash· audit-path nodes: 12