[Schema Inaccuracy] Branch rule parameters `require_extra_approval_for_unattributed_changes`, `ignore_approvals_from_contributors` and `actor_controlled_merging` are missing
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 82/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- openapi
- Lĩnh vực
- api, backend-api-design
Hướng nghiên cứu
Bắt đầu với các schema repository-rule-pull-request và repository-rule-merge-queue trong api.github.com.2022-11-28.json, sau đó so sánh các schema tương ứng trong mô tả ngày 2026-03-10. Xác minh các tham số dựa trên phản hồi gh api được hiển thị và các danh sách thuộc tính jq; hoàn tất nghĩa là cả ba trường boolean đều được thể hiện trong cả hai mô tả.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Schema Inaccuracy
Branch rules and rulesets return rule parameters that the description doesn't list. The pull_request rule carries require_extra_approval_for_unattributed_changes and ignore_approvals_from_contributors, and the merge_queue rule carries actor_controlled_merging. None of the three is in repository-rule-pull-request or repository-rule-merge-queue in the 2022-11-28 or 2026-03-10 description on main (c6721f32). ignore_approvals_from_contributors only appears in the webhooks_rule schema for branch protection webhooks.
These schemas back GET /repos/{owner}/{repo}/rules/branches/{branch} and the repo and org ruleset endpoints, so clients generated from the description drop the three fields, and decoders that reject unknown fields fail on real responses.
Expected
repository-rule-pull-request.parameters lists require_extra_approval_for_unattributed_changes and ignore_approvals_from_contributors, and repository-rule-merge-queue.parameters lists actor_controlled_merging. All three come back as booleans.
Reproduction Steps
$ gh api -H "X-GitHub-Api-Version: 2022-11-28" repos/github/docs/rules/branches/main --jq '.[] | select(.type=="pull_request" or .type=="merge_queue") | {type, parameters}'
{"parameters":{"allowed_merge_methods":["merge","squash","rebase"],"dismiss_stale_reviews_on_push":true,"dismissal_restriction":{"allowed_actors":[],"enabled":false},"ignore_approvals_from_contributors":false,"require_code_owner_review":true,"require_extra_approval_for_unattributed_changes":true,"require_last_push_approval":false,"required_approving_review_count":1,"required_review_thread_resolution":false,"required_reviewers":[]},"type":"pull_request"}
{"parameters":{"actor_controlled_merging":false,"check_response_timeout_minutes":60,"grouping_strategy":"ALLGREEN","max_entries_to_build":2,"max_entries_to_merge":1,"merge_method":"SQUASH","min_entries_to_merge":1,"min_entries_to_merge_wait_minutes":5},"type":"merge_queue"}
$ jq -c '.components.schemas["repository-rule-pull-request"].properties.parameters.properties | keys' api.github.com.2022-11-28.json
["allowed_merge_methods","dismiss_stale_reviews_on_push","dismissal_restriction","require_code_owner_review","require_last_push_approval","required_approving_review_count","required_review_thread_resolution","required_reviewers"]
$ jq -c '.components.schemas["repository-rule-merge-queue"].properties.parameters.properties | keys' api.github.com.2022-11-28.json
["check_response_timeout_minutes","grouping_strategy","max_entries_to_build","max_entries_to_merge","merge_method","min_entries_to_merge","min_entries_to_merge_wait_minutes"]
GET /repos/{owner}/{repo}/rulesets/{ruleset_id} returns the same pull_request parameters.
- Ngôn ngữ chính
- Không có dữ liệu ngôn ngữ
- Star
- 1.6k
- Fork
- 342
- Merge trung bình
- 7 giờ 29 phút
- Pull request đã merge (30 ngày)
- 62
Chuẩn bị môi trường
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của github/rest-api-description
-
feature
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
github/rest-api-description#7220 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
feature
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
github/rest-api-description#7201 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
feature
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
github/rest-api-description#7163 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Runner deprecations: registration_deprecates_at is declared on the response but never returnedĐang mởfeature
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
github/rest-api-description#7162 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
feature
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
github/rest-api-description#7135 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của github/rest-api-description
Issue tương tự
-
bug severity:medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Remove books with Wikinews tagĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
semantic-release/gitlab#1032 ·
-
(config)Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
suitenumerique/conversations#757 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày