{
  "schema": "perfowl.build60-frametime-continuation-and-gpu-counter-ui-e2-anonymous/1",
  "date": "2026-09-16",
  "evidence": "E2 build and static contract",
  "status": "partial",
  "privacy": "anonymous-no-device-app-process-identifiers",
  "change": {
    "continuationUnblocked": "LaunchTraceStreamDecoder no longer skips frame-continuation role; continuous RAW-v2 stream parser extracts Presented Frames seamlessly across startup-lifecycle and frame-continuation boundary",
    "startupFrozen": "Startup report, totalDurationMs, and phaseResults remain completely immutable after liveComplete; continuation events never mutate or re-emit the launch report",
    "frameTimeFreshness": "RealtimeMetricProjector tracks latest Presented Frame timestamps; product samples without fresh frame events return None with quality missing-no-new-frame, eliminating infinite value repetition",
    "gpuCounterPanel": "Dedicated GPUCounterPanel with fixed header (N counters · 整机), popover single counter selector with search, and single curve chart, completely eliminating header character-wrap and multi-order Y-axis compression",
    "storageUnreduced": "PerformanceSample.gpuCounters, Session metrics.csv/JSON, and Export retain all device-returned keys; UI single-selection never reduces underlying data collection"
  },
  "verification": {
    "swiftTests": {
      "executed": 154,
      "failed": 0,
      "skipped": 3,
      "workbenchTests": 9
    },
    "pythonTests": {
      "executed": 417,
      "failed": 0,
      "continuationTests": 6
    },
    "collectorCoreProbe": {
      "ready": true,
      "metricContractCount": 63,
      "sourceFamilyCount": 9,
      "pymobiledevice3": "11.3.1"
    },
    "app": {
      "path": "MacApp/dist/Perfowl.app",
      "build": "60",
      "architecture": "x86_64",
      "executableSHA256": "16cd10b9a0b81bfa400c461f030a5e087e26188d165790179f95c93e2f1a02ea",
      "signature": "Developer ID Application",
      "strictVerify": true
    },
    "zip": {
      "path": "MacApp/dist/Perfowl-internal-test-Build60-x86_64.zip",
      "bytes": 109353018,
      "sha256": "ebf9fcef82b1c7c42aca1f41e9fa0c3d319903420279f6461e73d8193c6b0e70"
    },
    "dmg": {
      "path": "MacApp/dist/Perfowl-internal-test-Build60-x86_64.dmg",
      "bytes": 140816085,
      "sha256": "f3f25a62f36c71f15da19c378d6c656dc4be406128000d4c1b5b147b36a372fe",
      "signature": "Developer ID Application",
      "strictVerify": true,
      "hdiutilVerify": true
    }
  },
  "openGates": [
    "notary-profile-and-stapling",
    "gatekeeper-external-release",
    "arm64-or-universal2-package",
    "iphone-15-e4-multi-round-validation",
    "gpl-review"
  ]
}
