Forecast records with evidence, revision windows and validator review.
Almanac keeps forecasts honest after they are published. A forecaster can open a record, attach sources, update assumptions and send the claim through GenLayer review so the final state has a readable trail instead of a bare prediction.
| Surface | Link |
|---|---|
| Live app | https://almanac-forecast.vercel.app |
| GitHub | https://github.com/assmore22/almanac |
| Contract | https://explorer-bradbury.genlayer.com/address/0x65CBb94EAC92d6af3598Aa950b7D5129931fc5A2 |
- Network: GenLayer Bradbury
- Chain ID: 4221
- Contract:
0x65CBb94EAC92d6af3598Aa950b7D5129931fc5A2 - Deployer:
0x07A12871217d82ADE643Ef8c4EfC27e14F10A649 - Deploy transaction: 0xe97d2263...2080ff
- Deployed:
2026-08-02T21:01:21.347Z - Source:
contracts/almanac_v2.py(45,859 bytes) - Source SHA-256:
379228a190f5f212dd07309c9d6c0349cce9c499a02c43b12dcbc542568475a1
- Commit the forecast, public source, future horizon and settlement rule.
- Wait for the horizon; it cannot be shortened or bypassed.
- Let any independent account attach realized-outcome evidence.
- Trigger exact-field GenLayer review and the mandatory challenge period.
- Resolve challenges and appeals before permissionless finalization.
The frontend reads forecast counts, recent records, source lists, challenge state and reputation views. Contract state is public; write actions still require a connected wallet on GenLayer Bradbury.
tests/test_almanac.py covers horizon enforcement, required realized evidence, independent review, challenge and appeal timing, and permissionless finalization. Run pytest -q tests/test_almanac.py; the current suite passes 2/2.
python -m http.server 8080Open http://localhost:8080.
The public package is static and has no install step. Vercel receives only frontend, contract source and public deployment metadata.
Keep wallet private keys, vault exports, .env files, Vercel project state and dashboard data out of Git. This repository is for public source, UI, tests and deployment receipts only.