fix(hooks): fail closed on crash in the remaining blocking hook rows
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ó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 72/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc các dòng hook của worktree-add-containment, pr-body-linkage, pr-linkage-mcp, test-weaken và run-python-hook, cùng với phần header của exec-bash.mjs và issue #8569. Cập nhật từng dòng chặn được liệt kê để các sự cố crash, thiếu bash, lỗi khởi chạy node, hết thời gian chờ và sự cố crash của Git Bash đều chặn lời gọi; issue để cơ chế này cho đợt rà soát hardening sau. Hoàn tất khi mọi chế độ lỗi được liệt kê đều từ chối lời gọi công cụ.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Refs: #8569, #8282
Outcome
Every blocking hook row whose crash should deny the tool call fails closed: a bash crash, missing bash, a node start failure, the 60 s timeout, or a Git Bash crash read as exit 0 blocks the call instead of allowing it.
Current behavior
#8569 (PR #8674) adds an opt-in --fail-closed flag to exec-bash.mjs, passed only by the guardrails guard rows. These blocking rows in other plugins do not pass it, so a crash in any of the cases above allows the call (GitHub Security & Cost review of #8674 at e8309efd4b, 2026-10-21):
- source-control:
worktree-add-containment,pr-body-linkage,pr-linkage-mcp - testing:
test-weaken - disk-hygiene:
run-python-hook
Desired behavior
Each row above fails closed on every failure mode listed in Outcome. Claude Code's hook onFailure: "block" setting (v2.1.295+, https://code.claude.com/docs/en/hooks) covers all of them, including the cases --fail-closed cannot see (missing bash, node start failure, timeout).
Out of scope
- Non-blocking rows (formatters, linters), whose fail-open is deliberate (
exec-bash.mjsheader). - The guardrails rows, covered by #8569.
Notes
Severity low; queued for the #8282 deferred-hardening review (2026-11-18) unless the owner wants it sooner. Which mechanism (onFailure: "block" per row vs --fail-closed) is a design choice for that review.
- Ngôn ngữ chính
- Shell
- Star
- 22
- Fork
- 2
- Merge trung bình
- 7 giờ 57 phút
- Pull request đã merge (30 ngày)
- 938
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 melodic-software/claude-code-plugins
-
priority: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
melodic-software/claude-code-plugins#8831 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
priority: medium status: confirmed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
melodic-software/claude-code-plugins#8801 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
fix(links): make the online link check green (23 errors since 2026-10-11)Có thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởpriority: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
melodic-software/claude-code-plugins#8730 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
priority: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
melodic-software/claude-code-plugins#8709 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
fix(source-control): ready-hold check treats a Hold: line that says do not merge as a flip holdĐang mởpriority: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
melodic-software/claude-code-plugins#8708 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của melodic-software/claude-code-plugins
Issue tương tự
-
data only (no code) good first issue
Độ 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 74/100
-
GNU nano 9.3 released upstreamĐang mởupstream-release
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
LinkStackOrg/linkstack-docker#170 · 8 reaction ·