{"version":1,"population":"forward_live_proof","boundary":"Public calibration lists forward settlements only. Proof ledger and backward replay are separate populations.","settled":0,"pending":0,"averageBrier":null,"averageBrierFeedPreview":null,"hitRate":null,"brierTrend":null,"populationSplit":{"userDeclared":{"settled":0,"averageBrier":null,"hitRate":null,"wiringSmokeSettled":0,"empiricalSettled":0,"foreseenHistoricalSettled":0,"empiricalBoundary":"User game lane empty — KELLY still learns from feed observations and historical corpus without owner pins.","foreseenBridgePatchId":"patch-foreseen-outcome-bridge-1","wiringBoundary":"Wiring-smoke auto-closes prove loop plumbing — not forecast skill.","empiricalNudge":null},"feedObservation":{"settled":0,"averageBrier":null,"hitRate":null},"boundary":"User and feed paths are separate populations — never merged into one claim."},"horizonCalibration":{"unit":"ticks","footnote":"Horizons are engine ticks; see bucket labels.","tickFootnote":"Horizons are measured in engine ticks, not market close times. Buckets group how many ticks elapsed between forecast registration and settlement eligibility.","defaultPopulation":"user_declared","defaultBucketId":"all","buckets":[{"id":"immediate","label":"Immediate (1–3 ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null},{"id":"short","label":"Short (4–12 ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null},{"id":"medium","label":"Medium (13–48 ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null},{"id":"long","label":"Long (49+ ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null}],"all":{"id":"all","label":"All horizons","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null,"population":"user_declared"},"marketsSubset":{"templateId":"markets","buckets":[{"id":"immediate","label":"Immediate (1–3 ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null},{"id":"short","label":"Short (4–12 ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null},{"id":"medium","label":"Medium (13–48 ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null},{"id":"long","label":"Long (49+ ticks)","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null}],"all":{"id":"all","label":"All horizons","count":0,"averageBrier":null,"hitRate":null,"expectedActualBins":[],"resolutionComposition":{"yes":0,"no":0,"yesPct":0,"noPct":0},"brierDecomposition":null,"population":"user_declared"}},"feedPreview":null,"legacySettlementsWithoutHorizon":0},"brierDecomposition":null,"compositeStatus":"waiting_first_settlement","phase3Gate":{"meanConfidence":0.410526,"weakNodeCount":0,"threshold":0.55,"limit":8,"cleared":false,"progress":0.860526},"driveGaps":["forward_proof_below_calibration_threshold","baseline_matched_settlements_below_5","baseline_no_preregistered_matches_yet"],"driveGapLabels":[{"id":"forward_proof_below_calibration_threshold","label":"Still building forward proof — skill claims stay gated until enough live settlements."},{"id":"baseline_matched_settlements_below_5","label":"Not enough preregistered matches yet for a baseline verdict."},{"id":"baseline_no_preregistered_matches_yet","label":"No preregistered question matches yet."}],"settlements":[],"baselineScoreboard":{"version":1,"taskId":"baseline-scoreboard","patch":81,"preregisteredAt":"2026-06-01T00:00:00.000Z","preregisteredCount":50,"naiveBaseline":{"label":"Coin-flip (50%)","probability":0.5,"brier":0.25,"boundary":"Naive baseline always predicts 0.5 on binary questions — Brier 0.25 per settlement."},"sportNaiveBaseline":null,"matchedCount":0,"beatCount":0,"loseCount":0,"tieCount":0,"kellyAverageBrier":null,"posture":"building","headline":"Baseline scoreboard building","gaps":["baseline_matched_settlements_below_5","baseline_no_preregistered_matches_yet"],"honestLosses":[],"recentMatches":[],"boundary":"Scoreboard compares forward settlements to preregistered questions only. Unmatched settlements stay on the main table."},"trustCopy":{"version":1,"methods":"Scores come from live forward settlements. Reliability buckets group similar predicted probabilities. Historical replay and proof-ledger rows are excluded.","methodsDetail":"Brier scores measure squared error between predicted probability and outcome (0 or 1). Lower is better — 0.25 is what a coin flip scores on yes/no questions.","faq":[{"id":"what-counts","question":"What counts toward this page?","answer":"Only forecasts registered before the outcome arrived."},{"id":"what-is-brier","question":"What is a Brier score?","answer":"Average squared error between your predicted probability and what happened. Lower is better. 0.25 is what a coin flip scores on yes/no questions."},{"id":"coin-flip","question":"Why compare to a coin flip?","answer":"It is the naive baseline on our preregistered questions — always predicting 50/50."},{"id":"sample-size","question":"Why so few settlements?","answer":"We are honest about sample size. Skill claims stay gated until enough forward proof exists."},{"id":"feed-vs-yours","question":"What is feed preview?","answer":"Feed observations are shown separately. They never merge into your declared outcome skill."},{"id":"uncertainty-literacy","question":"What does uncertainty mean here?","answer":"The decomposition strip shows how much outcomes varied on their own, how well our probabilities matched reality, and how sharply we moved away from the base rate. Lower Brier is better — but a small sample can mislead."},{"id":"read-charts-honestly","question":"How should I read these charts?","answer":"Check sample size first. Dots far from the diagonal mean miscalibration. The sparkline shows movement — not proof of skill until enough forward settlements exist."}],"statLabels":{"settled":"scored forecasts","brier":"average Brier score (lower is better)","trend":"getting better or worse","pending":"waiting on outcomes"},"pills":{"baseline":"preregistered","gaps":"gaps we're honest about","reliability":"live forecasts","horizon":"by time horizon","decomposition":"skill breakdown","composition":"how outcomes resolved","methods":"how to read this page","settlements":"live forecasts","gneiting":"Gneiting method"},"trendLabels":{"improving":"getting better","worsening":"getting worse","flat":"holding steady","building":"still building"},"sparkCaption":"How our scores have moved lately","chartLiteracy":{"reliabilityNote":"Dot size shows how many forecasts landed in each bucket — small buckets are noisy.","decompositionNote":"Reliability, resolution, and uncertainty split mean Brier — illustrative, not a trading signal.","methodsCitation":"Gneiting & Raftery (2007); public literacy per Spiegelhalter — Art of Statistics."},"canonCSupplements":[{"title":"The Art of Statistics","author":"David Spiegelhalter","layer":"L1","status":"wired"},{"title":"Calling Bullshit","author":"Bergstrom & West","layer":"L1+align","status":"wired"}],"boundary":"Only forecasts written before the outcome count toward calibration."},"libraryEngines":{"version":1,"l1":{"noiseDrift":{"version":1,"status":"building","inconsistencyScore":null,"driftLabel":"still building","sampleSize":0,"minimumSample":5,"readingInfluence":["Noise"],"boundary":"Judgment inconsistency needs more forward settlements before scoring drift."},"epjStratification":{"version":1,"status":"building","skillTier":"building","chimpBaselineBrier":0.25,"kellyMeanBrier":null,"beatBaseline":0,"loseBaseline":0,"matchedCount":0,"readingInfluence":["Expert Political Judgment"],"boundary":"Fox-vs-chimp stratification needs preregistered matches — not merged populations."}},"l3":{"grindEv":{"version":1,"status":"planned","mode":"grind","components":{"edge":null,"variance":null,"opportunityCost":null},"sampleSize":0,"readingInfluence":["Thinking in Bets","The Mathematics of Poker"],"boundary":"Grind EV decomposition is a Phase 6 stub — no trading signal until leakage gates clear.","gate":"phase-6"}},"l4":{"edgeLeakage":{"version":1,"status":"planned","guards":{"trainTestLeakage":"warn_only","lookaheadBars":"not_wired","slippageModel":"stub","latencyAsymmetry":"narrative_only"},"historicalRows":0,"replayMetric":"persistence_squared_error","readingInfluence":["Advances in Financial Machine Learning","Trading and Exchanges"],"boundary":"AFML leakage gates are warn-only stubs — historical replay never merges into forward calibration.","gate":"phase-6"}},"l6":{"nudgeChoice":{"version":1,"status":"planned","phaseGate":"phase-7","choiceArchitecture":{"defaultOptIn":false,"preserves25sCard":true,"preservesFirewall":true,"experimentPopulationSeparate":true},"experienceLevel":0,"decisionCardWired":true,"readingInfluence":["Nudge","Misbehaving"],"gatedReading":["Trustworthy Online Controlled Experiments"],"boundary":"Nudges may coach — never bypass the 25-second card or upgrade causal claims."}},"boundary":"Library-layer engines — observational stubs until phase gates clear."},"autoCloseWiringSmoke":{"version":1,"enabled":false,"count":0,"bootstrapCount":0,"tickAutoCount":0,"oneTapCount":0,"boundary":"Auto-close wiring smoke off — manual tablet loop only."},"forwardProofProgress":{"settled":0,"targetSettled":30,"remaining":30,"pending":0,"ripePending":0,"progress":0,"progressPct":0,"label":"Waiting for first forward settlement","nudge":"Register forward forecasts on observed template nodes, then keep matching feeds running.","accumulationPhase":"waiting_first_forecast","boundary":"Forward proof only — historical replay does not count."},"honesty":{"ledgerExcluded":true,"simulationExcluded":true,"minimumPublicSampleGoal":100,"belowPublicSampleGoal":true,"horizonStratificationEnabled":false,"legacySettlementsWithoutHorizon":0},"updatedAt":"2026-07-09T09:50:34.554Z","public_frontend_proxy":true,"public_safe":true,"read_only":true,"side_effect_class":"read_only_status","side_effects_performed":false,"side_effect_contract":{"route":"/api/calibration/public","method":"GET","side_effect_class":"read_only_status","prime_truth_mutation_allowed":false,"memory_write_allowed":false,"graphstate_mutation_allowed":false,"event_ledger_mutation_allowed":false,"provider_mutation_allowed":false},"prime_truth_mutation_allowed":false,"memory_write_allowed":false,"graphstate_mutation_allowed":false,"event_ledger_mutation_allowed":false,"provider_mutation_allowed":false,"proxy_source":"primary_engine_runtime_fallback"}