# Changelog of Outbreak Watch — WHO Disease Outbreak Alerts (`0xgollum/outbreak-watch`) Actor

- **URL**: https://apify.com/0xgollum/outbreak-watch/changelog.md
- **Full Actor documentation**: https://apify.com/0xgollum/outbreak-watch.md

## Changelog

### 0.1.x — Reliability pass (portfolio-wide sweep, 09/09/2026)

**Fixed**

- **The seen-report memory was trimmed at random.** The 500-id cap was applied
  to a Python set (`list(all_ids)[-500:]`), which has no order — so the ids
  dropped were arbitrary, and an old report could come back as "new". The
  memory is now an ordered list, oldest first, and the cap drops the oldest.
- **Reports held back by `max_results` were lost.** State was written before
  the cap was applied. It is now written after `push_data`, only for the rows
  it actually accepted; held-back reports return on the next run — in the
  right order, so `new_cases_since_last_report` stays a correct step-by-step
  delta. The per-disease case/death totals are likewise advanced only through
  the last report actually delivered.
- **A quiet run was counted as a failed run.** Nothing was pushed when no new
  matching report existed; Apify counts zero dataset items as failure. A quiet
  run, the silent first run, and a run where the WHO feed was unreachable now
  each push one `disease: "status"` row saying why.

**Changed**

- `checked_at` is a full UTC timestamp.
