{
  "run_date": "2026-08-30",
  "source_manifest_path": "data/analysis_manifests/2026-08-30.json",
  "source_generated_at_local": "2026-08-30T05:50:50.331429+10:00",
  "bucket": "audo-backups",
  "report_prefix": "reports/2026-08-30",
  "input_summary": {
    "active_domains": 100,
    "latest_snapshot_rows": 100,
    "event_rows": 28,
    "collector_run_rows": 7,
    "cohort_count": 14
  },
  "summary": {
    "total_events": 28,
    "tier_1_count": 2,
    "tier_2_count": 0,
    "tier_3_count": 26,
    "unclassified_count": 0,
    "routine_churn_domain_count": 21,
    "repeated_address_churn_domain_count": 5,
    "high_signal_changes": [
      {
        "event_type": "nameservers_changed",
        "count": 2
      }
    ],
    "meaningful_infra_movement": []
  },
  "interpretation": {
    "enabled": true,
    "status": "available",
    "available_days": 90,
    "minimum_days": 30,
    "suppress_trend_language": false,
    "reason": "Ready for a strictly-guarded interpretation layer."
  },
  "artifacts": {
    "summary_json": "reports/2026-08-30/summary.json",
    "insights_json": "reports/2026-08-30/insights.json",
    "report_md": "reports/2026-08-30/report.md",
    "charts": [
      "reports/2026-08-30/charts/dns-provider-distribution.svg",
      "reports/2026-08-30/charts/dns-provider-distribution.png",
      "reports/2026-08-30/charts/dnssec-posture.svg",
      "reports/2026-08-30/charts/dnssec-posture.png",
      "reports/2026-08-30/charts/recent-observatory-event-types.svg",
      "reports/2026-08-30/charts/recent-observatory-event-types.png",
      "reports/2026-08-30/charts/observatory-events-30d.svg",
      "reports/2026-08-30/charts/observatory-events-30d.png"
    ],
    "manifest_json": "reports/2026-08-30/manifest.json",
    "interpretation_summaries_json": "reports/2026-08-30/interpretation-summaries.json",
    "monthly_interpretation_brief_json": "reports/2026-08-30/monthly-interpretation-brief.json"
  }
}