api: merge/preview ignores strategy, squash and allow_unrelated_histories
Maintainer thường phản hồi trong vòng 1 ngày
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Start by comparing the /repos/merge/preview and v1 handlers with the /merge route’s decision code, then trace how each route reads strategy, squash, and allow_unrelated_histories. Add tests for the listed cases that compare preview results with the merge route’s answer, including the unrelated histories response. Done means the preview matches the merge route for each parameter combination.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
Spec 5d8e1801 says GET /repos/merge/preview (and v1) gives the result POST /merge would give with the same strategy, squash and allow_unrelated_histories, adds the results squash and rejected, and documents 412 for unrelated histories. SDK 0.1.2 sends all three.
We read none of them. Live at 3af232d9: strategy=merge gave fast_forward (upstream: merge_commit), squash=true gave fast_forward (upstream: squash), ff_only on diverged branches gave merge_commit (upstream: rejected), and unrelated histories gave 200 merge_commit (upstream: 412).
Desk decision
Read the three params and compute the preview with the same decision code POST /merge uses, so the two cannot drift. Test each case against the merge route's own answer.
Severity
Medium: a client that previews before merging gets a wrong prediction.
Upstream audit 2026-11-12, evidence 2026-11-12-1159UTC. Docs spec 5d8e1801 (ETag W/"8GUlAlKU8eko7Rr2", Last-Modified 2026-11-10 22:29:59 GMT). The cluster still serves ee8092bf, so this is documented drift, not a proven deployment (#234 rule: adopt what the docs publish). SDK 0.1.1 (Nov 10) and 0.1.2 (Nov 11) shipped on npm, PyPI and Go; their route list and token minting are unchanged from 0.1.0.
Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: medium
- Ngôn ngữ chính
- Go
- Star
- 0
- Fork
- 0
- Merge trung bình
- 6 giờ 16 phút
- Pull request đã merge (30 ngày)
- 243
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Đọc 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 coder/openstorage
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
coder/openstorage#807 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 49/100
coder/openstorage#806 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
githttp: +import remote serves clone and fetch, and its pushes stay out of the normal branch listCó thể đã có người làm @ThomasK33 đã nhận hôm nay. Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
coder/openstorage#804 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
api: branches/create ignores expected_target_sha, so a guarded create or move can overwrite a branchCó thể đã có người làm @ThomasK33 đã nhận hôm nay. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
coder/openstorage#803 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
githttp: hide ephemeral refs from the persistent remote and refuse pushes to them, as the docs sayCó thể đã có người làm @ThomasK33 đã nhận 1 ngày trước. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
coder/openstorage#799 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của coder/openstorage
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
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
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
coder/coder-logstream-kube#255 · 1 bình luận ·
-
kind/features
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 73/100
TencentBlueKing/bk-nodemgr#3991 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
meta
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
last9/last9-mcp-server#554 ·
Maintainer thường phản hồi trong vòng 1 ngày