{
  "version": 3,
  "gates": {
    "pr-fast": {
      "server": ["check", "test"],
      "apple": ["xcodebuild -scheme OppiUnitTests test -only-testing:OppiTests"]
    },
    "ci-coverage": {
      "server": ["check", "test:coverage"],
      "apple": ["./scripts/check-coverage.sh"]
    },
    "nightly-deep": {
      "server": ["check", "test:coverage", "test:e2e:linux"],
      "apple": [
        "xcodebuild -scheme Oppi build",
        "xcodebuild -scheme OppiUnitTests test -only-testing:OppiTests"
      ]
    },
    "release-preflight": {
      "server": ["check", "test:coverage", "telemetry:review:gate"],
      "apple": [
        "xcodebuild -scheme Oppi build",
        "xcodebuild -scheme OppiUnitTests test -only-testing:OppiTests"
      ]
    }
  },
  "ci": {
    "serverWorkflow": ".github/workflows/server.yml",
    "appleWorkflow": ".github/workflows/apple.yml",
    "coverageGate": "ci-coverage",
    "note": "Pre-push is change-aware and non-coverage; GitHub Actions owns full threshold-enforced coverage."
  },
  "tooling": {
    "requiredTrackedFiles": [
      ".githooks/pre-push",
      "scripts/pre-push-plan.ts",
      "scripts/pre-push-plan.test.ts",
      ".github/workflows/server.yml",
      ".github/workflows/apple.yml",
      ".github/workflows/hygiene.yml"
    ]
  },
  "docs": {
    "canonical": "docs/testing/README.md"
  }
}
