[Possible Schema Inaccuracy] multiple PR fields have odd description
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- openapi
- Domain
- api, documentation
Research direction
Start by locating the "pull-request" response/schema and inspect the definitions of mergeable, draft, rebaseable, and mergeable_state. Compare their optional and nullable behavior with the GraphQL API's MergeStateStatus enum; done means the schema either documents these behaviors clearly or represents the fields and enum values accurately.
Written by the indexing model from the issue text.
Description
I'm not entirely sure that these are schema inaccuracies but multiple fields of PRs (specifically the "pull-request" response / schema) have an odd definition:
mergeableis a nullable boolean field,it is not otherwise documented, it's hard to fathom why a PR would be something other than "mergeable" and "not mergeable". Either the field should be marked required, or the behaviour should be explained (I guess "we don't know if it's mergeable yet" is possible but in that case why not just set it to non-mergeable?).draftis somewhat similarly an optional boolean, it's not clear when it would be absent (possibly projects which don't support / allow draft PRs? still why have that in the response rather than justfalse?)rebaseableis both nullable and optional, same remarks as above.mergeable_stateis completely undocumented aside from knowing it's a string. Looking at the GraphQL API, it the example value ("clean") matches theMergeStateStatusenum. If this is the right conversion,mergeable_stateshould be defined as an enum with those values provided (and documented as they are in the graphql schema, maybe).
- Dominant language
- No language data
- Stars
- 1.6k
- Forks
- 342
- Avg merge
- 2h 23m
- Merged PRs (30d)
- 57
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.
More from github/rest-api-description
-
feature
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
github/rest-api-description#7220 ·
-
feature
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
github/rest-api-description#7201 ·
-
feature
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
github/rest-api-description#7163 ·
-
feature
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
github/rest-api-description#7162 ·
-
feature
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
github/rest-api-description#7135 ·
All issues in github/rest-api-description
Similar issues
-
clawsweeper:linked-pr-open clawsweeper:no-new-fix-pr clawsweeper:source-repro impact:message-loss issue-rating: 🦞 diamond lobster maturity:stable P2
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
growthbook/growthbook#7100 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
punkpeye/mcp-remote#369 ·
-
Client customer-reported needs-team-attention question Service Attention WebPubSub
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Azure/azure-sdk-for-net#63292 · 3 comments · 1 reaction ·
-
bug p:3-mid pydanty:bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
pydantic/pydantic-ai#8643 · 1 comment ·