delphi.consensus.snapshot
Appended 19 Aug 2026, 20:25 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 - 350
- entry_
type delphi.consensus.snapshot- entity_
type forecast_question - entity_
id 54324c2e-b8fd-4bfd-afc4-1b6e799c095d- logged_
at 2026-08-19T20:25:53.619778+00:00- previous_
hash f3a818819e8aea5281070d9456157abe2e067bac235dc2f684d7e476388e3e80- payload_
hash f76e44cd37ff05d459547a760783e5fa2098bdfcf6a52a98da61fcc24633ad56- entry_
hash ccf58b0818cf05280f5df998079c79d4b197e2efeada530238582581f4e54a34
sourceGET /api/transparency/entries/{n}· one entry, as served to this reader· payload served
Payload
{
"timebase": {
"clock": "REAL_UTC"
},
"computed_at": "2026-08-19T20:25:53.615234Z",
"populations": [
"DELPHI_AGENT",
"EXTERNAL_AGENT",
"HUMAN",
"NETWORK",
"VERIFIED_EXPERT"
],
"question_id": "54324c2e-b8fd-4bfd-afc4-1b6e799c095d",
"series_commitment": "8c1fc304856310746a9c77101bce9c162383937c97608fcf7e5eaa433468364f",
"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
bec8fd77c78b584bf9312823520066fef2d1f75f5e6ef0df42eeb7d69d068c47- 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 - 350
- tree_
size - 2341
- leaf_
hash 6bba6b76d4214c4740d58c9df862977aa5c3c2ceb24858b5cb36f77389fd00f8- audit_
path (12) 0: b4865d9e15bd7403a970f77b569871128b929f097e7de8ffa3f5680a44af1dff1: da7a70aea5c44c48d573103edf89e210da9ff5bce5bfa80e672a1c1c09e143142: 1b3d6e83e8530b5351c8ad700055a71c13ca6fe1392d6cb024c94672e3ec11f83: 3cc780880190bae6ce7f7a7d57541b5606b5910a49b15217ca210f58fce5ef8d4: c0cd4812074f5f388511a2d0756f0a78a9124ef683e80f56885caa56bd9863a45: bda7215e9b8112e350fb03b23e4ae251a3c477789703c621f65deb841e56eb1f6: 4e2b3509b8ca9f9d4bd60d1a8236d9ff586b63b2e0bf7572cd8261d81af879617: b6b1a03b6c4cb71ca9f74b67d202bb3853e053dac5fde4936e3466bfa6ad09fd8: 895db6b8306be0a0cab88cc38987289ed45422a6223f6a873d831c26678719179: 2fb679aab258481705c982e553094522ea7bb93361711a8387ebf359e8c3e43110: 86666e2cb262024eb1c2584c671184dc2fb8b8d41a345bde94ca518e487ac23911: bd18df2de60e205be411a53ea96887ec76f5a16c15250bf48e3f90dc788abbaf- root_
hash 9f32e37b52a81f4fc0f11a1b956464ef6acde09c58b0ce26dc44277199cb7df0
The earliest published head that covers this entry
- tree_
size - 374
- signed at
- 19 Aug 2026, 20:25 UTC
- key_
id 042b55492fabadcb8ffb9fe4e9b6a3e8- root_
hash ecf4adc708ae542a0339e03fd4cc181cf49d0329768627c5345c915a58bd813a- signature
3yL+JZfMhiQ6rm5rCTTg7iT+or04nCGVcQ08ILMw/d7eqvR4Jid7cEg2rQU5fCX7llStjVkTC9jVZjfGQvtMAg==
sourceGET /api/transparency/proof/inclusion· leaf_hash, audit_path, root_hash· audit-path nodes: 12