{
  "schemaVersion": 1,
  "description": "Checked-in MoUI smoke gate catalog. This is source metadata, not generated smoke evidence.",
  "tiers": [
    "daily",
    "nightly",
    "release"
  ],
  "suites": [
    {
      "id": "daily.check",
      "tier": "daily",
      "kind": "package-baseline",
      "host": "any",
      "purpose": "Keep the default development gate bounded to package checks, static guards, and Web wasm-gc builds.",
      "defaultDevCheck": true,
      "commands": [
        {
          "argv": [
            "sh",
            "scripts/check.sh",
            "--profile",
            "daily"
          ],
          "mode": "run"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/ci.yml",
        "gate": "pull_request"
      },
      "docs": [
        "docs/testing.md",
        "docs/release-readiness.md"
      ],
      "artifacts": []
    },
    {
      "id": "web.runtime-presentation",
      "tier": "nightly",
      "kind": "browser-runtime-smoke",
      "host": "macos-14",
      "purpose": "Record and validate a real browser WebGPU/wasm/canvas/input/pixel presentation session.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "sh",
            "scripts/ci-web-runtime-presentation.sh"
          ],
          "mode": "run"
        }
      ],
      "result": {
        "type": "manifest",
        "path": "artifacts/smoke/web-runtime-presentation/presentation-smoke.json",
        "validator": [
          "node",
          "scripts/validate-web-runtime-presentation-manifest.mjs",
          "artifacts/smoke/web-runtime-presentation/presentation-smoke.json",
          "--require-passed"
        ]
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "nightly"
      },
      "docs": [
        "docs/testing.md",
        "docs/release-readiness.md"
      ],
      "artifacts": [
        "artifacts/smoke/web-runtime-presentation/presentation-smoke.json",
        "artifacts/smoke/web-runtime-presentation/http-server.log",
        "artifacts/smoke/web-runtime-presentation/chrome.log"
      ]
    },
    {
      "id": "macos.skia-real-showcase-markdown",
      "tier": "release",
      "kind": "native-real-renderer-smoke",
      "host": "macos-14",
      "purpose": "Prove real Skia renderer pixels plus tester-owned Showcase and Markdown Editor first-frame presentation on the matching host.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "sh",
            "scripts/macos-skia-renderer-smoke.sh",
            "--run-showcase-smoke",
            "--run-markdown-smoke",
            "--smoke-log",
            "artifacts/platform-observation/macos/skia-renderer-smoke.log",
            "--showcase-log",
            "artifacts/platform-observation/macos/showcase-macos-skia-first-frame.log",
            "--markdown-log",
            "artifacts/example-smoke/macos/markdown-macos-skia-first-frame.log"
          ],
          "mode": "run"
        }
      ],
      "result": {
        "type": "log-marker",
        "markers": [
          "MoUI Skia renderer smoke passed",
          "MoUI Skia async image second-frame smoke passed",
          "Verified moui_tests first-frame smoke marker.",
          "MoUI macOS Skia renderer smoke passed."
        ]
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "release-manual"
      },
      "docs": [
        "docs/testing.md",
        "docs/release-readiness.md"
      ],
      "artifacts": [
        "artifacts/platform-observation/macos/skia-renderer-smoke.log",
        "artifacts/platform-observation/macos/showcase-macos-skia-first-frame.log",
        "artifacts/example-smoke/macos/markdown-macos-skia-first-frame.log"
      ]
    },
    {
      "id": "window-package.matching-host",
      "tier": "release",
      "kind": "dependency-matching-host-smoke",
      "host": "matching-host",
      "purpose": "Run the resolved window package MoUI helper on the host being claimed without reintroducing an editable window checkout.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "scripts/run-window-package-smoke.sh",
            "<macos|web|windows|linux>",
            "--run"
          ],
          "mode": "manual"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "release-manual"
      },
      "docs": [
        "docs/testing.md",
        "docs/release-readiness.md"
      ],
      "artifacts": [
        "artifacts/window-package-smoke/<platform>.log"
      ]
    },
    {
      "id": "accessibility.screen-reader-evidence",
      "tier": "release",
      "kind": "screen-reader-evidence-validation",
      "host": "matching-host",
      "purpose": "Validate an existing matching-host accessibility manifest, including real screen-reader navigation and spoken-output observations, without producing evidence or promoting readiness.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "node",
            "scripts/validate-accessibility-foundation.mjs",
            "--evidence",
            "artifacts/accessibility/<platform>/manifest.json",
            "--require-screen-reader"
          ],
          "mode": "manual"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "release-manual"
      },
      "docs": [
        "docs/plans/active/native-accessibility.md",
        "docs/testing.md"
      ],
      "artifacts": [
        "artifacts/accessibility/<platform>/manifest.json"
      ]
    },
    {
      "id": "accessibility.macos-ax-probe",
      "tier": "nightly",
      "kind": "native-accessibility-client-evidence",
      "host": "matching-host",
      "purpose": "Run the Showcase Accessibility Probe through the real macOS AX API, record generation-checked action receipts and live announcements, and validate the resulting L2 manifest.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "scripts/macos-accessibility-probe.sh",
            "--manifest",
            "artifacts/accessibility/macos/manifest.json",
            "--require-passed"
          ],
          "mode": "manual"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "nightly-macos"
      },
      "docs": [
        "docs/plans/active/native-accessibility.md",
        "docs/testing.md"
      ],
      "artifacts": [
        "artifacts/accessibility/macos/manifest.json",
        "artifacts/accessibility/macos/showcase.log",
        "artifacts/accessibility/macos/ax-probe.log"
      ]
    },
    {
      "id": "accessibility.web-chrome-ax-probe",
      "tier": "nightly",
      "kind": "native-accessibility-client-evidence",
      "host": "matching-host",
      "purpose": "Run the Showcase Accessibility Probe through Chrome's real Accessibility Tree, execute DOM/keyboard actions, and record exact-generation runtime receipts.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "scripts/web-accessibility-probe.sh"
          ],
          "mode": "manual"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "nightly-web"
      },
      "docs": [
        "docs/plans/active/native-accessibility.md",
        "docs/testing.md"
      ],
      "artifacts": [
        "artifacts/accessibility/web/manifest.json",
        "artifacts/accessibility/web/http-server.log",
        "artifacts/accessibility/web/chrome.log"
      ]
    },
    {
      "id": "mobile.window-hosted-hostsim",
      "tier": "nightly",
      "kind": "window-hosted-hostsim",
      "host": "any",
      "purpose": "Validate the Android, iOS, and HarmonyOS HostCmd/EventLoop adapters without requiring an emulator.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "sh",
            "scripts/window-hosted-hostsim-smoke.sh"
          ],
          "mode": "run"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "nightly"
      },
      "docs": [
        "docs/window-hosted-moui.md",
        "docs/testing.md",
        "docs/release-readiness.md"
      ],
      "artifacts": []
    },
    {
      "id": "mobile.window-hosted-vm",
      "tier": "release",
      "kind": "window-hosted-vm-smoke",
      "host": "matching-mobile-host",
      "purpose": "Run host-sim and one explicitly enabled Android, iOS, or HarmonyOS VM/device leg for the window-hosted route.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "sh",
            "scripts/window-hosted-vm-smoke.sh"
          ],
          "mode": "manual"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "release-manual"
      },
      "docs": [
        "docs/window-hosted-moui.md",
        "docs/testing.md",
        "docs/release-readiness.md"
      ],
      "artifacts": []
    },
    {
      "id": "macos.host-modal",
      "tier": "release",
      "kind": "matching-host-smoke",
      "host": "matching-host",
      "purpose": "Evidence the macOS NSWindow-level modal presenter driving HostModalSession end-to-end (native sheet ordering, surface attach, close) on the host being claimed.",
      "defaultDevCheck": false,
      "commands": [
        {
          "argv": [
            "scripts/macos-skia-renderer-smoke.sh",
            "--run-modal-smoke"
          ],
          "mode": "manual"
        }
      ],
      "result": {
        "type": "exit-code"
      },
      "ci": {
        "workflow": ".github/workflows/moui-runtime-gates.yml",
        "gate": "release-manual"
      },
      "docs": [
        "docs/testing.md",
        "docs/plans/active/architecture-review-followups.md"
      ],
      "artifacts": [
        "artifacts/macos-modal-smoke/modal.log"
      ]
    }
  ]
}