Cos'è questo sito
Tracker informativo e neutro del focolaio di hantavirus (variante Andes, Orthohantavirus andesense) emerso a bordo della nave da crociera MV Hondius (operatore Oceanwide Expeditions, IMO 9818374), partita da Ushuaia il 1 aprile 2026.
Il sito raccoglie eventi geolocalizzati e li mostra su mappa, separando conteggi ufficiali (WHO/ECDC/autorità nazionali) da segnalazioni media (in monitoraggio, in attesa di verifica). Tono neutro, niente commento editoriale, niente raccomandazioni mediche.
Aggiornamento
Pipeline automatica ogni 6 ore. 37 feed RSS aggregati: WHO DON, ECDC, PAHO, Salute.gov.it, ISS, RKI, BAG, RIVM, CDC + ProMED, CIDRAP, BBC Health, Reuters, Guardian, ANSA, Repubblica + Google News query in IT/EN/ES/DE/NL/FR/PT. Job notturno 03:17 per audit feed, risoluzione location vaghe, cleanup.
🤖 Pipeline gestita da agenti AI
Trasparenza importante: questo sito è in gran parte mantenuto da una pipeline autonoma di agenti AI (modelli Claude di Anthropic), non da una redazione umana. L'estrazione di eventi dalle news, la classificazione delle fonti, la deduplicazione dei casi e le diagnosi di errori della pipeline sono fatte da modelli linguistici, in modo automatico, ogni 6 ore.
| Agente | Cosa fa | Modello |
|---|---|---|
| extract | Legge gli articoli, estrae eventi/snapshot/ritrattazioni strutturati in JSON | Claude Sonnet |
| case_validator | Quando WHO/ECDC dichiara più casi del registro tracciato, identifica i mancanti | Claude Opus |
| location_resolver | Notturno: disambigua location vaghe, propone canonical name | Claude Sonnet |
| feed_auditor | Notturno: health check fonti, scopre nuovi domini, classifica autorità | Claude Sonnet |
| debug_doctor | Su pipeline failure: classifica errore e propone fix manuali | Claude Sonnet |
Limiti dichiarati di questo approccio:
- Gli agenti AI possono commettere errori di classificazione (es. attribuire un articolo a un'autorità sbagliata, estrarre un caso che è in realtà solo una citazione, fraintendere un titolo).
- Le ritrattazioni automatiche rilevano solo smentite esplicite ("non era hantavirus", "test negativi"). Smentite implicite passano inosservate.
- I conteggi ufficiali nel pannello principale sono presi verbatim dal bollettino primario (WHO/ECDC/autorità) — su questi l'AI non interpreta, copia.
- Il case registry bootstrap iniziale è stato compilato manualmente. I successivi aggiornamenti sono auto-proposti dall'AI
case_validatore potrebbero contenere ipotesi non confermate (visibili comec-XXX-inferrednelle note).
Per ogni evento puoi controllare la cronologia delle decisioni AI nel popup ("Cronologia aggiornamenti") e i link alle fonti originali. Se trovi un errore, segnalacelo via mail (vedi privacy).
Tassonomia delle fonti
| Categoria | Esempi | Trattamento |
|---|---|---|
| WHO | WHO Disease Outbreak News | Primaria. Conteggi presi da qui. |
| ECDC | European CDC | Primaria europea. |
| Aut. nazionali | Min. Salute, ISS, RKI, BAG, CDC... | Primaria nazionale. |
| Scientifico | ProMED, CIDRAP, Lancet, NEJM | Secondaria qualificata. |
| Media intl | NPR, CNN, BBC, Reuters, AP | Secondaria. |
| Media IT | ANSA, Sky TG24, Il Post, Repubblica | Secondaria. |
| Tabloid | Leggo, Daily Mail, Bild | Off di default. |
Disciplina sui numeri
I conteggi confermati/sospetti/decessi
mostrati come "ufficiali" vengono esclusivamente dall'ultimo
snapshot autoritativo a scope cruise_ship/global.
Non vengono mai sommati con altri snapshot.
I numeri "monitorati nei media" sono il count di eventi
confirmed_case/suspect_case/death da
fonti non primarie, dopo dedup euristico per (paese, categoria, ±3 giorni).
Sono indicativi.
Privacy
Nessun nominativo. Solo paese di residenza per i decessi.
Verifica e tracciamento
Ogni evento ha un verification_status:
- Verificato — almeno 1 fonte primaria (WHO/ECDC/aut. nazionale)
- Corroborato — ≥2 fonti secondarie indipendenti
- Da monitorare — singola fonte secondaria
- Contestato — smentito da fonte successiva
Il sistema promuove automaticamente lo status quando arrivano nuove fonti. Cronologia completa visibile nel popup di ogni evento.
Tono degli articoli e Panic Gap
La sezione "Il clima informativo" in homepage misura come gli articoli scrivono dell'outbreak, non solo cosa scrivono. È uno strumento descrittivo, non normativo: serve a quantificare un fenomeno noto — la divergenza fra tono dei bollettini ufficiali e tono della copertura mediatica — non a giudicare le testate.
Cosa misuriamo: alarm_score 0-100
Per ogni articolo on-topic, un modello linguistico (Claude Sonnet) assegna uno score 0-100 che riflette quanto il testo è scritto in tono allarmistico. Misura lo stile, non la gravità reale dei fatti riportati.
Calibrazione esplicita su 4 anchor (riportati nel prompt del modello):
| Score | Stile | Esempio |
|---|---|---|
| 0–15 | Clinico / istituzionale | "WHO confirms 2 cases on MV Hondius (DON599)" |
| 16–35 | Notizia neutra | "Cruise ship hantavirus: what we know so far" |
| 36–60 | Enfatizzato / drammatico | "Mystery virus on cruise ship spreads — race to contain" |
| 61–85 | Sensazionalista | "Killer cruise virus, passengers panic" |
| 86–100 | Panico / tabloid estremo | "KILLER VIRUS, passengers TRAPPED, dying like flies" |
Validazione su 4 articoli sintetici dagli estremi della scala: il modello scoreaa con errore medio assoluto ≈3 punti su 100. Per uno score qualitativo è sufficiente.
Lo score si basa solo sul testo dell'articolo (titolo + sommario RSS). Un articolo che riporta fatti gravi in modo asciutto ottiene score basso; un tabloid che drammatizza fatti banali ottiene score alto. Questo è voluto.
Cosa è "on-topic"
Gli articoli che non parlano dell'outbreak MV Hondius (es. endometriosi, nucleare, sport) non producono uno score. Lo score si emette solo se l'articolo menziona hantavirus, MV Hondius, focolaio crociera, o porti coinvolti (Ushuaia, Praia, Tenerife, Canarie).
Panic Gap
Definizione esatta:
panic_gap = avg(alarm_score) di articoli media non-tabloid
− avg(alarm_score) di bollettini WHO / ECDC / autorità nazionali
(finestra ultimi 30 giorni)
Misura quanto la copertura mediatica si discosta, in termini di stile, dal tono dei comunicati ufficiali. Numero positivo = media più allarmistici delle autorità (caso normale). Numero negativo = media più sobri delle autorità (raro). Se nei 30 giorni mancano bollettini ufficiali, il Panic Gap non è calcolabile e mostriamo solo il tono medio dei media.
Bande interpretative usate nella UI:
- ≤10 — media allineati col tono ufficiale
- 10–25 — amplificazione moderata, tipica di outbreak nuovi
- 25–50 — amplificazione marcata
- ≥50 — amplificazione estrema, copertura guidata dal panico
Le bande sono euristiche, non soglie scientifiche. Servono a leggere il numero a colpo d'occhio, non a etichettare definitivamente il clima.
Aggregazione e privacy editoriale
- Aggreghiamo per categoria di fonte (WHO, ECDC, scientific, media intl/IT/tabloid), mai per testata singola. Non vedrete mai "Repubblica = 78/100" su questo sito.
- Le citazioni rappresentative ("frase più allarmistica" / "più sobria") linkano l'articolo originale ma non lo classificano come buono o cattivo: sono esempi del lessico aggregato.
- Lo score di un singolo articolo è dato grezzo per l'aggregato, non un verdetto sull'articolo.
Limiti del metodo
- Un solo modello LLM scoreaa tutti gli articoli — bias del modello non compensato da diversi scorers. In V2 valuteremo cross-validation con un secondo LLM.
- Il prompt è esplicitamente calibrato sull'inglese; articoli in italiano, tedesco, spagnolo possono avere drift di 5-10 punti.
- Il modello vede solo titolo + sommario RSS. Se un articolo ha titolo bombastico ma corpo asciutto, lo penalizziamo per il titolo. È coerente con come il lettore medio "consuma" la notizia, ma è un trade-off.
- Le bande interpretative non hanno validazione empirica — sono ricavate dagli anchor di calibrazione. Vanno usate come indicatori, non come misure assolute.
Cosa non facciamo (e perché)
- No scoring di persone. Solo testo degli articoli.
- No misinformation flagging. Distinguere "tono allarmista" da "informazione errata" è un'altra disciplina; non la confondiamo.
- No copy editoriale ironico/allarmistico. Niente toast tipo "tabloid usa 'killer virus' 8 volte oggi": sarebbe esattamente il sensazionalismo che misuriamo. Il dato è asciutto, le label sono asciutte.
Limiti noti
- AIS posizione nave non integrato in tempo reale
- Estrazione automatica può errare; ogni evento ha link alle fonti corroboranti
- Date eventi: per assenza data esplicita, può essere usata data pubblicazione articolo
Disclaimer
Sito non istituzionale. Non sostituisce le indicazioni delle autorità sanitarie. Per informazioni ufficiali: WHO DON, ECDC, Ministero della Salute.
About this site
Neutral informational tracker for the hantavirus outbreak (Andes variant, Orthohantavirus andesense) on cruise ship MV Hondius (operator Oceanwide Expeditions, IMO 9818374), departed Ushuaia on April 1, 2026.
The site collects geolocalized events and shows them on a map, separating official counts (WHO/ECDC/national authorities) from media reports (under monitoring, pending verification). Neutral tone, no editorial comment, no medical recommendations.
Updates
Automatic pipeline every 6 hours. 37 RSS feeds aggregated: WHO DON, ECDC, PAHO, Italian Min. of Health, ISS, RKI (Germany), BAG (Switzerland), RIVM (Netherlands), US CDC + ProMED, CIDRAP, BBC Health, Reuters, Guardian, ANSA + Google News queries in IT/EN/ES/DE/NL/FR/PT. Nightly job at 03:17 for feed audit, vague-location resolver, cleanup.
🤖 Pipeline maintained by AI agents
Important transparency note: this site is largely maintained by an autonomous pipeline of AI agents (Claude models from Anthropic), not by a human newsroom. Event extraction from news, source classification, case deduplication, and pipeline error diagnosis are all done by language models, automatically, every 6 hours.
| Agent | Task | Model |
|---|---|---|
| extract | Reads articles, extracts structured events/snapshots/retractions JSON | Claude Sonnet |
| case_validator | When WHO/ECDC reports more cases than tracked registry, identifies missing | Claude Opus |
| location_resolver | Nightly: disambiguates vague locations, proposes canonical names | Claude Sonnet |
| feed_auditor | Nightly: feed health checks, discovers new hosts, classifies authority | Claude Sonnet |
| debug_doctor | On pipeline failure: classifies error, proposes manual fixes | Claude Sonnet |
Stated limitations of this approach:
- AI agents can misclassify (e.g. attributing an article to wrong authority, extracting a case that's actually just a citation, misreading a headline).
- Automatic retraction detection only catches explicit denials ("wasn't hantavirus", "negative tests"). Implicit retractions are missed.
- Official counts in the main panel are taken verbatim from the primary bulletin (WHO/ECDC/authority) — AI does not interpret these, only copies.
- The case registry initial bootstrap was compiled manually. Subsequent updates are AI-proposed by
case_validatorand may include unverified hypotheses (visible asc-XXX-inferredin notes).
For each event you can check the AI decision history in the popup ("Update timeline") and links to original sources. If you find an error, report it via the email in the privacy page.
Source taxonomy
| Category | Examples | Treatment |
|---|---|---|
| WHO | WHO Disease Outbreak News | Primary. Numbers come from here. |
| ECDC | European CDC | Primary EU. |
| National authorities | RKI, BAG, ISS, US CDC... | Primary national. |
| Scientific | ProMED, CIDRAP, Lancet, NEJM | Qualified secondary. |
| Intl media | NPR, CNN, BBC, Reuters, AP | Secondary. |
| Italian media | ANSA, Sky TG24, Il Post, Repubblica | Secondary. |
| Tabloid | Daily Mail, NY Post, Bild | Off by default. |
Number discipline
"Official" counts (confirmed/suspect/deaths)
come exclusively from the latest authoritative snapshot at
cruise_ship/global scope. They are never summed.
"Media-tracked" numbers count
confirmed_case/suspect_case/death events
from non-primary sources, after heuristic dedup (country, category, ±3 days).
Indicative only.
Privacy
No personal names. Country of residence only for deaths.
Verification & tracking
Each event carries a verification_status:
- Verified — at least 1 primary source
- Corroborated — ≥2 independent secondary sources
- Monitoring — single secondary source
- Disputed — denied by later source
Status auto-promoted when new sources arrive. Full timeline in each event popup.
Article tone and Panic Gap
The "Information climate" section on the homepage measures how articles write about the outbreak, not just what they say. It's a descriptive tool, not normative: it quantifies a known phenomenon — the gap between official bulletin tone and media coverage tone — without judging individual outlets.
What we measure: alarm_score 0-100
For each on-topic article, an LLM (Claude Sonnet) assigns a 0-100 score reflecting how alarmist the writing style is. Measures style, not the real severity of the reported facts.
Explicit calibration on 4 anchors (in the model's prompt):
| Score | Style | Example |
|---|---|---|
| 0–15 | Clinical / institutional | "WHO confirms 2 cases on MV Hondius (DON599)" |
| 16–35 | Neutral news | "Cruise ship hantavirus: what we know so far" |
| 36–60 | Emphasized / dramatic | "Mystery virus on cruise ship spreads — race to contain" |
| 61–85 | Sensationalist | "Killer cruise virus, passengers panic" |
| 86–100 | Panic / extreme tabloid | "KILLER VIRUS, passengers TRAPPED, dying like flies" |
Validated on 4 synthetic articles at the scale extremes: the model scores with mean absolute error ≈3 points out of 100. Sufficient for a qualitative score.
The score is based only on article text (title + RSS summary). A clinical article reporting grave facts gets a low score; a tabloid dramatizing banal facts gets a high score. This is intentional.
What is "on-topic"
Articles unrelated to the MV Hondius outbreak (e.g. endometriosis, nuclear, sports) do not produce a score. We score only if the article mentions hantavirus, MV Hondius, the cruise outbreak, or involved ports (Ushuaia, Praia, Tenerife, Canary Islands).
Panic Gap
Exact definition:
panic_gap = avg(alarm_score) of non-tabloid media articles
− avg(alarm_score) of WHO / ECDC / national authority bulletins
(last 30 days window)
Measures how far media coverage diverges, in style, from official communications. Positive number = media more alarmist than authorities (typical case). Negative = media more measured than authorities (rare). If no official bulletin exists in the 30-day window, Panic Gap is uncomputable and we show only average media tone.
Interpretive bands used in the UI:
- ≤10 — media aligned with official tone
- 10–25 — moderate amplification, typical for new outbreaks
- 25–50 — marked amplification
- ≥50 — extreme amplification, panic-driven coverage
Bands are heuristic, not scientific thresholds. They help read the number at a glance, not definitively label the climate.
Aggregation and editorial privacy
- We aggregate by source category (WHO, ECDC, scientific, media intl/IT/tabloid), never by single outlet. You will never see "Reuters = 78/100" on this site.
- Representative quotes ("most alarmed phrasing" / "most measured") link to the original article but do not classify it as good or bad: they are examples of the aggregate vocabulary.
- A single article's score is raw input for the aggregate, not a verdict on the article.
Method limitations
- A single LLM scores all articles — model bias not compensated by multiple scorers. V2 will evaluate cross-validation with a second LLM.
- The prompt is calibrated explicitly on English; Italian, German, Spanish articles may drift 5-10 points.
- The model only sees title + RSS summary. If an article has bombastic title but measured body, we penalize for the title. This matches how the average reader "consumes" news, but is a trade-off.
- Interpretive bands have no empirical validation — derived from calibration anchors. Use as indicators, not absolute measures.
What we don't do (and why)
- No scoring of people. Article text only.
- No misinformation flagging. Distinguishing "alarmist tone" from "incorrect information" is a separate discipline; we don't conflate them.
- No ironic/alarmist editorial copy. No toasts like "tabloids used 'killer virus' 8 times today": that would be exactly the sensationalism we measure. Data is dry, labels are dry.
Known limitations
- Live AIS ship position not integrated
- Automatic extraction can err; every event has links to corroborating sources
- Event dates: when not explicit, article publication date may be used
Disclaimer
Non-institutional site. Not a substitute for health authority guidance. For official information: WHO DON, ECDC, US CDC.