Skip to content

chore: remove inert .claude/hooks/extensions scaffold, correct README - #40

Merged
twistedmelonman merged 1 commit into
mainfrom
claude/chore-remove-claude-hooks-scaffold-5e330f69
Sep 10, 2026
Merged

twistedmelonman merged 1 commit into
mainfrom
claude/chore-remove-claude-hooks-scaffold-5e330f69

Conversation

@twistedmelonman

@twistedmelonman twistedmelonman commented Sep 10, 2026

Copy link
Copy Markdown
Member

Summary

  • Removes the tracked file .claude/hooks/extensions/example.sh.disabled. Its own README claimed it is "automatically discovered and run by global hooks" — that claim is false and was never true. git log -S'.claude/hooks/extensions' -- git/hooks/ in the dotfiles repo returns empty. Live extension discovery is .project-hooks/ only (dotfiles/git/hooks/pre-commit:92, pre-push:840). The scaffold dates to 2026-01-12; the .project-hooks/ seam was named in dotfiles#243 on 2026-08-24.
  • Replaces .claude/README.md with a corrected copy that no longer makes the false discovery claim.

Removal is safe: dotfiles/git/template/hooks/post-checkout:111 guards on .claude/ EXISTING, not on the example file. This repo keeps a tracked .claude/README.md and config.sh.template, so the hook exits before the cp -r that would re-drop the scaffold. This was verified by trial clone (DIRTY_LINES=0, nothing re-dropped).

Evidence

The CI-faithful standards check (run-standards.sh at github-workflows@standards-check-v1, run with an empty HOME to avoid ~/.shellcheckrc leakage) was run both before and after this change:

  • Before: exit 0 (already green)
  • After: exit 0

The repo was already passing before this change — the "before" run was green because it already carried the passing variant of example.sh.disabled. So the "after" green run does not demonstrate that the removal fixed or cleared anything. The only thing this run legitimately demonstrates is that the corrected .claude/README.md lints clean (markdownlint: .claude/README.md linted, 0 issues).

Advances smartwatermelon/dev-env#110

https://claude.ai/code/session_01TkReZXv8XkcWNbcaiWfcvg

.claude/hooks/extensions/example.sh.disabled is documented by its own
README as being "automatically discovered and run by global hooks." That
claim is false and was never true: git log -S'.claude/hooks/extensions'
-- git/hooks/ in the dotfiles repo returns empty. Live extension discovery
is .project-hooks/ only (dotfiles/git/hooks/pre-commit:92, pre-push:840).
The scaffold dates to 2026-01-12; the .project-hooks/ seam was named in
dotfiles#243 on 2026-08-24.

Removal is safe: dotfiles/git/template/hooks/post-checkout:111 guards on
.claude/ EXISTING, not on the example file. This repo keeps a tracked
.claude/README.md and config.sh.template, so the hook exits before the
cp -r that would re-drop the scaffold.

Also replaces .claude/README.md with a corrected copy that no longer
makes the false discovery claim.

Advances #110

Claude-Session: https://claude.ai/code/session_01TkReZXv8XkcWNbcaiWfcvg
@claude

claude Bot commented Sep 10, 2026

Copy link
Copy Markdown

This PR updates .claude/README.md to redirect project hook extensions from .claude/hooks/extensions/ to .project-hooks/, and deletes the disabled example file. No production code, shell scripts, or executable logic is changed.

No blocking issues found.

VERDICT: PASS

@twistedmelonman
twistedmelonman merged commit 0801667 into main Sep 10, 2026
5 checks passed
@twistedmelonman
twistedmelonman deleted the claude/chore-remove-claude-hooks-scaffold-5e330f69 branch September 10, 2026 20:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant