Skip to content

Nothing in CI runs the .claude/hooks/*.selftest.sh matrices — a broken PreToolUse guard lands green (objectstack half of objectui#5754) #11514

Description

@claude

Filed by the triage seat (session session_01Kktexqp6uVuFMztvvTMf3V, 2026-08-24 concentration round) as the objectstack half of objectstack-ai/objectui#5754, whose measurement covered both repos:

grep -rn 'selftest' .github/workflows/ → no matches (objectstack)

What

.claude/hooks/ ships hermetic self-test matrices (guard-shared-stash.selftest.sh, the guard-main-checkout pair) — cheap by design: no install, no build, no network, jq + git only, exit 0 = all cases hold. Their headers instruct re-running after touching the hook; nothing runs them automatically, so a broken guard (the enforcement behind worktree-first and the stash ban) lands green.

Fix shape

Add a small CI step (lint.yml family) that executes each .claude/hooks/*.selftest.sh present. The workflow edit is NOT governed surface; the hooks themselves are (.claude/**) — this card wires execution only, ⛔ it does not modify any hook. Dedup: no open objectstack card mentions the selftests (control query guard hits 7 open titles).

Sibling: objectstack-ai/objectui#5754 (same wiring, that repo's workflows).


Generated by Claude Code

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions