{
  "ok": true,
  "app_id": "ai.polycam",
  "comparable": true,
  "comparison_status": "comparable",
  "regressed": false,
  "grade_delta": "A ← B",
  "score_delta": 7,
  "from": {
    "scan_id": "d32387ea-6286-4f5d-bdc0-8fa633a2549d",
    "version": "4.0.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": 20739.664,
        "harvest": 8331.228000000005,
        "detectors": 10851.857999999991
      },
      "bytes_total": 169528370,
      "bytes_scanned": 169528370,
      "bytes_skipped": 0,
      "files_processed": 3043,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "dbcea376e283b4a375032037e4cd94147845a109c6cb55f9d6557ad1631f7c65"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "dceea0869dcdbee5114c8ce9d36de6f70292275070307fd3546b979d26a83233"
        },
        {
          "name": "config.en.apk",
          "sha256": "8203aa6c0d0489ea7a9d6a8ec1b15a1580784ff2459489c7d6a8070be57a3ec7"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "50be82af624b2a9c90ed092194178e4c26f447bd35cbddf315b601cf53216031"
        }
      ],
      "ruleset_sha256": "6627311253eb54bc361d5dd9a0abc2a0fe556e390d6b2031bca75e1800928ccd"
    },
    "grade": "B",
    "score": 88,
    "scanned_at": "2026-09-21T20:24:33.092Z"
  },
  "to": {
    "scan_id": "901b4544-cd1f-498e-8ed6-358cbb399bc2",
    "version": "4.0.3",
    "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": 18684.321,
        "harvest": 7539.059999999999,
        "detectors": 9767.634000000007
      },
      "bytes_total": 168111249,
      "bytes_scanned": 168111249,
      "bytes_skipped": 0,
      "files_processed": 3038,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "e8b63f3bec4ce0d10fcef1a67f46be7f3ed4b0da0026b8049f95a3eee844ae56"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "dbc9a144294b1db516ad6c9b7be0d9d1a0a7ddb456af55bcacce0206ccadbb92"
        },
        {
          "name": "config.en.apk",
          "sha256": "76800dcf457eb531c9c320399e875f25f67a169e66d09d3c9f5d1d80a631f5b6"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "862c3aa2663512bf05a05280479f02a4cf403d152f47964e1bfae32dbbac69f3"
        }
      ],
      "ruleset_sha256": "a4c4120389ccc4b44afa23b5786f6b8d2bf3dc47ca546355bb3ef6da4a54b513"
    },
    "grade": "A",
    "score": 95,
    "scanned_at": "2026-09-30T23:56:25.414Z"
  },
  "findings": {
    "added": [
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "fingerprint": "bbe5aad68430502ac099498bc7e1538a1ce6adf78d9e324060027c3869a12d59",
        "verified": false
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "fingerprint": "553d09d487ef6ff12f9186943516b215e75c578fde7e3737454306d9a5e0c60b",
        "verified": false
      }
    ],
    "removed": [
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "fingerprint": "42d8ed52b975a7be1c7ba099eb5d0071049474745e4157dccd1ddefe36165739",
        "verified": false
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "fingerprint": "5de46b82b2a9e015764d3004c425be1a03d42b6923868ad66a3ebc0e7dd17513",
        "verified": false
      },
      {
        "finding_type": 78,
        "severity": "medium",
        "title": "Ships third-party ad/analytics SDKs but Data Safety declares no data shared",
        "fingerprint": "2b54e044aaab4c3f757c82024e4d291eb1074bc851c642350ce6faee6f887e08",
        "verified": false
      }
    ],
    "persisting_count": 13,
    "added_by_sev": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 2
    },
    "removed_by_sev": {
      "critical": 0,
      "high": 0,
      "medium": 1,
      "low": 2
    }
  },
  "trackers": {
    "added": [
      "Google Analytics for Firebase"
    ],
    "removed": [
      "Google AdServices"
    ]
  },
  "known_vulns": {
    "from": 0,
    "to": 0,
    "delta": 0,
    "from_recorded": true,
    "to_recorded": true
  }
}