{
  "ok": true,
  "app_id": "com.smartplanthome",
  "comparable": true,
  "comparison_status": "comparable",
  "regressed": false,
  "grade_delta": "A ← A",
  "score_delta": 8,
  "from": {
    "scan_id": "a09fe4c2-dd7c-4585-ab78-bd21a0595936",
    "version": "2.5.43",
    "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": 17834.101,
        "harvest": 5867.451000000011,
        "detectors": 11146.910999999996
      },
      "bytes_total": 126952505,
      "bytes_scanned": 126952505,
      "bytes_skipped": 0,
      "files_processed": 1504,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "f60ef3faf969de62da5f40ee2a985aca71f69931f771bb95a4aea92277e9f77d"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "fcc744dd8f636056805663ecd74cd82e3c25667cc8d0133fad6b75d4b71b183f"
        },
        {
          "name": "config.en.apk",
          "sha256": "ce00e716b96de9143e17b26cb381912b848bde9d3bdd2378bdda8052b35d47c0"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "ae39cff9e0ecb11f01fce01e8596bf560a4d46e4ccec4f5691d2d7444954c3b0"
        }
      ],
      "ruleset_sha256": "fb649a88cc2e66d8cb5b3c389ee4628bf97383e131015c594e187dc06eabcef7"
    },
    "grade": "A",
    "score": 90,
    "scanned_at": "2026-09-13T10:18:43.093Z"
  },
  "to": {
    "scan_id": "83bc128f-4491-4a00-8c02-9eee7e61ec2d",
    "version": "2.5.55",
    "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": 19374.054,
        "harvest": 6699.280999999998,
        "detectors": 11868.162000000037
      },
      "bytes_total": 129434095,
      "bytes_scanned": 129434095,
      "bytes_skipped": 0,
      "files_processed": 1509,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "eca33305e06acba0a8e9c6fdfd0789c5dcbdabd95fb2ba5f81c378a9c6e6a78a"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "a6bb41fabdb51918aee416dfe91d5c7cc47c9a3763db2a7fb620d7d29e0836f5"
        },
        {
          "name": "config.en.apk",
          "sha256": "69f2dfc1e6e30c54f3c521673b74ac7e8406b271efe96b86afbde1f931cba999"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "0dd89a7d5e2e53dd89db7bbc285b6326a1cfbba64712f1cd467e1cfd3f75c525"
        }
      ],
      "ruleset_sha256": "a4c4120389ccc4b44afa23b5786f6b8d2bf3dc47ca546355bb3ef6da4a54b513"
    },
    "grade": "A",
    "score": 98,
    "scanned_at": "2026-09-30T18:55:11.351Z"
  },
  "findings": {
    "added": [
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "fingerprint": "be36d92c8e75bc4817b091bde92a16a460ff22c6ffe55b79e8460ea3d5936dd0",
        "verified": false
      }
    ],
    "removed": [
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "fingerprint": "6c190825db2be602dbac57eb01281270e290d527d6ed0cc0d832a0e1c3da09b8",
        "verified": false
      },
      {
        "finding_type": 77,
        "severity": "low",
        "title": "Data Safety label omits Location",
        "fingerprint": "cacfd47daa7d0aafb7cbd1791f3964ef2850687203797b5e24429c41acdf7290",
        "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": 4,
    "added_by_sev": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 1
    },
    "removed_by_sev": {
      "critical": 0,
      "high": 0,
      "medium": 1,
      "low": 2
    }
  },
  "trackers": {
    "added": [
      "Google Crashlytics"
    ],
    "removed": []
  },
  "known_vulns": {
    "from": 0,
    "to": 0,
    "delta": 0,
    "from_recorded": true,
    "to_recorded": true
  }
}