Retention and projection

GET /api/bng/audit/storage                             read_only

Reports the audit log's disk footprint and projects when it will reach its cap.

{
  "current_size_mb": 12.345,
  "archive_count": 3,
  "oldest_archive_at": "2026-04-12T00:00:00Z",
  "oldest_live_entry_at": 1752700000.0,
  "projected_full_in_days": 23
}

The projection is a linear extrapolation from the observed growth rate against
the configured cap. It returns null when there is insufficient data — no
entries, zero size, or less than a minute of history — and 0 when already at or
over the cap. Note that oldest_archive_at is read from the archive filename
rather than the file's modification time, so it survives file copying and
restoration. The endpoint always returns 200 and degrades every field
independently.