Skip to content

fix(gates): zsh out of the shellcheck scan; ~/ doc refs; opt-in scaffold - #4

Merged
alkisyuv merged 1 commit into
mainfrom
worker/batch-2026-08-21
Aug 24, 2026
Merged

fix(gates): zsh out of the shellcheck scan; ~/ doc refs; opt-in scaffold#4
alkisyuv merged 1 commit into
mainfrom
worker/batch-2026-08-21

Conversation

@alkisyuv

Copy link
Copy Markdown
Member

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. extractDocRefs resolved ~/-home paths as repo files. Prose naming a path under the
user's home produced dangling-ref: no such file exists, because tilde paths were not treated as
absolute. 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 init scaffolded an unfilled AGENTS.md uninvited. During a mechanical rollout this
lands 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 interactive
answer); -y alone creates only .etymd/.

Pack v8 → v10.

Merging

  • Branches from before the 0.12.0 release, so it is behind main by two releases.
  • Conflicts with the other two open branches in the four generated hook files,
    src/pack/version.ts, and test/gates.test.ts / test/analysis.test.ts. The hook and version
    collisions are mechanical: regenerate once with etymd gates -y after merging and keep the
    highest 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 name worker/batch-2026-08-21).

- 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.
@alkisyuv
alkisyuv merged commit 2fccd24 into main Aug 24, 2026
2 checks 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