You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs/developer-guide.md stopped telling you to run the pre-commit framework
when #430 landed in #462. The contributing page in the same book still does.
$ git rev-parse --short=8 HEAD
fab9053f
$ sed -n '123,130p' docs/contributing/CONTRIBUTING.md
cargo nextest run --workspace --locked
# Frontend
npm test --prefix apps/sysknife-shell && npm exec --prefix apps/sysknife-shell -- tsc --noEmit
# All pre-commit hooks
pre-commit run --all-files
docs/developer-guide.md:68 spells out what happens to somebody who follows
that instruction:
$ sed -n '68,70p' docs/developer-guide.md
> Do **not** use `pip install pre-commit && pre-commit install`. This repository
> drives its hooks through `core.hooksPath`, so anything written into
> `.git/hooks` is ignored by Git and you would end up with no gate at all.
A reader who lands on the contributing page, installs the framework and commits
believes a gate ran. Git looked in .githooks and never in .git/hooks, so
nothing ran. That is the evening #430 was filed to prevent, reached through the
other door.
The guard #462 added reads docs/developer-guide.md and nothing else, so this
copy is invisible to it:
Replace the pre-commit run --all-files block in docs/contributing/CONTRIBUTING.md with what the repository drives. Read .githooks/pre-commit and scripts/ci-local.sh --install-hooks before
writing it down; do not copy a list out of this issue.
Decide whether the contributing page should carry the five steps itself or
point at docs/developer-guide.md#pre-commit-hooks. A second copy of the list
is a second thing to drift, and check_pre_commit_commands screens one file
today. Pointing at the guide costs nothing and keeps one source.
If you do put commands in the contributing page, extend check_pre_commit_commands to screen both files rather than leaving the new
copy unguarded.
.pre-commit-config.yaml is still in the tree, and docs(hooks): align pre-commit guide with the active gate #462 calls it "an unused
remnant of the earlier framework setup". Say in one sentence in the PR whether
anything reads it, or file its removal separately.
Tests first
tests/release/public-claims.test.sh already mutates the hook and asserts the
checker names the changed step. If you extend the checker to a second file,
extend that fixture the same way and show it going red both by adding a step and
by removing one. A checker that screens a file nobody mutated in the test is the
defect one level up.
Difficulty
easy. One markdown block, one decision about where the list lives, and an
existing guard to reuse. No Rust, no daemon, no VM.
Getting started
CONTRIBUTING.md
has the build and test commands. No CLA and no copyright waiver. The project is MIT.
docs/developer-guide.mdstopped telling you to run thepre-commitframeworkwhen #430 landed in #462. The contributing page in the same book still does.
That page ships in the book:
Why it matters
docs/developer-guide.md:68spells out what happens to somebody who followsthat instruction:
A reader who lands on the contributing page, installs the framework and commits
believes a gate ran. Git looked in
.githooksand never in.git/hooks, sonothing ran. That is the evening #430 was filed to prevent, reached through the
other door.
The guard #462 added reads
docs/developer-guide.mdand nothing else, so thiscopy is invisible to it:
Scope
pre-commit run --all-filesblock indocs/contributing/CONTRIBUTING.mdwith what the repository drives. Read.githooks/pre-commitandscripts/ci-local.sh --install-hooksbeforewriting it down; do not copy a list out of this issue.
point at
docs/developer-guide.md#pre-commit-hooks. A second copy of the listis a second thing to drift, and
check_pre_commit_commandsscreens one filetoday. Pointing at the guide costs nothing and keeps one source.
check_pre_commit_commandsto screen both files rather than leaving the newcopy unguarded.
.pre-commit-config.yamlis still in the tree, and docs(hooks): align pre-commit guide with the active gate #462 calls it "an unusedremnant of the earlier framework setup". Say in one sentence in the PR whether
anything reads it, or file its removal separately.
Tests first
tests/release/public-claims.test.shalready mutates the hook and asserts thechecker names the changed step. If you extend the checker to a second file,
extend that fixture the same way and show it going red both by adding a step and
by removing one. A checker that screens a file nobody mutated in the test is the
defect one level up.
Difficulty
easy. One markdown block, one decision about where the list lives, and anexisting guard to reuse. No Rust, no daemon, no VM.
Getting started
CONTRIBUTING.md
has the build and test commands. No CLA and no copyright waiver. The project is MIT.