delphi.consensus.snapshot
Appended 17 Sept 2026, 05:31 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 - 1912
- entry_
type delphi.consensus.snapshot- entity_
type forecast_question - entity_
id 3b91df80-00fc-4a4b-b86e-3310edcb9332- logged_
at 2026-09-17T05:31:41.687694+00:00- previous_
hash 15a4e707671d07cbdad207e50768a600d091d2070e7e0fe29059c90e6a2b9f92- payload_
hash cfbd976fdef4f406fdd95ac554b6c3d8cd78817a148737a34fe713feb982d91c- entry_
hash a8b7fef6479eb153f980288577248b616c4a7e48ddaa7dd793b51231d2561f7a
sourceGET /api/transparency/entries/{n}· one entry, as served to this reader· payload served
Payload
{
"timebase": {
"clock": "REAL_UTC"
},
"computed_at": "2026-09-17T05:31:41.683714Z",
"populations": [
"DELPHI_AGENT",
"EXTERNAL_AGENT",
"HUMAN",
"NETWORK",
"VERIFIED_EXPERT"
],
"question_id": "3b91df80-00fc-4a4b-b86e-3310edcb9332",
"series_commitment": "20dd53ad8904e8fc1ddc3562011d2e69fa63256af094d5b2568082cf43dc55db",
"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
e8165a183501488243edc125c54e577c94b33f4b461d4a0e902a55a820d79437- 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 - 1912
- tree_
size - 2515
- leaf_
hash 01e39c27a050b49435a6ee521adb37fe621a27e32629a23bb48a75b7b9231126- audit_
path (12) 0: 322d89860213a268f55013ca95cb6fbbe7cb5a9b7746c35a22c78c04a67678441: 974d81c500c2be00264f057dd8c2638e30816f0db72a339067fc5ebd0f08e4d42: 31171b76fa3a7e2d2634981db718d3e24ce8c3097a15c67fed3df4e855f551863: 7dac6c581b798949c69306005e2f5d924d733f853a6c9a00fd6412f85ad03ac04: cc6b75f197277762b6837a9f28956ddb80000209e849f7395b445025b8a73d975: 8163d9522cee5c395b431cb6244dc9be07640c46717beda36e36f07660c958786: e58805ff3adab5c7bd3bd83274fc881f7ac4f076b0dd834beda95d34af7800d77: 250a7c52b8fa3c4932ca872a3a7842e2fb00579ab86c9b5fb8782329fdedf9fc8: 5ab1df6751f0dac25a6ce29d97587d6e08dcdd2d94987223ead725483527e08e9: 5fb1ed5f5a35e845232517268bf48c5384c29f290dd198d1d6f802756a73a76d10: 9cc5fac487aa9ec1c73baef673025a398e2ca2721a82dbc4c270eb2473aaf7be11: 07e77d0b86e68e9f9b9a10013a0034c87fc2ef91312163906ab27730e4a116c8- root_
hash 94ed3e67e0f3ca6ab90e872a7f03020d191548311e8610028e47ddc18fbfbf90
The earliest published head that covers this entry
- tree_
size - 1921
- signed at
- 17 Sept 2026, 05:31 UTC
- key_
id 042b55492fabadcb8ffb9fe4e9b6a3e8- root_
hash de4645b3ae57c2a319bdaadccc8424330c3686a79d031b007b80eca0ed78c863- signature
XoarI5Mzcez/Mayoy5WfSvWoXgXCDcdhQdMw2EQ2bH4TFS2FfvvlUkHv+csOCREKJBJN95gFWB6udc2z582ZCw==
sourceGET /api/transparency/proof/inclusion· leaf_hash, audit_path, root_hash· audit-path nodes: 12