- hooks/pre-push: bash -n + shellcheck -S warning -e SC1090 on every
tracked *.sh; fails closed when shellcheck is missing, bypassable with
--no-verify; enable with 'git config core.hooksPath hooks' (documented)
- tests/smoke.sh: manual docker/podman Arch-container run of bat.sh,
zsh.sh and fish.sh with assertions (idempotent bat config, timestamped
zsh backups, fisher actually installed in fish); LazyVim.sh opt-in.
This catches the inverted-condition/quoting class shellcheck cannot.
fish.sh gains a SKIP_END4_SETUP=1 test hook to skip end-4's installer
- README: scripts table (documents installbeta.sh vs install.sh and why
SecureBoot.sh is not in the menu), apt full-upgrade note, development
section; claims audited against current behavior (gum wording already
correct, no whiptail/selection claims remain)
- remove untracked vendored gum.md (reference only, per decision)