{
  "checkedAt": "2026-10-28T09:05:51.383297+00:00",
  "release": {
    "version": "aa2094c8e3415837",
    "semver": "0.17.1",
    "publishedAt": "2026-10-28T09:03:29+00:00"
  },
  "scope": "Air command icon correction only; focused regression. Engine/rules/schema35 unchanged from0.17.0.",
  "baselineFullValidation": "release-0170-validation.json",
  "javascript": {
    "tests": 33,
    "modules": 4,
    "dom": true,
    "results": [
      {
        "name": "air-missions",
        "exitCode": 0,
        "tests": 17,
        "seconds": 0.81,
        "log": "/tmp/civ3-0171-air-missions.log"
      },
      {
        "name": "module-boundaries",
        "exitCode": 0,
        "tests": 2,
        "seconds": 0.22,
        "log": "/tmp/civ3-0171-module-boundaries.log"
      },
      {
        "name": "unit-presentation",
        "exitCode": 0,
        "tests": 8,
        "seconds": 0.27,
        "log": "/tmp/civ3-0171-unit-presentation.log"
      },
      {
        "name": "movement-presentation",
        "exitCode": 0,
        "tests": 6,
        "seconds": 0.14,
        "log": "/tmp/civ3-0171-movement-presentation.log"
      },
      {
        "name": "game-screen",
        "exitCode": 0,
        "tests": null,
        "seconds": 1.93,
        "log": "/tmp/civ3-0171-game-screen.log"
      }
    ]
  },
  "pythonChecks": 17,
  "localBrowserScenarios": [
    {
      "name": "air-missions",
      "exitCode": 0,
      "seconds": 13.45,
      "log": "/tmp/civ3-0171-local-browser-air-missions.log"
    },
    {
      "name": "native-orders",
      "exitCode": 0,
      "seconds": 5.93,
      "log": "/tmp/civ3-0171-local-browser-native-orders.log"
    },
    {
      "name": "classic-controls",
      "exitCode": 0,
      "seconds": 8.92,
      "log": "/tmp/civ3-0171-local-browser-classic-controls.log"
    },
    {
      "name": "party",
      "exitCode": 0,
      "seconds": 54.58,
      "log": "/tmp/civ3-0171-local-browser-party.log"
    },
    {
      "name": "readiness",
      "exitCode": 0,
      "seconds": 6.74,
      "log": "/tmp/civ3-0171-local-browser-readiness.log"
    }
  ],
  "publicBrowserScenarios": [
    {
      "name": "air-missions",
      "exitCode": 0,
      "seconds": 14.55,
      "log": "/tmp/civ3-0171-public-browser-air-missions.log"
    },
    {
      "name": "native-orders",
      "exitCode": 0,
      "seconds": 5.41,
      "log": "/tmp/civ3-0171-public-browser-native-orders.log"
    },
    {
      "name": "classic-controls",
      "exitCode": 0,
      "seconds": 8.88,
      "log": "/tmp/civ3-0171-public-browser-classic-controls.log"
    },
    {
      "name": "party",
      "exitCode": 0,
      "seconds": 53.36,
      "log": "/tmp/civ3-0171-public-browser-party.log"
    },
    {
      "name": "readiness",
      "exitCode": 0,
      "seconds": 7.4,
      "log": "/tmp/civ3-0171-public-browser-readiness.log"
    }
  ],
  "publicBrowserStatus": "passed",
  "nativeIconEvidence": {
    "machineCodeCases": 67,
    "staticSignatures": 11,
    "bindings": [
      {
        "mission": "bombing",
        "command": "0x30000001",
        "slot": 37,
        "sourceCrop": [
          160,
          128,
          32,
          32
        ],
        "cssPosition": "-160px -128px"
      },
      {
        "mission": "recon",
        "command": "0x30000002",
        "slot": 38,
        "sourceCrop": [
          192,
          128,
          32,
          32
        ],
        "cssPosition": "-192px -128px"
      },
      {
        "mission": "intercept",
        "command": "0x30000004",
        "slot": 39,
        "sourceCrop": [
          224,
          128,
          32,
          32
        ],
        "cssPosition": "-224px -128px"
      },
      {
        "mission": "rebase",
        "command": "0x30000008",
        "slot": 40,
        "sourceCrop": [
          0,
          160,
          32,
          32
        ],
        "cssPosition": "0px -160px"
      },
      {
        "mission": "precision",
        "command": "0x30000010",
        "slot": 41,
        "sourceCrop": [
          32,
          160,
          32,
          32
        ],
        "cssPosition": "-32px -160px"
      }
    ],
    "unmodifiedOriginalEnumAndCropInstructions": true,
    "fullWindowsRuntimeVerified": false
  },
  "originalPixelsAndAlphaVerified": true,
  "threeButtonStatesVerified": true,
  "manifest": {
    "imagesAndAtlases": 1314,
    "audioClips": 892
  },
  "fullParty": {
    "humanCommands": 53,
    "finishedTurn": 18,
    "winner": "p2",
    "exactExportImportAndReload": true
  },
  "publishedBytes": {
    "checkedAt": "2026-10-28T09:06:30.326996+00:00",
    "release": {
      "version": "aa2094c8e3415837",
      "semver": "0.17.1",
      "publishedAt": "2026-10-28T09:03:29+00:00"
    },
    "compiledDataAndManifestMedia": 3596,
    "manifestIncludesAllNativeColorVariantsAndAudio": true,
    "mismatches": [],
    "independentServiceFiles": 8,
    "changedServiceFiles": []
  },
  "fixedDuringVerification": [
    "Browser state probe pressed Escape between buttons, correctly deselecting the unit; removed the unintended Escape without changing game controls."
  ],
  "futureMigrationFixture": "tests/fixtures/released-schema35-air-provenance.json",
  "limitations": [
    "Full5.2 and MVP remain incomplete",
    "Combat air missions/interception/AA execution, airfields and drops remain open",
    "Full Windows UI/resource-search and mission/PRNG sequences were not executed"
  ]
}
