testsAndMisc/linux_configuration/scripts/single_use/features/lib
Krzysztof kuhy Rudnicki 0091608b08 Make the gate read jail_args and refuse a suite that dies partway
Two defects found in review, both of which made checks PASS more easily, so
neither ever went red.

GATE: is_covered() hardcoded its jail flags and never read the jail_args
marker that ci_mirror.sh and shell-tests.yml both consume. The features/lib
suite needs /usr/local/share and /etc/pki and aborts under set -e without
them -- but the coverage number still printed, because kcov had already
recorded whatever the dead run reached. The gate would have graded 44 libs on
a suite that never finished. It now reads the marker, keeps the historical
defaults for suites without one, fails closed on an empty marker, and passes
--fail-on-case-error.

Negative control: stripping the binds makes the gate exit 1 and restoring
them returns exit 0. Before this commit both cases exited 0 -- the gate could
not fail on an aborting suite.

HASH CACHE: the _t_unstub helper written earlier today for the transcribe
harness was needed in features_harness.sh too. Two assertions were vacuous --
test_dwm_config's "verify still reports when dwm is absent", and
test_rpi_nc_ca's uname removal, where a cached uname left every later branch
running under a faked Darwin. All four `rm -f "$TEST_TMPDIR/bin/` sites in
the repo were audited; the other two are sound (one probes with [[ -f ]], the
other runs in a subshell).

No measured figure moved: dot_resolver_install.sh still 39/39 = 100.00% with
real absence enforced, so its off-allowlist clearance holds.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016sxxsDHWgdRhmdmzNMA6XM
2026-08-22 13:36:54 +02:00
..
tests Make the gate read jail_args and refuse a suite that dies partway 2026-08-22 13:36:54 +02:00
aw_autostart.sh Split three more scripts; make the verifier catch heredoc cuts 2026-08-16 20:16:08 +02:00
aw_install.sh Split three more scripts; make the verifier catch heredoc cuts 2026-08-16 20:16:08 +02:00
aw_service.sh Split three more scripts; make the verifier catch heredoc cuts 2026-08-16 20:16:08 +02:00
dns_dhcp.sh Split setup_dns_blocker.sh, a live systemd unit target 2026-08-16 21:31:03 +02:00
dns_firewall.sh Split setup_dns_blocker.sh, a live systemd unit target 2026-08-16 21:31:03 +02:00
dns_units.sh Split setup_dns_blocker.sh, a live systemd unit target 2026-08-16 21:31:03 +02:00
dot_resolver_install.sh Split seven more linux_configuration scripts 2026-08-16 18:56:05 +02:00
dwm_config.sh Cover dwm_config.sh and fix its unreachable upstream-drift warning 2026-08-22 12:44:12 +02:00
gitea_network.sh Split three near-miss linux_configuration scripts 2026-08-16 18:38:43 +02:00
kcd2_autorebuild.sh Split three large linux_configuration scripts, defer a fourth 2026-08-16 19:06:16 +02:00
kcd2_expose.sh Split three large linux_configuration scripts, defer a fourth 2026-08-16 19:06:16 +02:00
kcd2_serve.sh Split three large linux_configuration scripts, defer a fourth 2026-08-16 19:06:16 +02:00
local_llm_model.sh Split five more linux_configuration single_use scripts 2026-08-16 18:51:28 +02:00
mobile_service.sh Split two more linux_configuration scripts; revert a third 2026-08-16 18:44:18 +02:00
nc_discover.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
nc_flash.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
nc_image.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
nc_packages.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
nc_php.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
nc_remote_flash.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
nc_remote.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
nc_services.sh Split setup_nextcloud_raspberry.sh 1383 -> 231 2026-08-16 19:37:07 +02:00
pi_flash_exec.sh Split the Pi flasher and the boot-repair test harness 2026-08-16 20:21:44 +02:00
pi_flash_image.sh Split the Pi flasher and the boot-repair test harness 2026-08-16 20:21:44 +02:00
pi_flash_remote.sh Split the Pi flasher and the boot-repair test harness 2026-08-16 20:21:44 +02:00
rpi_nc_ca.sh Split three more linux_configuration giants 2026-08-16 19:43:55 +02:00
rpi_nc_deps.sh Split three more linux_configuration giants 2026-08-16 19:43:55 +02:00
rpi_nc_fixes.sh Split three more linux_configuration giants 2026-08-16 19:43:55 +02:00
rpi_nc_install.sh Split three more linux_configuration giants 2026-08-16 19:43:55 +02:00
rpi_nc_ssl_remote.sh Split three more linux_configuration giants 2026-08-16 19:43:55 +02:00
rpi_nc_ssl.sh Split three more linux_configuration giants 2026-08-16 19:43:55 +02:00
rpi_nc_system.sh Split three more linux_configuration giants 2026-08-16 19:43:55 +02:00
searxng_expose.sh Split setup_searxng.sh 912 -> 184 2026-08-16 19:11:40 +02:00
searxng_limiter.sh Split setup_searxng.sh 912 -> 184 2026-08-16 19:11:40 +02:00
searxng_settings.sh Split setup_searxng.sh 912 -> 184 2026-08-16 19:11:40 +02:00
searxng_stack.sh Split setup_searxng.sh 912 -> 184 2026-08-16 19:11:40 +02:00
searxng_start.sh Split setup_searxng.sh 912 -> 184 2026-08-16 19:11:40 +02:00
searxng_status.sh Split setup_searxng.sh 912 -> 184 2026-08-16 19:11:40 +02:00
syncyomi_expose.sh Split three more linux_configuration feature and fix scripts 2026-08-16 18:48:01 +02:00
syncyomi_stack.sh Split three more linux_configuration feature and fix scripts 2026-08-16 18:48:01 +02:00
unreal_mcp_repo.sh Split five more linux_configuration single_use scripts 2026-08-16 18:51:28 +02:00
website_build.sh Split three more linux_configuration feature and fix scripts 2026-08-16 18:48:01 +02:00
wg_firewall.sh Split three more scripts; make the verifier catch heredoc cuts 2026-08-16 20:16:08 +02:00
wg_keys.sh Split three more scripts; make the verifier catch heredoc cuts 2026-08-16 20:16:08 +02:00
wg_sshd.sh Split three more scripts; make the verifier catch heredoc cuts 2026-08-16 20:16:08 +02:00