[Schema Inaccuracy] 2026-03-10 pull_request webhook payloads are missing merge_commit_sha

Offen Anfängerfreundlich
#6,344 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
68/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Ruhig
Tech-Stack
github, openapi

Rechercherichtung

Vergleiche ghec.2026-03-10.json und api.github.com.2026-03-10.json mit dem Schema 2022-11-28 und verfolge webhook-pull-request-closed.pull_request durch pull-request-webhook. Beginne mit den Definitionen von pull-request und pull-request-webhook und überprüfe anschließend, dass merge_commit_sha unter webhook-pull-request-closed.pull_request.merge_commit_sha in beiden Dateien von 2026-03-10 vorhanden ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

documentation

Schema Inaccuracy

The 2026-03-10 spec files (ghec.2026-03-10.json and api.github.com.2026-03-10.json) remove merge_commit_sha from pull_request webhook payload schemas, but GitHub still delivers the field in live payloads — the webhook docs continue to list it as Required on pull_request payloads, and pull_request:closed consumers rely on it to determine which commit on the target branch a merged PR landed at.

Cause: webhook-pull-request-closed.pull_request is a $ref to pull-request-webhook, which is defined as:

"pull-request-webhook": {
  "allOf": [
    { "$ref": "#/components/schemas/pull-request" },
    { "type": "object", "properties": { ... } }
  ]
}

So removing merge_commit_sha from pull-request (a deliberate REST breaking change in 2026-03-10) transitively removes it from every webhook schema that references pull-request-webhook, even though the webhook contract has not changed.

Expected

merge_commit_sha should be present on pull_request webhook payloads in the 2026-03-10 spec files, matching the runtime webhook contract and the 2022-11-28 spec. The flagship case to verify any fix against is webhook-pull-request-closed.pull_request.merge_commit_sha.

Reproduction Steps

$ curl -s https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/ghec/ghec.2022-11-28.json \
    | jq '.components.schemas."pull-request".properties.merge_commit_sha'
{
  "type": "string",
  "example": "e5bd3914e2e596debea16f433f57875b5b90bcd6",
  "nullable": true
}

$ curl -s https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/ghec/ghec.2026-03-10.json \
    | jq '.components.schemas."pull-request".properties.merge_commit_sha'
null
Vorherrschende Sprache
Keine Sprachdaten
Sterne
1.6k
Forks
342
Ø Merge
3 Std. 33 Min.
Gemergte PRs (30 T.)
51

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus github/rest-api-description

Alle Issues in github/rest-api-description

Ähnliche Issues

Weitere Issues zu Backend & API Design

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.