fix(gates): zsh out of the shellcheck scan; ~/ doc refs; opt-in scaffold - #4
Merged
Conversation
- pre-push: zsh shebangs are excluded from the shellcheck discovery (SC1071 is a parser-level error, so checking zsh would block every push in a repo whose surface is zsh); the exclusion is printed at run time, never silent. Pack v10; v9 is skipped so no two template meanings share a version. - instruction-truth: a well-known doc mentioned inside a ~/ home path is not a repo file reference — skipped and disclosed like absolute tokens; one ordinary mention still makes the doc a live claim. - init: the AGENTS.md scaffold is opt-in via --with-agents; init -y alone never seeds template prose that no one reviewed, and never baselines it.
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.
Three defects found while installing gates across a large set of repos.
1. The pre-push shebang scan fed zsh to shellcheck. shellcheck fails fatally on zsh (SC1071,
a parser-level error that cannot be disabled inline), so any repo whose checkable surface is
zsh tooling could never push. The scan is now sh/bash/dash only, and the hook PRINTS the excluded
zsh count and the reason at run time — an excluded file is disclosed, never a silent coverage
hole.
2.
extractDocRefsresolved~/-home paths as repo files. Prose naming a path under theuser's home produced
dangling-ref: no such file exists, because tilde paths were not treated asabsolute. They are now skipped and disclosed like other absolute tokens; an ordinary
repo-relative mention still claims, and a genuinely missing one still blocks.
3.
etymd initscaffolded an unfilled AGENTS.md uninvited. During a mechanical rollout thislands template contracts in many repos at once, and the scaffold then enters the baseline, so
deleting it later trips
artifact-gone. It is now opt-in via--with-agents(or an interactiveanswer);
-yalone creates only.etymd/.Pack v8 → v10.
Merging
mainby two releases.src/pack/version.ts, andtest/gates.test.ts/test/analysis.test.ts. The hook and versioncollisions are mechanical: regenerate once with
etymd gates -yafter merging and keep thehighest pack number. The test collisions are adjacent assertions, not contradictory ones.
Reopened from #2, which GitHub closed when its head branch was renamed (same commit
3056213, new nameworker/batch-2026-08-21).