{"aci":{"active":true,"alpha":0.24,"empirical_coverage":0.9058,"last_updated":"2026-07-13T03:45:01.743683+00:00","n_observations":2430,"q_applied":0.35,"q_raw":0.7644},"aci_alpha":0.24,"confidence":0.85,"country":"IR","country_name":"Iran","covered":true,"forecast":[{"date":"2026-07-13","day":0,"drivers":[],"risk":0.01},{"date":"2026-07-14","day":1,"drivers":[],"risk":0.01},{"date":"2026-07-15","day":2,"drivers":[],"risk":0.01},{"date":"2026-07-16","day":3,"drivers":[],"risk":0.01},{"date":"2026-07-17","day":4,"drivers":[],"risk":0.025},{"date":"2026-07-18","day":5,"drivers":[],"risk":0.029},{"date":"2026-07-19","day":6,"drivers":[],"risk":0.02},{"date":"2026-07-20","day":7,"drivers":[],"risk":0.036}],"forecast_trajectory_note":"summary.max_risk is now the independently-validated honest 7-day event probability. The per-day forecast[] trajectory is the legacy v1 illustrative shape (NOT independently validated) — use honest_forecast for the headline; the v1 value is kept as max_risk_v1_leaky.","generated_at":"2026-07-13T18:13:49.358642","honest_caveat":{"confidence_is":"fixed in-sample model confidence, NOT a per-forecast calibrated probability","correct_use":"Use for cross-country RISK RANKING, not precise within-country day-of-shutdown timing.","headline_auc_note":"Training ROC AUC 0.954 came from a RANDOM stratified split (consecutive country-days in an incident window are near-duplicates, inflating it). No target leakage: features use [date-7,date], label uses [date+1,date+7].","honest_temporal_holdout_auc":"~0.85-0.90 (dual-holdout temporal gate)","live_forward_accountability":["GET /v1/sentinel/accuracy (rolling 30-day precision/recall; currently self-reported degraded)","GET /v1/forecast/onset-skill (honest onset / forward skill)"],"source":"ML_LEAKAGE_AUDIT.md (forecast v1/7day row)."},"honest_forecast":{"as_of":"2026-07-12","flag":false,"is_headline_source":true,"probability":0.3469,"recommended_threshold":0.65,"risk_band":"low","semantics":"probability of a censorship/connectivity EVENT in the next 7 days (country-relative z-score label)","validation":"Independent OONI-grounded + leakage-free. Rolling-origin AUC ~0.815, PR-AUC ~0.29; beats persistence/climatology in all 9 temporal folds; LOCO beats persistence 49/51 countries. See /v1/forecast/honest/info."},"interval_90":[0,0.38599999999999995],"model_version":"honest_forecast_v1","summary":{"avg_risk":0.019,"key_drivers":[],"max_risk":0.3469,"max_risk_day":7,"max_risk_v1_leaky":0.036},"top_features":[{"contribution":-0.0156,"direction":"down","name":"week_of_year"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d"},{"contribution":-0.0051,"direction":"down","name":"gdelt_protests_7d"}],"top_features_per_day":[{"base_prob":0,"date":"2026-07-13","day":0,"risk":0.01,"top_features":[{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"},{"contribution":-0.0051,"direction":"down","name":"gdelt_protests_7d","source":"model"}]},{"base_prob":0,"date":"2026-07-14","day":1,"risk":0.01,"top_features":[{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"},{"contribution":-0.0051,"direction":"down","name":"gdelt_protests_7d","source":"model"}]},{"base_prob":0,"date":"2026-07-15","day":2,"risk":0.01,"top_features":[{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"},{"contribution":0.01,"direction":"up","name":"day_decay_t+2","source":"overlay"}]},{"base_prob":0,"date":"2026-07-16","day":3,"risk":0.01,"top_features":[{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.015,"direction":"up","name":"day_decay_t+3","source":"overlay"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"}]},{"base_prob":0,"date":"2026-07-17","day":4,"risk":0.025,"top_features":[{"contribution":0.02,"direction":"up","name":"day_decay_t+4","source":"overlay"},{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"}]},{"base_prob":0,"date":"2026-07-18","day":5,"risk":0.029,"top_features":[{"contribution":0.025,"direction":"up","name":"day_decay_t+5","source":"overlay"},{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"}]},{"base_prob":0,"date":"2026-07-19","day":6,"risk":0.02,"top_features":[{"contribution":0.03,"direction":"up","name":"day_decay_t+6","source":"overlay"},{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"}]},{"base_prob":0,"date":"2026-07-20","day":7,"risk":0.036,"top_features":[{"contribution":0.035,"direction":"up","name":"day_decay_t+7","source":"overlay"},{"contribution":-0.0156,"direction":"down","name":"week_of_year","source":"model"},{"contribution":0.0105,"direction":"up","name":"incident_count_7d","source":"model"}]}],"_voidly_pay":{"claim_did":"https://voidly.ai/pay/claim","for_builders":"https://voidly.ai/pay/for-builders","marketplace":"https://api.voidly.ai/v1/pay/marketplace","live_demo":"https://huggingface.co/spaces/emperor-mew/voidly-pay","universal_proxy":{"url":"https://api.voidly.ai/v1/pay/proxy","example":"https://api.voidly.ai/v1/pay/proxy?u=<https-url>&to=did:voidly:<your-did>&price=0.01","page":"https://voidly.ai/pay/proxy","note":"Paywall any public HTTPS URL with one query param. No SDK install required."},"install":{"typescript":"npm install @voidly/pay","python":"pip install voidly-pay","langchain":"pip install voidly-pay-langchain","vercel_ai":"npm install @voidly/pay-vercel-ai","mcp":"npx @voidly/pay-mcp","cli":"npm install -g @voidly/pay-cli"},"note":"Voidly Pay is the open agent-to-agent payment rail. Claim a DID + 10 starter credits in 60s, or paywall any URL via the universal proxy with one query param."}}