{
  "status": "PASS",
  "timestamp_utc": "2026-08-05T09:23:03Z",
  "scope": "RomeoApps-owned emulator/demo proof; not client work",
  "commands": [
    "./gradlew --no-daemon clean lintDebug testDebugUnitTest connectedDebugAndroidTest assembleDebug",
    "adb install -r -t evidence/pulsefeed-reliability-lab-debug.apk",
    "adb shell am force-stop com.romeoapps.pulsefeed",
    "adb shell am start -W -n com.romeoapps.pulsefeed/.MainActivity",
    "adb logcat -d --pid=<app-pid> '*:E'"
  ],
  "unit_tests": {
    "files": 1,
    "tests": 3,
    "failures": 0,
    "errors": 0,
    "skipped": 0
  },
  "device_tests": {
    "files": 1,
    "tests": 5,
    "failures": 0,
    "errors": 0,
    "skipped": 0
  },
  "lint": "PASS",
  "package": "com.romeoapps.pulsefeed",
  "min_sdk": 26,
  "target_sdk": 36,
  "compile_sdk": 36,
  "evidence_apk_sha256": "b08046b5332c62c78c109cb6d54577c57790f8e189794ff083c3713a15c32ef2",
  "installed_apk_sha256": "b08046b5332c62c78c109cb6d54577c57790f8e189794ff083c3713a15c32ef2",
  "installed_apk_matches_evidence": true,
  "source_manifest_sha256": "d7ed67b05b8e8f78bdc89cb898086962bf1d909caa1e8965484453a53e80f299",
  "motion_proof": {
    "capture_status": "PASS",
    "encode_status": "PASS",
    "capture_frames": 35,
    "encoded_frames": 35,
    "decoded_frames": 35,
    "sync_frames": 35,
    "sampled_frames": 21,
    "duration_seconds": 7,
    "duplicate_pts_count": 0,
    "maximum_frame_gap_seconds": 0.20000000000000018,
    "source_dimensions": [
      1080,
      2400
    ],
    "encoded_dimensions": [
      864,
      1920
    ],
    "metadata_strings": []
  },
  "metric_definitions": {
    "READY": "elapsed monotonic milliseconds from setMediaItem/prepare to Media3 STATE_READY",
    "DROPPED": "Media3 AnalyticsListener.onDroppedVideoFrames count for the current selection",
    "REBUFFER": "STATE_BUFFERING transitions after the current selection first reached STATE_READY",
    "LOADED": "current Paging Compose itemCount with placeholders disabled"
  },
  "verified_device_scenarios": [
    "cold load is exactly 12 items",
    "scroll demand grows the feed monotonically to all 96 items",
    "rapid Clip 001 to 002 to 001 handoff keeps the final selection and resets metrics",
    "Clip 002 selection survives long scroll and back-scroll",
    "one injected append failure exposes retry and recovers to at least 24 items",
    "the visible proof probe performs a rapid handoff, drives a second page, and returns on Clip 001"
  ],
  "process_error_capture": {
    "scope": "current com.romeoapps.pulsefeed PID after force-stop and cold launch",
    "severity": "E and above",
    "bytes": 0
  },
  "artifacts": {
    "build-test.log": {
      "sha256": "d76fa7ebdfb98ce2d66baee5335fd4324f014260c327d67d94e6713a0485f8e4",
      "bytes": 4702
    },
    "toolchain.txt": {
      "sha256": "fe0f38c0c23bc6bae6d1e8e67333f9c12a218534ce92d97a1b5dcfb55e90b076",
      "bytes": 1051
    },
    "source-manifest.sha256": {
      "sha256": "d7ed67b05b8e8f78bdc89cb898086962bf1d909caa1e8965484453a53e80f299",
      "bytes": 2087
    },
    "install.txt": {
      "sha256": "781a31c82430c97897af612ece5e0ca2205e301cb5ff121ce2660541ea5182c7",
      "bytes": 36
    },
    "cold-launch.txt": {
      "sha256": "059ca66fd18e13bbe91a409f257464f609ecbce2d4e002db1d08fe5a21a8b2d2",
      "bytes": 180
    },
    "pulsefeed-cold.xml": {
      "sha256": "550de81cc0d9ecd3cac5b0e69741fded956b153df56a28fbe2a962c31b9f216a",
      "bytes": 18781
    },
    "pulsefeed-cold.png": {
      "sha256": "fd535f6ee7d7e11623de25056010f4d89051057942bb585e17be310f7a9a3381",
      "bytes": 241058
    },
    "pulsefeed-process-errors.log": {
      "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "bytes": 0
    },
    "pulsefeed-reliability-lab-debug.apk": {
      "sha256": "b08046b5332c62c78c109cb6d54577c57790f8e189794ff083c3713a15c32ef2",
      "bytes": 17161808
    },
    "pulsefeed-demo.mp4": {
      "sha256": "732557080424e70b85b8b05e91ff85ca6ddd1e459d64b62c6fcd9db7568e9c24",
      "bytes": 2855697
    },
    "capture-receipt.json": {
      "sha256": "99da5dcb4be4a828532d5f25b9965f78a20e3496b873ca11298007a333d32db6",
      "bytes": 295
    },
    "encode-receipt.json": {
      "sha256": "d3e566b032658b2a60478c1729d5a861477054745e406cf4fe2db31c458622ba",
      "bytes": 218
    },
    "video-inspection.json": {
      "sha256": "434232714b4757c1cc9ff01433e81515ff5eed292efbb54343f6b9fbbe97b99e",
      "bytes": 3594
    }
  }
}
