Dry HOLD only — reproducible synthetic cases. No live claims, no keys, no wallets.
Reproduce in one command
From a fresh clone — no keys, no network, no credentials. Fixtures only. You should see each synthetic case as HOLD, with the same evidence hashes as this page.
git clone https://github.com/Alarm2024/glance && cd glance && python3 scripts/run_proof.py
What the hash proves: Same evidence in, same hash out. The hash covers the checks, thresholds and reason code, so it proves those were not changed after the fact. It does not cover the rest of the fixture file, and it does not prove the decision was right.
Step 1. Clone the repo. You should see CLEAR LAB — synthetic proof cases header.
Step 2. Runner loads proof/fixtures/*.json — no pip install, no Redis, no RPC.
Step 3. For each case you should see decision: HOLD and an evidence_hash matching the cases below.
Step 4. If any hash differs, gate thresholds or fixtures changed — update proof/manifest.json and this page together.
Synthetic HOLD cases
Thresholds (not lowered for prettier output): oracle stale > 30s · liquidity floor $5,000 USD.
Case 1 · stale-oracle
HOLD
Observed: HOLD, on feed age. price-oracle stale · 47s. We do not claim it would have filled — we cannot know that. The system does not decide on outcome.
Reason: Oracle feed stale (price-oracle) — price reference unreliable
Evidence hash:
703ad4b4c199499aeb1b1e5ed0518297367ad28331807b1f12e0913a1c4ad993
Same evidence in, same hash out. The hash covers the checks, thresholds and reason code, so it proves those were not changed after the fact. It does not cover the rest of the fixture file, and it does not prove the decision was right.
Human still needed: Operator must confirm oracle freshness or switch reference before CLEAR.
Input (paste-ready fixture)
Loading…
Case 2 · thin-liquidity
HOLD
Observed: HOLD, on depth. Liquidity $1,200 is $3,800 below the $5,000 floor. We do not claim a composed trade would have landed — we cannot know that. The system does not decide on outcome.
Reason: Depth $1,200 is $3,800 below the $5,000 floor
Evidence hash:
5b36d6bc6ffa715dd70cfaa8a76ddee22501a423e400dfe1d00f876517708552
Same evidence in, same hash out. The hash covers the checks, thresholds and reason code, so it proves those were not changed after the fact. It does not cover the rest of the fixture file, and it does not prove the decision was right.
Human still needed: Operator must accept slippage risk or wait for depth before CLEAR.
Input (paste-ready fixture)
Loading…
Case 3 · refuse-to-classify (mandatory)
HOLD
Observed: HOLD, on REFUSE TO CLASSIFY. Doctor message: “Spread compression +127bps — pattern unseen in allowlists.” We do not claim the spread would have paid — we cannot know that. The system does not decide on outcome.
Reason: REFUSE TO CLASSIFY — doctor message unmatched by hygiene or fault allowlists
Evidence hash:
008f6948f3fd63b6a8955aab763f204d03dd8bb91cc8c123e3ca2fb34b3af47e
Same evidence in, same hash out. The hash covers the checks, thresholds and reason code, so it proves those were not changed after the fact. It does not cover the rest of the fixture file, and it does not prove the decision was right.
Human still needed: Operator must classify the doctor message, update allowlists, or accept HOLD.
AI-assisted analysis of public pages.
Input (paste-ready fixture)
Loading…
Case 4 · all-green
HOLD
Observed: HOLD, on false green board. All indicators green · process not observed running. We do not claim the board would have cleared — we cannot know that. The system does not decide on outcome.
Reason: Board reports all green while no running process was observed
Evidence hash:
1f4ada1b9487d2af4821accdf82f956c32b69b656fcb1fac0cbeca76dfbcb139
Same evidence in, same hash out. The hash covers the checks, thresholds and reason code, so it proves those were not changed after the fact. It does not cover the rest of the fixture file, and it does not prove the decision was right.
Human still needed: Operator must confirm the process is running before CLEAR.
Input (paste-ready fixture)
Loading…
Case 5 · mostly-green
HOLD
Observed: HOLD, on mostly-green board. No fault on board · queue-depth amber · process not observed running. We do not claim the board would have cleared — we cannot know that. The system does not decide on outcome.
Reason: Board reports no fault while no running process was observed
Evidence hash:
519e6a04ea1b3f7a8b0051a6b1df13788fdd4a9fba70faa35eeb9eaed6ecb638
Same evidence in, same hash out. The hash covers the checks, thresholds and reason code, so it proves those were not changed after the fact. It does not cover the rest of the fixture file, and it does not prove the decision was right.
Human still needed: Operator must confirm the process is running before CLEAR.
Input (paste-ready fixture)
Loading…
Case 6 · fault-board
HOLD
Observed: Two synthetic indicators report green, one reports a fault, and the sealed runtime observation says no running process was observed.
Reason: Board reports a fault — at least one indicator is in a fault state
Evidence hash:
f228cabb21c22652f91c85b07da079689295edced88d85520824a678ff801392
Same evidence in, same hash out. The hash covers the checks, thresholds and reason code, so it proves those were not changed after the fact. It does not cover the rest of the fixture file, and it does not prove the decision was right.
Human still needed: Operator must resolve the reported fault before CLEAR.
Input (paste-ready fixture)
Loading…
The board itself
Everything above seals a decision. This seals a file. It is a static SVG of the Glance board layout — synthetic, like every fixture on this page.

File hash:
a162d898e14004ef1c3c00ca0db7683a1c52343c96b516ea4e7b70a922b74427
This is a weaker claim than the cases above. Same file in, same bytes out. It proves the image has not been changed since it was published. It proves nothing about any decision, nothing about a board that is running, and nothing about any figure drawn on it.
Reproduce. curl -sL "https://glance.elghaly.dev/desk-glance.svg" | sha256sum