fix: handle empty staged files in pre-commit hook#95
Open
jmcte wants to merge 1 commit into
Open
Conversation
Keep strict-mode hook execution working for metadata-only commits with no staged paths. Signed-off-by: Your Name <you@example.com>
athena-omt
reviewed
Jul 18, 2026
athena-omt
left a comment
Contributor
There was a problem hiding this comment.
Reviewed current head 0addaae locally. The empty-array guard correctly preserves hook behavior, and the new clean-feature-branch regression covers the failure path. Targeted smoke test and typecheck passed. Branch is current with main and mergeable, but Claude and Cloudflare check suites remain queued; deferring approval until CI settles.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
set -u.Governing Issue
No governing issue is linked: this is a narrow hook reliability fix requested directly by Pheidon.
Validation
npm test -- --run tests/smoke.test.ts tests/render.test.ts(30 tests passed)npm run typecheckgit diff --checkautoreviewwith no accepted or actionable findings.CI Gate.Bootstrap Governance
Material change: no
Merge Automation
Notes
The current hook dereferences an empty Bash array with
set -u, which blocks a metadata-only amend such as adding a DCO trailer. The generated hook now expands the array zero-safely and skips the fallback empty entry.