🤖 CoderWorkspaceClaim: a bound claim whose member failed stays Reconciling, so GitOps waits only time out
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ó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Start with writeClaimStatuses in internal/controller/coderworkspacepool_claim.go, which sets Stalled only for Lost or a Share stall, and with readPoolMemberWorkspace in internal/controller/coderworkspacepoolmember_ready.go. The issue leaves open whether to set Stalled=True on a bound claim whose member is Failed, or to keep the current delete-and-recreate behavior documented in docs/how-to/gitops.md, so confirm the choice with maintainers first. Done means a bound claim with a failed member reports a terminal state that the GitOps health rules can read.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
A bound CoderWorkspaceClaim whose member fails stays Reconciling=True forever, so the GitOps health rules from #453 show it Progressing (Argo CD) or InProgress (Flux) and never Degraded/Failed. A sync wave or a Flux wait: true that waits on such a claim ends only at its timeout.
Reachable member failures after a bind:
OwnershipUnknown: someone renamed thekwp-workspace, or it has another owner or template (readPoolMemberWorkspace,internal/controller/coderworkspacepoolmember_ready.go), on every poll of a bound member.ChangedExternally: someone started a build before the bind extension finished (poolMemberStartBuildStep, reached fromwatchReadywhilestatus.bindExtendedis false).
writeClaimStatuses (internal/controller/coderworkspacepool_claim.go) copies the member's reason, but sets Stalled only for Lost or a Share stall. The pool deletes only unclaimed failed members, so the claim stays Bound, not ready, and Reconciling=True.
Options
- Set
Stalled=Trueon a bound claim whose member phase isFailed(the claim is notLost, because the workspace can still exist). The health rules need no change. - Keep the behavior, which #453 documents in
docs/how-to/gitops.md: delete the claim and let GitOps create it again.
Found by the independent readiness review of #453 (plan PR 16a of #153).
Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: xhigh
- Ngôn ngữ chính
- Go
- Star
- 5
- Fork
- 3
- Merge trung bình
- 1 giờ 50 phút
- Pull request đã merge (30 ngày)
- 160
Chuẩn bị môi trường
- Không có Dockerfile hay 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/coder-k8s
-
CoderWorkspacePool: count bound and used members only when their owner matches the pool's ownerĐang mở
Độ khó 3/5 Nửa ngày Mức phù hợp với người mới 62/100
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 35/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 Nửa ngày Mức phù hợp với người mới 45/100
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 30/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 8/100
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của coder/coder-k8s
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
open-feature/flagd-schemas#237 ·
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
superplanehq/superplane#9234 ·
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 65/100
betterleaks/betterleaks#469 ·
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 82/100
prime-radiant-inc/evener#5901 ·
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 69/100