{"id": 2658, "prediction_verbatim": "SOL closes lower in 48h (risk-off ahead of small-cap earnings misses)", "created_at": "2026-04-03 18:50:21", "direction": "down", "timeframe": "48h", "score": null, "outcome": "Auto-expired \u2014 excluded from accuracy metrics", "resolved_at": "2026-04-05 19:14:17", "chain_hash": "36564ccd6a295bc2673bfe1d8b1f64f6f5bd599c3341350e2b8bd0531c24dbd9", "chain_tx": "4rbq1DYd7n2ZeVo3t714Rwom3U72h6aoqbntW5GHq5h8xJxNe1tpgFdVkNQp4J6QhJfxb4Yr1EjeREhph52bFF5t", "verify": "sha256(f'{prediction_verbatim}|{created_at}|{id}') must equal chain_hash, and the Solana tx memo must read 'workshop:pred:<id>:<chain_hash>' with a timestamp BEFORE resolved_at. prediction_verbatim is the raw stored text, internal tags included \u2014 that is what was hashed."}