v18.9 · Risk Timeline + Score Drivers + Latest Data News Tracker · Hidden Case Detector
MV Hondius Andes Virus Dashboard — Reality vs Scenarios + Hidden Case Detection
v18.9 adds a containment-risk/score evolution graph and explicit rationale for score movement: public data → declared counts → score drivers → score history → scenario comparison.
For science communication and scenario exploration only. Not medical advice, not an official outbreak forecast, and not affiliated with public-health authorities or the vessel operator.
Share-safe public demo mode
Current source tag: direct. Use tagged links to see which channel works once Cloudflare Web Analytics is enabled.
🧭 How this dashboard works
Plain-language explanation for people opening the public link. The dashboard is a scenario tracker, not an official forecast.
v18.9 explainer
1Start from declared reality
The blue data points are the real declared case/death numbers stored in the tracker. The model anchor remains 13 May 2026: 11 declared cases and 3 deaths. The tracker now also seeds the latest trusted public update from ECDC: 17 May 2026, 12 reported cases and 3 deaths. You can update these manually or with the public scan.
2Compare four scenarios
The coloured curves are planning pathways: contained, hidden clusters, missed containment, and extreme stress-test. They are not predictions; they are reference curves used to see which pathway reality is closest to.
3Refresh containment from news
The refresh button calls the Cloudflare backend /api/containment. It reads official pages and public news feeds, extracts current reported counts, and looks for containment signals such as contact tracing, quarantine, no new cases, outside-list cases, testing, geography, and sequencing. The panel now explains which factors pushed the score up or down.
4Turn signals into a 0–100 score
A high score means public information is consistent with traced contacts, monitored/quarantined people, no unlinked cases, and stable or improving reports. A low score means the scan found weak tracing, geographic spread, outside-list/community signals, or rising case/death counts.
5Estimate hidden-chain risk
If auto-apply is enabled, the containment score updates the surveillance sliders. The hidden-case detector then estimates undetected cases, an effective R for hidden chains, and an out-of-control probability.
6Read plateaus correctly
Cumulative curves normally flatten when simulated new cases fade to near zero. Incident/pace charts are better for spotting a new wave. Since v18.3, the model uses smooth soft-saturation rather than a hard numerical roof.
80–100 strong containment
65–79 probably contained
45–64 mixed signals
25–44 weak containment
0–24 likely failing / insufficient data
Important limitation: the news score is a public-information triage score. It can miss paywalled/local reports, duplicate the same story, or misread vague wording. Use it as an early-warning aid, not as public-health evidence.
🎯 Reality Tracker — where the actual outbreak sits right now
Loading tracker…
Latest actual cases
12
Latest trusted public update · 17 May 2026
Latest actual deaths
3
CFR ≈ 27%
Closest scenario today
—
based on fitness score
Days since baseline
0
incubation window still open
Next data check due
Today
scan or log an update
🕵️ Hidden Case & Containment Detector — are unknown chains spreading?
Estimates undetected cases from surveillance signals. Tells you when the outbreak risks tipping out of control.
Loading…
📰 Automatic containment score from latest news
Not refreshed yet. Uses official pages + public news feeds when deployed.
—
containment score
Contact tracing
—
waiting for scan
Isolation speed
—
waiting for scan
Outside-list cases
—
waiting for scan
News confidence
—
waiting for scan
Why the score changed
Run a refresh to see the factors pushing the containment score up or down.
📉 Containment risk/score evolutionwaiting for scans
The graph is seeded with last week's dashboard anchor and stores each refresh in this browser.
The score starts from 50, then adds positive signals and subtracts warning signals. It also compares the current score with last week's anchor so you can see why risk pressure increased or decreased.
Andes infectious window ~7–14d. >3d = leakage to community.
147+ in quarantine. Below 80% reporting = symptoms missed.
Direct evidence of hidden chains. Each one = at least 1 missed line.
Estimated hidden cases & risk
Estimated hidden cases
—
range based on signals
Effective R (hidden chains)
—
need R<1 to contain
Out-of-control probability
—
based on signals
Days to threshold
—
to 50+ active cases
Containment ladder — where you sit right now
How the hidden-case math works: the detector first estimates a detection rate from the share of new cases already on the contact list, isolation speed, reporting completeness, testing intensity, geography, and sequencing. It then applies the Epuyén human-to-human anchor to estimate an effective R for any missed chains. Hidden cases increase when contact-list coverage falls, isolation is slow, reporting/testing is weak, or outside-list cases appear. The out-of-control probability is a smoothed warning score combining hidden-case count and R_effective. The 50-active-case threshold is a practical tracing-failure warning level, not a biological limit.
🔵 Real data vs the four scenarios — main comparison view
Large blue dots = actual declared data. Coloured lines = scenario predictions over 2 years. Vertical dashed line = today.
hero chart
How to read this: Blue dots are real-world declared cases/deaths. If they sit on or near the green line, the outbreak is tracking contained. If they rise faster and approach the amber/purple lines, hidden chains or missed containment is becoming more likely. The red line is a stress-test upper pathway, not a forecast. Cumulative curves should only rise or flatten; use the pace charts to detect true new waves. Late artificial terminal spikes were removed in v18.2; v18.3 removed visible hard caps by replacing them with smooth soft-saturation; v18.5 adds news-driven containment scoring.
📊 Scenario tracking — how each pathway compares to today's reality
For each scenario: what it predicts today, what reality says, the gap, and a fitness score (higher = better match).
side-by-side
Declared positive cases
11
latest extracted / entered
Declared deaths
3
reported mortality signal
Declared contacts universe
181
147 onboard + 34 prior disembarks
Declared quarantine / monitoring
147+
derived minimum; never forced to 0
Peak new deaths / fortnight
—
extreme H2H peak pace
2-year extreme deaths
—
stress test, not forecast
Argentina 2018–19 calibration anchor: Epuyén Andes-virus outbreak
The model is calibrated to a real human-to-human Andes-virus event, not an arbitrary curve.
calibration
Calibration variable
Epuyén 2018–19
How it is used here
Confirmed infections
34
Contained-outbreak final size after strong public-health action.
Deaths
11 → CFR ≈ 32%
Sets the fatality anchor; sliders remain adjustable.
Contacts quarantined
142
~4.2 quarantined contacts per final case (~7.9 at the 18-case trigger).
Pre-control R (serial)
2.12
Missed-containment / extreme H2H growth anchor.
Post-control R (serial)
0.96
Post-intervention decay anchor.
Control trigger
18 cases
Separates controlled response from delayed-recognition.
How to read it: solid lines are reported Epuyén anchors; dashed lines are the fitted base-case calibration.
📈 New infections / fortnight — with actual data overlay
Blue dots = actual increment between consecutive reports. Lines = scenarios.
scale-safe
Scenario probabilities
Epuyén-calibrated planning priors, setting-adjusted priors, visible-data match, and guarded posterior.
probability
Note: the red extreme curve is a stress test, not a central forecast. v18.3+ uses a soft-saturation mechanism, so incident curves bend smoothly instead of hitting a fixed numerical roof. v18.5 added the news-driven containment score; v18.7 added a public explanation panel; v18.9 adds risk/score evolution and movement rationale.
Mortality pace: new deaths / fortnight
Peak-pace view with actual death increments overlaid.
peak deaths
2-year cumulative deaths
Cumulative tail; actual deaths overlaid in blue.
2 years
Model controls
Adjust contact tracing intensity, CFR, R_t, and missed-start duration.
interactive
🔄 Auto-update public scan
Calls the deployed Cloudflare backend and updates actuals when extracted with high confidence.
/api/latest
Ready. When deployed, uses same-origin /api/latest.
Readable peak numbers for all four scenarios. v18.7 peaks are soft-saturated, not clipped at a fixed roof; containment inputs can be refreshed from news.
📝 Actual update log
Stored locally in your browser. Auto-scan or manual entry updates here.
Scenario definitions — what each pathway means
Clear epidemiological interpretation of the four modelled outcomes.
🟢 Controlled / traced
Epuyén-like rapid response. Effective contact tracing + isolation. R ≈ 0.6–0.9. Peak ≤ 12 cases. Wave fades within 8 fortnights.
🟠 Hidden clusters
Several small Epuyén-shaped microclusters from missed contacts. R ≈ 1.2. Peaks at 20–60 cases across 6–8 months, no sustained epidemic.
🟣 Missed containment
Delayed recognition (>18 cases before response). R = 2.12 for several serial intervals, then sharp bend post-intervention. Peaks 100s–1000s.
🔴 Extreme out-of-control H2H
Stress-test upper pathway. Multiple chains stay above R = 1 for the missed-start window. Soft-saturation bends growth progressively; no fixed numerical roof is imposed. Planning purpose only.