Loading board…
History may not repeat, but it rhymes. If the past is cyclical, each turning shares a common anatomy:
Most forecasting fails not from bad models but from unfalsifiable ones. So this board does the opposite: every claim is registered in advance, carries a dated falsifier, and stays on the board when it misses. We're not predicting the future. We're testing whether the rhyme is real.
The transitions genuinely in motion — with the evidence base shown alongside every number — and the honest record of how we've done.
⚡ Updated
Loading model state…
Every card on this board carries a registered confirmer: a pre-registered observable that, if seen, counts as confirmation — with base rate, tier, window, and dedup rule declared before the fact. Registered after the prediction, before the evidence.
Tier convention (ratified 2026-09-22, provenance: Iran naval card): Tier 1 confirms the mechanism is live; Tier 2 confirms the claim. Only Tier 2 counts as skill evidence. A Tier 1 hit upgrades attention, not the score.
Counterfactual control: conditional claims ("X refuses regardless of outcome") register which branches are unconfirmable this cycle, so a routine outcome can't be spun into confirmation. Example: the Regime-Loss card's win-branch is recorded as unconfirmable; its Tier 2 requires loss AND refusal.
Dedup rule: the confirmer binds to fork-specific observables, not to shared-theater events already serving as tripwires on adjacent cards. One event, one confirmation — no double-counting across the board.
Movement honesty: ⚡ badges key to last_moved, stamped the moment a card's status, evidence, or adjudication changes. Retroactive stamps carry provenance; movement is never fabricated to light a badge.
Definitions for every term used in the Forecast Register, Macro Forecast, and MGET Ledger below. Written so a first-time reader can interpret any card without prior context.
| Confidence % | The board's probability estimate that the statement resolves as written. Rendered on the card's badge; the sparkline beside it shows how that number has moved over time. A flat line at a fixed value means no new evidence moved the estimate — itself information. Known defect (flagged 2026-09-22): historical entries mix 0–1 and 0–100 scales in the same field; normalization to 0–100 is planned at export. Compare only within a card's own history. |
| ⚡ Movement | Badge on a card or theme group showing recorded activity within the last 7 days (from the last_moved timestamp). Movement stamps are progressively enriched — only a handful of cards carry dated stamps so far, so absence of a badge is not absence of change. |
| Theme group | One of five master categories (Gulf & War Escalation, Domestic Consolidation & Repression, Economic & Material Substrate, AI & Substrate Emergence, Method & Framework) that every forecast card belongs to — exactly one. The theme header is a collapsible master card; its status sub-headers (confirmed / emergent / pending / failed) list that group's own cards. |
| Confirmer | Evidence registered against a prediction's falsifier criteria, scored to a tier: Tier 1 = direct on-record event matching the falsifier as written; Tier 2 = partial or corroborating; Tier 3 = interpretive/amplifying. Registration tiers are kept separate so a Tier 3 interpretation never upgrades a Tier 1 confirmation (Gauntlet Case 003). |
| Counterfactual control | A comparison case logged alongside a prediction — a matched scenario where the forecast mechanism should NOT fire. Its purpose is dedup: distinguishing the mechanism's signal from events that would have happened anyway. |
| Canonical source | data.json is the board's single source of truth. The shard files (pred_shard_*.json, ledger_shard_*.json) are build inputs, not the live layer — deploys render from data.json. |
| Status: pending | Statement is live; no falsifier has triggered and no resolution date has arrived. |
| Status: emergent | Partial confirmations are accumulating but the statement's full resolution criteria are not yet met — the mechanism is visibly underway. |
| Status: confirmed | The falsifier's symmetric criteria have been met — the event happened as specified, on record. Note: confirmation validates the honesty of the registration process, not the skill of the forecast (disclosed limit, Gauntlet Case 003). |
| Status: failed | The falsifier triggered against the prediction. Logged publicly — misses stay on the board. |
| Falsifier | The specific, dated, observable condition that would kill or resolve the prediction. Written before the outcome is known. If the falsifier is ambiguous, the prediction is not instrument-grade. |
| Evidence confirmed | Facts on the record that support the statement. Listed itemized so each can be independently checked. |
| Evidence contradicted | Facts on the record that cut against the statement. Logged with equal prominence — the board's honesty test. |
| Watch (forward) | Named signals to monitor next — the specific events that would move confidence up or down. |
| ⏱ lead time | Interval from the log date to the resolution date, shown on resolved entries. The board's calibration record. |
| Macro Forecast | The board's single highest-conviction systemic call. One at a time; falsifiers armed; retired publicly if triggered. |
| MGET Ledger | Running log of mechanism tests: each entry records a real-world event scored against the model's legs (complexity cap, elite overproduction, enclosure mutation, vanguard alignment). Verdicts: confirms / strains / undermines / neutral. |
| MGET legs | The four structural legs of the model being tested by each ledger entry. An entry may test one or several. |
| Forward signal | What the ledger entry implies to watch next — feeding the next day's scan. |
| Sparkline | Per-card confidence trend line from history.json — daily snapshots, oldest to newest, red if rising, green if falling. Hover for dated values. (History note: sparklines shipped v2.4, removed v2.6 for signal-to-noise, re-added with the share-card engine — earlier change-log entries reflect that back-and-forth.) |
| Watch (term) | A watch is NOT a prediction. It means conditions are primed — if a spark lands, it will travel fast. |
| 2026-09-27 · v3.1.0 | New "Today's Read" collapsible panel above the Forecast Register: hand-authored plain-English daily trend summary (10th-grade level) with a Watching-next list, rendered from Daily Read.md at build time (new daily_read field in data.json). Corpus-share scoring replaces raw-count velocity in the wire sweep (fixes instrument ceiling); DW added as ninth source; Eurasia Hemisphere Pivot card 68→70 (Argentina peg-defense entry). |
| 2026-09-22 · v3.0.2 | Movers card persistence fix (export now preserves movers across deploys; canonical hand-maintained overlay); timestamp rendering fixed; stateful-bug class closed. Methodology section updated: headline suite n=7 macro eras, 6-run policy track reported separately, Falsifiability Collapse Protocol promoted to standing clause. |
| 2026-09-21 · v3.0.0 | v3.0.0 — collapsible MGET Ledger (215 entries, newest-first, verdict filter chips); header explainer defining the four legs and verdict vocabulary; fix: prediction card field mismatch (confidence_score → confidence) restoring badge/sort/share-card fidelity. |
| 2026-09-21 · v3.0.1 | Staging pipeline rebuilt on MCP push protocol (staging-first verify before prod); data rebuilt from canonical /space at 215 ledger entries; VERSION bumped. |
| 2026-09-21 · v3.0.0 | Shard-aware loader (renderer expands _sharded arrays, killing the predictions.forEach error); movers card rebuilt: collapsed by default, descending order, 24h window keyed to newest ledger entry, one-line format (date · title · confidence shift + evidence); macro_forecast restored as build-time derivation from canonical prediction card; deploy pipeline hardened: 40KB transport cap, stdin payloads, API-based verification. |
| 2026-09-17 · v2.8.1–v2.8.7 | Share-card engine rebuilt after a deploy incident: shell/data separation hardened, card renderer now pulls live sections (plain-English, evidence, falsifier) at click time; plain-English auto-draft persisted in the export layer so it survives deploys. |
| 2026-09-17 · v2.7 | 📸 Share Card on every prediction card and the macro forecast header. Card exports the claim, plain-English translation, evidence chain, and armed falsifier as one shareable image. |
| 2026-09-17 · v2.6 | Sparklines removed (low signal-to-noise); share-card engine v1 shipped. |
| 2026-09-15 · v2.4 | Added Data Dictionary section (15 field definitions) and this Change Log. Data layer rebuilt from live source-of-truth export after a stale-data bug was caught: Hormuz entry flipped to confirmed per its own falsifier criteria. |
| 2026-09-15 · v2.4 | Confidence-history sparklines added to every prediction card — daily snapshots auto-merged on each deploy via persistent history.json. |
| 2026-09-14 · v2.3 | Methodology explainer section: MGET legs, falsifier discipline, lead-time, Threshold Watch, blind backtest results. |
| 2026-09-14 · v2.2 | Professional layout; log/resolve dates with lead-time display; Threshold Watch banner indicator with expandable issuance text. |
| 2026-09-14 · v2.1 | Forecast language, confidence normalization, public header. |
| 2026-09-14 · v2.0 | Data-driven rebuild: board renders live from data.json; live 94% macro forecast; credentials stripped from public files. |
| 2026-09-11 · v1.x | Early auto-sync builds — static board, first public deployment. |
Full commit history: github.com/pilot2969/cass-dashboards