{
  "$schema": "https://iarpg.com/release-promotion-gates.schema.json",
  "release": "IARPG-OPS-2",
  "candidate_version": "2.0.4-wip",
  "stable_target": "2.1.0",
  "evaluated_utc": "2026-07-20T12:04:07Z",
  "evaluating_tool": "IARPG build validator 2.0.4-wip",
  "overall_status": "not-ready",
  "summary": {
    "pass": 18,
    "fail": 1,
    "not_tested": 2,
    "stable_ready": false
  },
  "gates": [
    {
      "gate_id": "PROM-01",
      "title": "Static syntax and parse checks",
      "description": "PHP, JavaScript, CSS, JSON, and UAI checks.",
      "status": "pass",
      "evidence": [
        "/VALIDATION.txt",
        "/VALIDATION.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Static checks completed."
    },
    {
      "gate_id": "PROM-02",
      "title": "Schema and fixture checks",
      "description": "Project schemas and declared fixtures.",
      "status": "pass",
      "evidence": [
        "/VALIDATION.txt",
        "/fixture-tests.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Schema and fixture checks completed."
    },
    {
      "gate_id": "PROM-03",
      "title": "Deterministic replay",
      "description": "Same seed and choices produce the same normalized event record.",
      "status": "pass",
      "evidence": [
        "/simulate",
        "/comparison-example.json",
        "/fixture-tests.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Deterministic fixture evidence remains passing."
    },
    {
      "gate_id": "PROM-04",
      "title": "Canonicalization vector parity",
      "description": "Browser and build validators agree on IARPG-CJSON-1.",
      "status": "pass",
      "evidence": [
        "/canonical-json",
        "/canonicalization-vectors.json",
        "/browser-runtime-matrix.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "All 20 vectors pass in Chromium and the build validator."
    },
    {
      "gate_id": "PROM-05",
      "title": "Round-trip preservation",
      "description": "IDs, UTC, order, and unknown fields survive declared round trips.",
      "status": "pass",
      "evidence": [
        "/roundtrip",
        "/roundtrip-fixtures.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Published round-trip fixtures and browser test pass."
    },
    {
      "gate_id": "PROM-06",
      "title": "Migration no-loss checks",
      "description": "Migration reports all field actions and preserves unsupported data.",
      "status": "pass",
      "evidence": [
        "/migrate",
        "/migration-report.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "No silent migration loss detected."
    },
    {
      "gate_id": "PROM-07",
      "title": "Merge no-silent-overwrite checks",
      "description": "Package conflicts require explicit resolution.",
      "status": "pass",
      "evidence": [
        "/merge",
        "/merge-fixtures/hollow-signal-conflict.merge.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "No silent merge overwrite detected."
    },
    {
      "gate_id": "PROM-08",
      "title": "Source, report, and UAI preservation",
      "description": "Sources, reports, anchors, mappings, checksums, and UAI mirrors.",
      "status": "pass",
      "evidence": [
        "/docs/manifest.json",
        "/docs/source-files/manifest.json",
        "/.well-known/uai.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "219 sources, 147 reports, and 84 UAI mirrors are preserved."
    },
    {
      "gate_id": "PROM-09",
      "title": "Internal, deep, and discovery links",
      "description": "All public local and report targets resolve.",
      "status": "pass",
      "evidence": [
        "/sitemap.xml",
        "/VALIDATION.txt"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Link and rendering checks completed."
    },
    {
      "gate_id": "PROM-10",
      "title": "Chromium critical runtime",
      "description": "Critical tool, theme, keyboard, recovery, and publication paths.",
      "status": "pass",
      "evidence": [
        "/browser-runtime-matrix.json",
        "/UI-VALIDATION-2.0.4-wip.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Chromium suite passes 22 critical tests and 112 responsive cases."
    },
    {
      "gate_id": "PROM-11",
      "title": "Native Firefox critical runtime",
      "description": "The critical suite in native Firefox.",
      "status": "not-tested",
      "evidence": [
        "/browser-runtime-matrix.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "Native Firefox evidence is required for stable promotion.",
      "required_next_action": "Run the critical matrix in native Firefox.",
      "reason": "No native Firefox binary was available."
    },
    {
      "gate_id": "PROM-12",
      "title": "Accessibility evidence",
      "description": "Keyboard, structure, fallback, zoom, motion, contrast, mobile, print, and touch evidence.",
      "status": "pass",
      "evidence": [
        "/accessibility-evidence.json",
        "/accessibility"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "No release-blocking accessibility failure is recorded; no certification is claimed."
    },
    {
      "gate_id": "PROM-13",
      "title": "Required viewport overflow tests",
      "description": "Required widths, menu breakpoint, and sticky policy.",
      "status": "pass",
      "evidence": [
        "/UI-VALIDATION-2.0.4-wip.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "112 of 112 required cases pass."
    },
    {
      "gate_id": "PROM-14",
      "title": "Light and dark theme tests",
      "description": "Light default, dark persistence/synchronization, blocked-storage fallback, and no prepaint mismatch.",
      "status": "pass",
      "evidence": [
        "/browser-runtime-matrix.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Theme critical tests pass in Chromium."
    },
    {
      "gate_id": "PROM-15",
      "title": "Original advertisement integrity",
      "description": "Exact bytes, 2048×682 dimensions, proportional rendering, and footer placement.",
      "status": "pass",
      "evidence": [
        "/partner-artwork-integrity.json",
        "/VALIDATION.txt"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Artwork and placement checks pass."
    },
    {
      "gate_id": "PROM-16",
      "title": "No third-party runtime requests",
      "description": "All required runtime assets remain local.",
      "status": "pass",
      "evidence": [
        "/performance-report.json",
        "/browser-runtime-matrix.json"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "No third-party runtime request was observed."
    },
    {
      "gate_id": "PROM-17",
      "title": "No nested archives",
      "description": "No ZIP, TAR, GZIP, RAR, 7z, BZIP2, or XZ inside deployment.",
      "status": "pass",
      "evidence": [
        "/VALIDATION.txt"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Nested archive scan reports zero."
    },
    {
      "gate_id": "PROM-18",
      "title": "Target-hosting smoke test",
      "description": "Safe test on actual iarpg.com hosting.",
      "status": "not-tested",
      "evidence": [
        "/hosting-check",
        "/docs/standards/HOSTING-SMOKE-TEST.md"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "Actual target-host evidence is required.",
      "required_next_action": "Run the kit on the host and remove or disable it.",
      "reason": "Local diagnostic exists, but actual target-host evidence is not attached."
    },
    {
      "gate_id": "PROM-19",
      "title": "Flat ZIP integrity",
      "description": "Final archive is flat, includes hidden paths, and passes integrity testing.",
      "status": "pass",
      "evidence": [
        "/VALIDATION.txt"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "Final archive verification passed."
    },
    {
      "gate_id": "PROM-20",
      "title": "External SHA-256 match",
      "description": "External checksum sidecar matches the final ZIP.",
      "status": "pass",
      "evidence": [
        "/VALIDATION.txt"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "",
      "required_next_action": "",
      "reason": "External SHA-256 matches."
    },
    {
      "gate_id": "PROM-21",
      "title": "No unresolved release-blocking defects",
      "description": "Every stable-release gate passes.",
      "status": "fail",
      "evidence": [
        "/RELEASE-NOTES-IARPG-OPS-2-2.0.4-wip.md"
      ],
      "last_evaluated_utc": "2026-07-20T12:04:07Z",
      "evaluating_tool": "IARPG build validator 2.0.4-wip",
      "blocking_reason": "Required environment-specific evidence remains missing.",
      "required_next_action": "Complete native Firefox and target-host testing, then rerun all gates.",
      "reason": "Native Firefox and actual target-host evidence remain open."
    }
  ]
}
