x-xgen-sha
`x-xgen-sha` appears in the info block. Its value is a string. Used by a single provider across 2 OpenAPI documents. It sits in the `x-xgen-` namespace, so its meaning is defined by xgen tooling rather than by OpenAPI. Observed values include `3d70e065843c008b9871ea7836c98c9de6f202f9`, `8f9485d239f53f5b963c55e11f5f05a34bec9586`. Consistent with data & schema semantics — this is inferred from where the key appears and what it carries, not from any published definition.
Where it appears
| Location in the document | Occurrences | |
|---|---|---|
| info | 2 |
What its value looks like
| Value shape | Occurrences |
|---|---|
| string | 2 |
Observed values
Sampled from the specifications, most frequent first.
Providers publishing it
All 1.
Why this is not in OpenAPI
Extensions exist because a provider needed something the specification would not carry. Most of what they hold is not the API contract at all — it is operational metadata about the contract: documentation, lifecycle, policy, provenance, and now agents. That metadata is usually better placed alongside the contract, in an Overlay or an APIs.json index, than crammed inside it. See everything else doing the data & schema semantics job.