{
  "api_version": "v1",
  "year": 2025,
  "audit_status": "verified_from_user-run PowerShell audit on 2026-07-29",
  "zip_analysis": {
    "zip_areas": 76,
    "aggregate_calls": 1662210,
    "arrest_source_rows_represented": 59155,
    "offense_source_rows_represented": 135285,
    "arrests_per_100_offenses": 43.7,
    "ratio_type": "aggregate row-count ratio",
    "clearance_rate": false
  },
  "original_source_files": {
    "arrests": {
      "path": "E:\\SAPD\\pubsafedash_arrests.csv",
      "all_rows": 191724,
      "rows_2025": 59505,
      "unique_report_ids_2025": 37247,
      "rows_not_represented_in_zip_outcome": 350,
      "percent_not_represented": 0.59
    },
    "offenses": {
      "path": "E:\\SAPD\\pubsafedash_offenses.csv",
      "all_rows": 516255,
      "rows_2025": 136708,
      "unique_report_ids_2025": 125125,
      "rows_not_represented_in_zip_outcome": 1423,
      "percent_not_represented": 1.04
    },
    "zip_outcomes": {
      "path": "E:\\SAPD\\sapd_safety_outcomes.csv",
      "all_zip_year_rows": 298,
      "rows_2025": 76
    },
    "raw_calls_file_in_audit": false
  },
  "interpretation_statement": "The 2025 ZIP analysis includes 59,155 arrest-source rows and 135,285 offense-source rows assigned to 76 ZIP areas. The original source files contain 59,505 arrest rows and 136,708 offense rows for 2025. Approximately 0.59% of arrest rows and 1.04% of offense rows were not represented in the ZIP-level outcome table. Source rows are not equivalent to unique reports: the arrest data contains 37,247 unique Report IDs, while the offense data contains 125,125 unique Report IDs. The arrests-per-100-offenses measure is an aggregate row-count ratio and must not be interpreted as a clearance rate."
}
