{
  "$id": "https://firefox-ci-tc.services.mozilla.com/schemas/github/v1/github-webhook-event.json#",
  "$schema": "https://firefox-ci-tc.services.mozilla.com/schemas/common/metaschema.json#",
  "description": "Validates GitHub webhook event payloads to prevent errors from missing or\nmalformed fields. Uses OneOf pattern to strictly validate each event type\nwith its own schema, preventing TypeErrors identified in PR #7958.\n\nValidation Philosophy:\n- STRICT on structure: Required fields, types, and patterns are validated\n- LENIENT on enum values: Action/status/conclusion accept any string where\n  GitHub may add new values in the future\n- This prevents rejecting valid webhooks when GitHub adds new action types\n",
  "oneOf": [
    {
      "$ref": "webhook-pull-request-payload.json#"
    },
    {
      "$ref": "webhook-push-payload.json#"
    },
    {
      "$ref": "webhook-issue-comment-payload.json#"
    },
    {
      "$ref": "webhook-release-payload.json#"
    },
    {
      "$ref": "webhook-installation-payload.json#"
    },
    {
      "$ref": "webhook-check-run-payload.json#"
    },
    {
      "$ref": "webhook-ping-payload.json#"
    }
  ],
  "title": "GitHub Webhook Event"
}