Skip to content

feat(harness): developer and harness fold-ins from the tool survey - #18

Merged
z4gunn merged 2 commits into
mainfrom
feat/dev-harness-foldins
Oct 4, 2026
Merged

z4gunn merged 2 commits into
mainfrom
feat/dev-harness-foldins

Conversation

@z4gunn

@z4gunn z4gunn commented Oct 4, 2026 •

Copy link
Copy Markdown
Owner

Area 10 of 11: developer and harness fold-ins

Six small rules, each turning prose into a mechanism: a PreToolUse hook that refuses --no-verify and --no-gpg-sign (instances and this repo), a validator rule failing two skill descriptions whose TF-IDF cosine reaches 0.75 (the closest real pair is 0.67), an index mode on spgr-read-artifact, the surgical-changes clause in the developer agents and the instance CLAUDE.md, a commit and working-tree fingerprint on every pasted verification so Check can mark a paste stale, cost-if-wrong and a recommended reason on gate options, and source and files on retrospective learnings. Hook and validator tests included.

Sources: wshobson/agents, addyosmani/agent-skills, andrej-karpathy-skills, garrytan/gstack, thedotmack/claude-mem.

Stacked PR: merge in order, this one after its base branch. Merge with a merge commit, as the earlier PRs were.

🤖 Generated with Claude Code

z4gunn and others added 2 commits October 4, 2026 16:02
… survey surfaced

Six small rules from the survey, each closing a gap a rule in prose left
open. A PreToolUse hook on Bash refuses a git command that bypasses the hook
chain, registered for instances and for this repo, so the no-bypass rule in
git-workflow.md is mechanical. The repo validator gains a routing rule that
fails two skill descriptions whose TF-IDF cosine reaches 0.75, because the
router picks by description and the closest existing pair sits at 0.67.
spgr-read-artifact gains an index mode that returns one header line per
artifact so a unit finds what it needs without opening the corpus. The
developer agents and the instance CLAUDE.md carry the surgical-changes
clause: every changed line traces to the story or the finding, adjacent
code is left alone, and pre-existing dead code is reported, not deleted. A
unit report stamps its pasted verification with the commit and a
working-tree fingerprint, and Check marks a paste stale when the tree moved
after the run. Gate options carry the cost if wrong and one recommended
reason, and a retrospective learning carries its source and files so only a
user-stated learning crosses projects and a learning whose files are gone
is dropped at pin time.

Sources: wshobson/agents block-no-verify, addyosmani/agent-skills evals
(routing check), multica-ai/andrej-karpathy-skills (surgical changes),
garrytan/gstack (evidence receipts, decision brief, learnings provenance),
thedotmack/claude-mem (index-first reads).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ut the file fails open

Claude Code keeps the loaded settings when the checkout changes, so after
switching from the branch that adds the hook to one that predates it the
registered command ran python3 on a missing file, exited 2, and refused
every shell command in the session. The registration now runs the hook
only when its file exists. An instance mid-update and an older branch pass
through, and a present hook blocks exactly as before.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Base automatically changed from feat/github-security-signals to main October 4, 2026 23:18
@z4gunn
z4gunn merged commit 9d096ba into main Oct 4, 2026
1 check passed
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