{"algorithm":"XGBoost shared model with domain one-hot","best_domain":{"loco_auc":1,"name":"tiktok.com"},"countries":["CN","RU","IN","VN","ID","SG","TR","AE","BD","TH","EG","MY","PK","SA","KZ","VE","MM","BY","KH","MA","QA","IR","IQ","HN","AZ","CU","US","KW","TZ","UZ","CA","FR","BH","JO","ES","DE","GB","BR","JP","NL","ZA","AU","MX","SE","KR","UG","NG","SY","RW","DZ"],"domains":["twitter.com","instagram.com","telegram.org","youtube.com","signal.org","facebook.com","whatsapp.com","protonvpn.com","medium.com","tiktok.com","psiphon.ca","bbc.com","getlantern.org","reddit.com","nytimes.com","theguardian.com","substack.com","tumblr.com","google.com","gemini.google.com","chat.openai.com","chatgpt.com","claude.ai","openai.com","huggingface.co","xvideos.com","pornhub.com","binance.com","copilot.github.com","skype.com","messenger.com","washingtonpost.com","voanews.com","rferl.org","aljazeera.com","expressvpn.com","duckduckgo.com","chat.mistral.ai","perplexity.ai","wechat.com","vpngate.net","chat.deepseek.com"],"feature_importance_top10":[{"feature":"n_block_7d","gain":0.350147215414233},{"feature":"block_rate_7d","gain":0.3143718680883261},{"feature":"anomaly_rate_7d","gain":0.11348354219159651},{"feature":"domain_onehot (collapsed)","gain":0.04019944383807909},{"feature":"is_weekend","gain":0.022500220127649146},{"feature":"anomaly_rate_30d","gain":0.020170605309042914},{"feature":"dow","gain":0.017224319130833082},{"feature":"blocked_elsewhere_30d","gain":0.017210953617984213},{"feature":"country_block_rate_7d","gain":0.013765918568081275},{"feature":"block_rate_30d","gain":0.011105426904973433}],"honest_caveats":["Single shared XGBoost across all (domain, country) pairs, with domain as one-hot. Thin-data domains borrow signal from data-rich ones, but per-domain AUC variance is wide.","LOCO uses top 12 most-active countries; held-out predictions are pooled across folds per domain.","Target is binary 'any block OR anomaly observation in next 7d on (domain, country) pair' — broader than 'confirmed-critical-only' because critical-level signals are sparse on a per-domain basis.","Countries with zero historical evidence on a domain score the base rate via the feature-vector floor.","Cross-country contagion feature (n_countries_blocked_30d) is the SAME for every country on a given (domain, date), so it cannot discriminate per-country within a day — it acts as a global 'is this domain hot right now' prior."],"horizon_days":7,"in_sample_auc":0.999100965335758,"isotonic_calibration":{"brier_post":0.04135927854212847,"brier_pre":0.06075959688766865,"improvement":0.01940031834554018,"n_calibration":21551},"loco_mean_auc_top_domains":0.9986715254430983,"loco_median_auc_top_domains":0.9993823311969676,"loco_n_folds":12,"loco_per_domain":{"bbc.com":{"auc":0.99907707253886,"n":852,"n_pos":772},"binance.com":{"auc":0.9999999999999999,"n":852,"n_pos":360},"chat.deepseek.com":{"auc":null,"n":13,"n_pos":0},"chat.mistral.ai":{"auc":1,"n":30,"n_pos":17},"chat.openai.com":{"auc":0.9989417989417989,"n":326,"n_pos":270},"chatgpt.com":{"auc":0.9991765480895916,"n":333,"n_pos":264},"claude.ai":{"auc":0.9974733437768457,"n":334,"n_pos":257},"facebook.com":{"auc":0.9993043132578016,"n":852,"n_pos":774},"gemini.google.com":{"auc":0.985622902020394,"n":334,"n_pos":277},"getlantern.org":{"auc":0.9990889816471212,"n":852,"n_pos":774},"google.com":{"auc":0.9990932642487047,"n":852,"n_pos":772},"huggingface.co":{"auc":null,"n":154,"n_pos":154},"instagram.com":{"auc":0.9991274928774929,"n":852,"n_pos":780},"medium.com":{"auc":0.9994234943027672,"n":852,"n_pos":776},"nytimes.com":{"auc":0.9998099461514096,"n":852,"n_pos":770},"openai.com":{"auc":0.9927570461344671,"n":334,"n_pos":261},"perplexity.ai":{"auc":null,"n":17,"n_pos":17},"pornhub.com":{"auc":1,"n":852,"n_pos":360},"protonvpn.com":{"auc":0.9995252306022789,"n":852,"n_pos":776},"psiphon.ca":{"auc":0.9995362088385344,"n":852,"n_pos":774},"reddit.com":{"auc":0.999762432689262,"n":852,"n_pos":770},"signal.org":{"auc":0.9988130765056973,"n":852,"n_pos":776},"substack.com":{"auc":1,"n":852,"n_pos":768},"telegram.org":{"auc":0.999779571351058,"n":852,"n_pos":776},"theguardian.com":{"auc":0.9996674057649668,"n":852,"n_pos":770},"tiktok.com":{"auc":1,"n":852,"n_pos":770},"tumblr.com":{"auc":1,"n":852,"n_pos":768},"twitter.com":{"auc":0.999341168091168,"n":852,"n_pos":780},"whatsapp.com":{"auc":0.9984193705273398,"n":852,"n_pos":778},"xvideos.com":{"auc":1,"n":852,"n_pos":360},"youtube.com":{"auc":0.9990620440491906,"n":852,"n_pos":778}},"model_id":"per-domain-forecast-v1","n_countries":48,"n_domains":31,"n_positives":31795,"n_rows":42425,"passed_promote_floor":true,"promote_floor":0.65,"temporal_eval":{"ap":0.9944392019979604,"auc":0.9832836410147128,"brier":0.06075959688766865,"holdout_days":30,"n_test":21551,"n_test_pos":15811,"n_train":20874},"trained_at":"2026-05-21T14:55:19.100716Z","worst_domain":{"loco_auc":0.985622902020394,"name":"gemini.google.com"},"_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."}}