docs: cut the every-session context set by 74%, and fix what the cut broke #105
@@ -13,11 +13,12 @@
|
|||||||
# dev binary, the other 15 suites still tell you something, and turning that
|
# dev binary, the other 15 suites still tell you something, and turning that
|
||||||
# into a red run would just train people to ignore red.
|
# into a red run would just train people to ignore red.
|
||||||
# * as a GATE (the run-tests pre-push hook): a skip is a SETUP ERROR, not a
|
# * as a GATE (the run-tests pre-push hook): a skip is a SETUP ERROR, not a
|
||||||
# legitimate state. AGENTS.md documents vale, apm and jq as required pre-push
|
# legitimate state. README.md's Prerequisites table documents vale, apm and
|
||||||
# dependencies, so a suite that cannot run on the machine doing the pushing
|
# jq as required pre-push dependencies, so a suite that cannot run on the
|
||||||
# means the machine is misconfigured -- and pre-commit prints NOTHING for a
|
# machine doing the pushing means the machine is misconfigured -- and
|
||||||
# passing hook, so the skip list below is swallowed entirely. On a vale-less
|
# pre-commit prints NOTHING for a passing hook, so the skip list below is
|
||||||
# PATH that silently shipped a green gate having verified 15 of 17 suites.
|
# swallowed entirely. On a vale-less PATH that silently shipped a green
|
||||||
|
# gate having verified 15 of 17 suites.
|
||||||
# Exactly the vacuous-pass class the rest of this file exists to close.
|
# Exactly the vacuous-pass class the rest of this file exists to close.
|
||||||
#
|
#
|
||||||
# Deliberately its own switch, NOT folded into
|
# Deliberately its own switch, NOT folded into
|
||||||
@@ -258,7 +259,7 @@ fi
|
|||||||
# here (not just referenced) because this block goes to stderr and is what a
|
# here (not just referenced) because this block goes to stderr and is what a
|
||||||
# pre-push reader actually gets handed.
|
# pre-push reader actually gets handed.
|
||||||
if [[ "$STRICT" == true && ${#SKIPPED[@]} -gt 0 ]]; then
|
if [[ "$STRICT" == true && ${#SKIPPED[@]} -gt 0 ]]; then
|
||||||
echo "Error: --strict and ${#SKIPPED[@]} suite(s) skipped. Run as a gate, a skip is a SETUP ERROR on this machine, not a legitimate state: AGENTS.md documents vale, apm and jq as required pre-push dependencies, so every suite is expected to be runnable here. Install what each suite names below and re-run; do not skip the hook." >&2
|
echo "Error: --strict and ${#SKIPPED[@]} suite(s) skipped. Run as a gate, a skip is a SETUP ERROR on this machine, not a legitimate state: README.md's Prerequisites table documents vale, apm and jq as required pre-push dependencies, so every suite is expected to be runnable here. Install what each suite names below and re-run; do not skip the hook." >&2
|
||||||
sidx=0
|
sidx=0
|
||||||
for s in ${SKIPPED[@]+"${SKIPPED[@]}"}; do
|
for s in ${SKIPPED[@]+"${SKIPPED[@]}"}; do
|
||||||
echo " $s" >&2
|
echo " $s" >&2
|
||||||
|
|||||||
@@ -392,10 +392,11 @@ fi
|
|||||||
|
|
||||||
# --- 10. --strict turns a skip into a failure, and names the suite AND the reason ---
|
# --- 10. --strict turns a skip into a failure, and names the suite AND the reason ---
|
||||||
# Graceful skipping is right for an ad-hoc run and wrong for a gate. At pre-push a
|
# Graceful skipping is right for an ad-hoc run and wrong for a gate. At pre-push a
|
||||||
# suite exiting 77 means a dependency AGENTS.md documents as required is missing
|
# suite exiting 77 means a dependency README.md's Prerequisites table documents
|
||||||
# on the pushing machine -- and pre-commit prints nothing at all for a passing
|
# as required is missing on the pushing machine -- and pre-commit prints nothing
|
||||||
# hook, so the skip list this script writes to stdout was swallowed whole. A
|
# at all for a passing hook, so the skip list this script writes to stdout was
|
||||||
# vale-less PATH shipped a green gate having verified 15 of 17 suites.
|
# swallowed whole. A vale-less PATH shipped a green gate having verified 15 of
|
||||||
|
# 17 suites.
|
||||||
#
|
#
|
||||||
# The reason is asserted, not just the name: "something was skipped" leaves the
|
# The reason is asserted, not just the name: "something was skipped" leaves the
|
||||||
# reader with no idea which binary to install, which is most of why the swallowed
|
# reader with no idea which binary to install, which is most of why the swallowed
|
||||||
|
|||||||
@@ -451,9 +451,11 @@ fi
|
|||||||
# cover anything new: it omitted scripts/lib/batch-run.sh — the shared runner
|
# cover anything new: it omitted scripts/lib/batch-run.sh — the shared runner
|
||||||
# this branch introduced, whose own header (batch-run.sh:9-11) documents it as
|
# this branch introduced, whose own header (batch-run.sh:9-11) documents it as
|
||||||
# bash-3.2-safe — along with four other scripts/*.sh. Deriving the list means a
|
# bash-3.2-safe — along with four other scripts/*.sh. Deriving the list means a
|
||||||
# new script is covered the moment it lands. LESSONS.md and the script headers
|
# new script is covered the moment it lands. The script headers name bash 3.2 as
|
||||||
# name bash 3.2 as an explicit repo target, so the scope is four globs, each
|
# an explicit repo target -- scripts/lib/batch-run.sh:10 ("all three callers are
|
||||||
# floor-asserted below:
|
# explicitly bash-3.2-safe") and providers/claude-code/statusline-command.sh:100
|
||||||
|
# ("macOS's system bash, and an explicit repo target") -- so the scope is four
|
||||||
|
# globs, each floor-asserted below:
|
||||||
# - scripts/**/*.sh — repo tooling and pre-commit hook scripts
|
# - scripts/**/*.sh — repo tooling and pre-commit hook scripts
|
||||||
# - tests/*.sh — the runners and every regression test
|
# - tests/*.sh — the runners and every regression test
|
||||||
# - plugins/*/.apm/**/*.sh — the scripts plugins ship to users
|
# - plugins/*/.apm/**/*.sh — the scripts plugins ship to users
|
||||||
|
|||||||
Reference in New Issue
Block a user