[Schema Inaccuracy] dismissal request and bypass request webhooks have no required fields
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 38/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- openapi, typescript
- Domain
- api, documentation
Research direction
Start in descriptions/ghec/ghec.json and inspect the listed exemption, dismissal-request, and bypass-request schema components. Determine which properties are non-optional in the webhook payloads, add those properties to each component's required section, and verify that the resulting schemas produce accurate TypeScript webhook types.
Written by the indexing model from the issue text.
Description
Schema Inaccuracy
The following schema components do not define any required fields, even though some fields are always present (e.g. primary keys):
exemption-requestexemption-responsedismissal-request-code-scanning-metadatadismissal-request-secret-scanning-metadataexemption-request-secret-scanning-metadatadismissal-request-code-scanningdismissal-request-secret-scanningexemption-request-secret-scanningexemption-request-push-ruleset-bypass
These components are used by the various bypass-request and dismissal-request webhooks, such as:
dismissal-request-secret-scanning-cancelleddismissal-request-secret-scanning-completeddismissal-request-secret-scanning-createddismissal-request-secret-scanning-response-dismisseddismissal-request-secret-scanning-response-submitteddismissal-request-code-scanning-createddismissal-request-code-scanning-response-submittedbypass-request-secret-scanning-cancelledbypass-request-secret-scanning-completedbypass-request-secret-scanning-createdbypass-request-secret-scanning-response-dismissedbypass-request-secret-scanning-response-submittedbypass-request-push-ruleset-cancelledbypass-request-push-ruleset-completedbypass-request-push-ruleset-createdbypass-request-push-ruleset-response-dismissedbypass-request-push-ruleset-response-submitted
Expected
The schemas of the dismissal request and bypass request webhooks should have all non-optional fields listed in required sections of their schema components.
For example, most of the fields of exemption-request are likely non-optional in GitHub's implementation: id (primary key), number (alternate key), repository_id (a request needs a repository), requester_login (a user needs to create the request), request_type, status, created_at, html_url. I don't know the exact values since it would be specific to the GitHub database and implementation.
Reproduction Steps
None - observed by reviewing https://raw.githubusercontent.com/github/rest-api-description/refs/heads/main/descriptions/ghec/ghec.json and trying to use @octokit/openapi-webhooks-types-ghec (which depends on the schema data) in TypeScript.
- 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
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
speaches-ai/speaches#678 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
[BUG] ECR GetAuthorizationToken returns a proxyEndpoint for the default region, not the request's Openbug ecr
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
conda-forge/spacy-feedstock#177 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100