Classify secondary and abuse rate limits separately from generic GitHub failures
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 76/100
Hướng nghiên cứu
Bắt đầu với classifier trong pkg/errors/error.go, sau đó lần theo cách xử lý phản hồi GitHub qua pkg/utils/api.go và xem lại docs/error-handling.md. Thêm unit coverage cho thấy các phản hồi giới hạn primary, secondary và abuse được phân loại riêng biệt, đồng thời giữ lại metadata retry khi có; các test phải chạy thành công với commit được tham chiếu.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
GitHub quota and abuse responses currently lose their specific classification in the shared error layer, so downstream tooling cannot distinguish them from generic 403/transport failures.
Why now
Rate limits are a routine operational condition for GitHub integrations. This server already documents structured error handling, but the central classifier only recognizes invalid token and insufficient scope today.
Evidence packet
- Commit under test:
0c0ac794a443626d3a1517f8154f109f06a26e68 - Runtime: macOS 15.3 / Darwin 25.3.0 arm64, Go
1.25.7 - Relevant codepaths:
pkg/errors/error.gopkg/utils/api.godocs/error-handling.md
- Minimal repro:
- Trigger a secondary rate limit or abuse-detection response from GitHub.
- Observe the error payload stored in middleware / tool results.
- Expected: explicit classifications for secondary rate limits and abuse limits, ideally preserving retry timing when GitHub provides it.
- Actual:
classifyHTTPErrorCodeonly handles401 invalid_tokenand some403 insufficient_scopecases, leaving rate-limit-specific failures unclassified.
Scope
This is a platform contract issue in shared GitHub error mapping.
Validation target
Unit tests should prove that primary, secondary, and abuse limit responses classify distinctly and preserve retry metadata when available.
- Ngôn ngữ chính
- Go
- Star
- 33.1k
- Fork
- 5k
- Merge trung bình
- 2 ngày 1 giờ
- Pull request đã merge (30 ngày)
- 25
Hướng dẫn đóng góp
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/github-mcp-server
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
github/github-mcp-server#3235 ·
-
enhancement
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
github/github-mcp-server#3042 · 2 bình luận ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
github/github-mcp-server#3032 · 1 reaction ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
github/github-mcp-server#2803 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
github/github-mcp-server#2740 ·
Tất cả issue của github/github-mcp-server
Issue tương tự
-
area/dev-productivity area/disaster-recovery area/ipcei kind/enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
kind/bug status/0-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
🤔 refinement needed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
equinor/radix-operator#1979 ·