Repository navigation
Closed
Copy link
Labels
agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.Fully specified and briefed; eligible for autonomous pickup from the frontier.priority: mediumReal value, no hard deadline; normal backlog flow.Real value, no hard deadline; normal backlog flow.status: readyTriaged, unblocked, and fully specified; eligible to pick up.Triaged, unblocked, and fully specified; eligible to pick up.
Description
Parent
Refs #5948
Depends on
- none: on the frontier now
Outcome
No git hook file the plugins install, and not the convention resolver, names bash in its shebang or as a
command, so git bundled with Visual Studio or SSMS (which ships sh.exe and no bash.exe) never resolves
bash to the System32 WSL launcher. Entry points are #!/bin/sh with a POSIX body, or a sh entry that
execs a bash it has checked is not a System32 path.
Decisions
- Step A (owner, 2026-10-13): sh entry point, tests; ships before the config-hook lane.
- The canonical files are
lib/git-hooks/install.mjs(its dispatcher runs each entry withbash) and
lib/resolve-convention-pattern.sh; plugin copies are regenerated withscripts/sync-shared-copies.sh
(C12: the allowlist hold no longer applies). - MSYS
sh.exeis bash in POSIX mode, so bashisms pass on Windows and break only ondash: test on Linux.
Key interfaces
lib/git-hooks/install.mjs,lib/resolve-convention-pattern.sh,plugins/guardrails/git-hooks/commit-msg-convention.sh
and their copies;block-noncanonical-commitandblock-convention-violationshare the resolver.
Done when
- A test asserts no installed hook entry, the dispatcher it writes, or the resolver names
bashin its shebang or as a command, andscripts/run-test-file.shon it exits 0. -
scripts/run-test-file.sh plugins/guardrails/git-hooks/commit-msg-convention.test.shexits 0 and runs the hook underdash. -
scripts/run-test-file.sh lib/git-hooks/install.test.mjsandscripts/run-test-file.sh lib/git-hooks/install.test.shexit 0. -
scripts/run-test-file.shexits 0 onlib/resolve-convention-pattern.test.sh,plugins/guardrails/hooks/block-noncanonical-commit.test.shandplugins/guardrails/hooks/block-convention-violation.test.sh. -
scripts/sync-shared-copies.sh --checkexits 0. -
scripts/check-changelog-fragments.sh --check-required origin/mainexits 0. - The PR body carries
Hold: a human merges this(it changes a commit gate).
Metadata
Metadata
Assignees
Labels
agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.Fully specified and briefed; eligible for autonomous pickup from the frontier.priority: mediumReal value, no hard deadline; normal backlog flow.Real value, no hard deadline; normal backlog flow.status: readyTriaged, unblocked, and fully specified; eligible to pick up.Triaged, unblocked, and fully specified; eligible to pick up.
Type
Fields
No fields configured for Bug.
Activity
melodic-automation-lanes commentedon Oct 24, 2026
The work-resolve-issue lane stopped on its usage limit, not on this issue. It keeps
agent-ready, and work-unblock starts it again after 2026-10-25T16:00:00Z.Run: https://github.com/melodic-software/claude-code-plugins/actions/runs/40140182516