{
  "ok": true,
  "app_id": "com.kayak.android",
  "comparable": true,
  "comparison_status": "comparable",
  "regressed": false,
  "grade_delta": "B ← B",
  "score_delta": 0,
  "from": {
    "scan_id": "756b6b48-4e44-4ba2-8a8a-a9d8cf97b6d7",
    "version": "263.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": 25798.47,
        "harvest": 6520.477999999994,
        "detectors": 16959.016000000083
      },
      "bytes_total": 122978171,
      "bytes_scanned": 122978171,
      "bytes_skipped": 0,
      "files_processed": 5857,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "421828e42ece190e7c4b47d5e3ed6dc699f914f9941dab3ecdcab6da3be11c1c"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "951c4b16e7fceb56e2b5280468ca731606478f8569ae1dc870fd9f9a82569e94"
        },
        {
          "name": "config.en.apk",
          "sha256": "66ead8eb7ee06b1118b2779aa127c1f9aa9dcc41246fdb00a678438240dde279"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "2b18fb48568f9482f1aa46549b5e9514836ad03db60ea66b02e55c86bb4ee54a"
        }
      ],
      "ruleset_sha256": "6627311253eb54bc361d5dd9a0abc2a0fe556e390d6b2031bca75e1800928ccd"
    },
    "grade": "B",
    "score": 88,
    "scanned_at": "2026-09-21T18:57:57.834Z"
  },
  "to": {
    "scan_id": "0b3e58d0-4bd6-453f-bf24-caac05f6a8cd",
    "version": "264.2",
    "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": 14423.257,
        "harvest": 3646.993000000004,
        "detectors": 9402.454000000009
      },
      "bytes_total": 82994111,
      "bytes_scanned": 82994111,
      "bytes_skipped": 0,
      "files_processed": 3994,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "f8983060b8d2b6c7c3e2d915bc212f1d31f1dba6e8885d2fa77d59e48e203cf4"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "bd7368422d443e0d722ae56ef14961f26989d437e272ffef6b74fa256793e3eb"
        },
        {
          "name": "config.en.apk",
          "sha256": "c6c8ccd230ed8c9993975906ecb74e3488152d36704c5807b8ee22abf732ab51"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "ce12b85e106615887352a167d63763aa12bf0d1c3c5da80fb0d7e35995d381b5"
        }
      ],
      "ruleset_sha256": "69544396ce47de08b97fb3d04080662e1cbb38c704bd5aa3d4b7e5489cde22e8"
    },
    "grade": "B",
    "score": 88,
    "scanned_at": "2026-09-29T23:31:50.663Z"
  },
  "findings": {
    "added": [],
    "removed": [],
    "persisting_count": 9,
    "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
  }
}