adopt the defect-class guard method: generalize kamerplanter's workflow-gate-integrity hook
Một pull request liên quan đã được merge.
- #13 của @nolte — đã merge
Đá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
- 35/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc định nghĩa phương thức trong nolte/claude-shared#573, ứng viên workflow-gate-integrity từ kamerplanter#1313 và spec/hook-authoring. Đánh giá xem hook có hoạt động trong một repository khác kamerplanter mà không cần cấu hình dành riêng cho repository hay không; nếu được áp dụng, hãy xác minh rằng nó chuyển sang trạng thái đỏ đối với các lỗi #1235 và #1302 đã được khôi phục, đồng thời tham chiếu #573 trong spec/hook-authoring.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Depends on nolte/claude-shared#573, which defines the method these hooks implement.
Why here
nolte/kamerplanter runs 20 pre-commit hooks that each lock in one closed defect class, named after its issue. This repository ships two generic hooks. Most of kamerplanter's are domain-bound (tenant keys, seed schemas, plant phases) and stay there. A few are not.
Candidate, and it is a candidate, not a given
workflow-gate-integrity (kamerplanter#1313): no CI gate that cannot fail, or cannot run on the change it is meant to check.
It is the strongest candidate because it mechanises the failure class on the CI side, and every repository with GitHub Actions has that surface. The defects it was built from, all real and all invisible while green:
- kamerplanter#1235 — a freshness check whose grace window is anchored on the newest build rather than on the pin, so it can never alert
- kamerplanter#1302 — a pin assertion whose path filter excludes the very file whose pin it asserts, so it cannot fire on the PR that changes it
- kamerplanter#1228 — a pre-publish gate requiring a check that structurally cannot report at the point it is demanded
- kamerplanter#1308 — a clean scan and a scan that never ran, indistinguishable downstream
Adoption is conditional: the hook must be configurable without kamerplanter's path assumptions. If it cannot be, say so and close — a hook that only works in one repository belongs in that repository.
A second, weaker candidate is a generic form of layer-imports. Assess it after the first lands, or not at all.
Acceptance criteria
- The hook runs against a repository other than kamerplanter with no kamerplanter-specific configuration
- Falsification, per adopted hook: restore the pre-fix state of kamerplanter#1235 and of #1302 and run the hook. Red both times. A hook that is green in its origin repository and has never been red in the new one is not verified, it is installed.
-
spec/hook-authoringreferences nolte/claude-shared#573 as the method the hook implements
References
- kamerplanter
spec/analysis/development-process-improvement-plan-2026-09-11.md§M3 - kamerplanter#1313, #1235, #1302, #1228, #1308
- Ngôn ngữ chính
- Python
- Star
- 0
- Fork
- 0
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Không 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 nolte/pre-commit-hooks
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
Dependency DashboardĐang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 20/100
Tất cả issue của nolte/pre-commit-hooks
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
aws-samples/sample-per-model-bedrock#464 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
lesson-submission pending-review
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
Ikalus1988/MisakaNet#3789 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Python Volcengine provider returns failures instead of raising themCó thể đã có người làm @Ricardo-M-L đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
agent-infra/sandbox#248 ·
-
[Bug] cloud JSON directory loading assumes a Key field in fsspec listingsCó thể đã có người làm @Ricardo-M-L đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
hiyouga/LlamaFactory#10910 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Bundled uv is never updated and trusts the compromised eMudhra certificatesCó thể đã có người làm @FabienDanieau đã nhận hôm nay. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100