{
  "ok": true,
  "app_id": "com.apptegy.doniphan",
  "comparable": true,
  "comparison_status": "comparable",
  "regressed": false,
  "grade_delta": "A ← A",
  "score_delta": 0,
  "from": {
    "scan_id": "345547e6-2fac-4e2f-b0c4-1b9ff0d9c671",
    "version": "5.9.0",
    "analysis": {
      "issues": [],
      "stages": {
        "pii": "complete",
        "sbom": "complete",
        "signing": "certificate_parsed",
        "strings": "complete",
        "manifest": "complete"
      },
      "status": "complete",
      "grading": {
        "policy": "static-coverage-v1",
        "blockers": [],
        "eligible": true
      },
      "timings_ms": {
        "total": 4708.45,
        "harvest": 1448.0520000000008,
        "detectors": 2697.5119999999965
      },
      "bytes_total": 30356643,
      "bytes_scanned": 30356643,
      "bytes_skipped": 0,
      "files_processed": 1604,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "086624c989d50cd215c0e8e1433eac3477d2208c13c5fa774951534b8b53e503"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "91dfb6fd60d66752cdf25e2de8f183ce9a2eca47197e35f239e1933712697896"
        },
        {
          "name": "config.en.apk",
          "sha256": "7675b59c672ce1180a5b6c90ae3f25d4fcfac10a260e21cd35ab03d9ec210dda"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "6d0c7163feebeb2e631ebd3ba224342850c410f6439cd233f69ccc3e063ba231"
        }
      ],
      "ruleset_sha256": "fb649a88cc2e66d8cb5b3c389ee4628bf97383e131015c594e187dc06eabcef7"
    },
    "grade": "A",
    "score": 97,
    "scanned_at": "2026-09-19T02:17:00.417Z"
  },
  "to": {
    "scan_id": "052b6cb8-9cb0-4309-84e2-b7dddc158568",
    "version": "5.9.0",
    "analysis": {
      "issues": [],
      "stages": {
        "pii": "complete",
        "sbom": "complete",
        "signing": "certificate_parsed",
        "strings": "complete",
        "manifest": "complete"
      },
      "status": "complete",
      "grading": {
        "policy": "static-coverage-v1",
        "blockers": [],
        "eligible": true
      },
      "timings_ms": {
        "total": 5096.248,
        "harvest": 1538.0530000000028,
        "detectors": 2953.256999999999
      },
      "bytes_total": 30356643,
      "bytes_scanned": 30356643,
      "bytes_skipped": 0,
      "files_processed": 1604,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "086624c989d50cd215c0e8e1433eac3477d2208c13c5fa774951534b8b53e503"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "91dfb6fd60d66752cdf25e2de8f183ce9a2eca47197e35f239e1933712697896"
        },
        {
          "name": "config.en.apk",
          "sha256": "7675b59c672ce1180a5b6c90ae3f25d4fcfac10a260e21cd35ab03d9ec210dda"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "6d0c7163feebeb2e631ebd3ba224342850c410f6439cd233f69ccc3e063ba231"
        }
      ],
      "ruleset_sha256": "3bb79cc3710b0fb021feaa322578f4cffe08396a97c51b34df092b5a05891d5e"
    },
    "grade": "A",
    "score": 97,
    "scanned_at": "2026-10-07T01:41:47.453Z"
  },
  "findings": {
    "added": [],
    "removed": [],
    "persisting_count": 4,
    "added_by_sev": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 0
    },
    "removed_by_sev": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 0
    }
  },
  "trackers": {
    "added": [
      "Google Analytics for Firebase"
    ],
    "removed": [
      "Google AdServices"
    ]
  },
  "known_vulns": {
    "from": 0,
    "to": 0,
    "delta": 0,
    "from_recorded": true,
    "to_recorded": true
  }
}