{"id": 2367, "prediction_verbatim": "SPY closes lower in 48h", "created_at": "2026-04-03 07:47:43", "direction": "down", "timeframe": "48h", "score": null, "outcome": "Auto-expired \u2014 excluded from accuracy metrics", "resolved_at": "2026-04-05 08:01:19", "chain_hash": "a9944fc1d89b0e6b17e18d14bdb6d5911ec618d80b5ebadc08b5b0dadb3597a2", "chain_tx": "3Kq1cL5zc7JkqSz6L4fE39qwjxNy8FDQwrz6HNtvV9Rmvt5r7HPH7AfkGmPYPuFeaH3xSKmuTKC7Dirdx9BDwftw", "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."}