Node 25: TypeError assigning subSchemaAndTypeComposers.input in getUnionTypeComposers ("only a getter")
### Environment
- Node.js: **25.x** (fails); **22.x** and **24.x** OK in downstream CI
- `@omnigraph/json-schema`: **0.109.40** (via `@omnigraph/openapi` **0.109.41**)
### Symptom
While building a GraphQL schema from the **full** Slack Web API OpenAPI 3 document (`openapi.json` from Slack’s public spec, ~170+ operations), schema construction throws:
```
TypeError: Cannot set property input of #<Object> which has only a getter
at getUnionTypeComposers (.../@omnigraph/json-schema/esm/getUnionTypeComposers.js:52:41)
```
### Suspected line
TypeScript source: [`packages/loaders/json-schema/src/getUnionTypeComposers.ts`](https://github.com/ardatan/graphql-mesh/blob/master/packages/loaders/json-schema/src/getUnionTypeComposers.ts) — assignment to `subSchemaAndTypeComposers.input` when `Object.keys(unionInputFields).length === 1`.
### Repro
1. Depend on `@omnigraph/openapi` and call `loadGraphQLSchemaFromOpenAPI` with the **full** Slack Web API OpenAPI JSON.
2. Run on Node **25**.
A **minimal** OpenAPI with only `chat.postMessage` does **not** reproduce in our tests — the failure appears tied to the large / union-heavy schema.
### Downstream
- [ClawQL](https://github.com/danielsmithdevelopment/ClawQL) — in-process OpenAPI→GraphQL for `execute` / `notify`; we document behavior and use a minimal Slack fixture in Vitest for the GraphQL path. Doc: [graphql-mesh-node-compatibility.md](https://github.com/danielsmithdevelopment/ClawQL/blob/main/docs/graphql-mesh-node-compatibility.md).
3 条评论