openai / openai/openai-openapi
ConversationResource.metadata has no machine-readable map type
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 2.5k
- Forks
- 527
- Avg merge
- 1h 46m
- Merged PRs (30d)
- 2
Description
Source report
Mirrors openai/openai-go#543.
Specification mismatch
The published ConversationResource schema lists metadata as required but gives the property only a description. Its prose specifies string keys and string values, while its machine-readable schema allows any JSON value.
The shared Metadata schema describes an object with string values (and a separate null alternative). Conversation response metadata does not use that shape or equivalent constraints.
SDK consequence
The generated Go Conversation type exposes Metadata any, forcing callers to recover a string map manually. The source issue includes the conversion workaround.
Expected
Give ConversationResource.metadata a machine-readable object/string-value schema consistent with the actual conversation response contract. Confirm response nullability separately rather than carrying it over from a shared request/response type without checking.
Preserve the source report and validate that regenerated SDK response types expose the supported map shape.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in openapi.yaml at the ConversationResource.metadata schema around line 71907, then compare it with the shared Metadata schema around line 44485. Regenerate the SDK response types and verify that the Conversation type exposes the supported string-value map shape while preserving the source report and separately confirming response nullability.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, openapi
- Domain
- api
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100