githttp: +import remote serves clone and fetch, and its pushes stay out of the normal branch list
Maintainer thường phản hồi trong vòng 1 ngày
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 20/100
Hướng nghiên cứu
Start with the internal/githttp hook and trace how +import handles upload-pack, hydrate, quota, LFS, ref policies, webhooks, and the S3-WAL backend. Coordinate with PR #800 and check how existing refs under the import namespace are stored. The issue calls for +import pushes to create normal branches, upload-pack to be refused, and pushes to synced repos to be rejected.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
Upstream's docs page docs/repos/imports (last-modified 2026-11-11 21:43 GMT) says the /{repo}+import.git URL accepts a push only, that an import push creates normal branches that a normal clone shows, and that a synced repo refuses an import push.
Live on a node at 3af232d9: an import push worked, clone and ls-remote on +import both succeeded, and the pushed branch did not appear on the persistent remote or in the REST branch list. docs/explanation/wire-compatibility.md lists +import as a supported namespace with no deviation row. The synced-repo refusal was not tested.
Desk decision
Make +import match the upstream page. Design check first, posted here before code: how +import is wired today (internal/githttp hook, hydrate, quota, LFS), whether an import push must write the persistent ref space directly, how the hook, ref policies, quota, webhooks and the S3-WAL backend handle it, and what happens to refs already stored under the import namespace. Then refuse upload-pack on +import, write import pushes into the normal branches, and refuse an import push on a synced repo. Breaking for anyone who fetches from +import today. Coordinate with PR #800, which hides refs/namespaces/ on the persistent remote.
Severity
High: imported branches are invisible to every normal client.
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
-
api: merge/preview ignores strategy, squash and allow_unrelated_historiesCó 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#805 ·
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