testsAndMisc/docs/superpowers/evidence
Krzysztof kuhy Rudnicki 66c4698194
Some checks are pending
Pre-commit checks / pre-commit (push) Waiting to run
feat: migrate hosts-guard and shutdown-schedule-guard to guard-lib
Replaces the bespoke chattr/bind-mount/systemd-watcher implementations for
/etc/hosts and /etc/shutdown-schedule.conf with the new shared guard-lib
(~/guard-lib, guardctl), so screen-locker and steam-backlog-enforcer's new
block-gaming feature stop maintaining parallel copies of the same
tamper-resistance mechanism.

- pacman_wrapper.sh: pre/post hook fallbacks now call guard-lib's generic
  unlock-all/relock-all scripts (covers every registered guard instance,
  not just /etc/hosts)
- setup_midnight_shutdown.sh: installs/updates its guarded config via
  guardctl file-guard instead of hand-rolled chattr + systemd unit
  generation; the schedule ratchet logic (block-if-more-lenient) stays
  bespoke since guardctl's generic unlock can't represent it
- new hosts/guard/plugins/nsswitch-plugin.sh, resolved-plugin.sh

Also fixes, at user's request even though pre-existing: 3 shellcheck
SC2329 false positives in pacman_wrapper.sh (functions invoked indirectly
by name, not actually dead) and 1 SC2001 style warning (echo|sed VM-name
extraction replaced with parameter expansion, verified equivalent output).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AFNiYQQgSLAkiBXswyimPq
2026-07-04 11:54:08 +02:00
..
agent-automation-bootstrap.json style(prettier): apply markdown/json formatting updates 2026-05-07 22:08:00 +02:00
archive-unmaintained-2026-01.json chore: archive 41 unmaintained directories to testsAndMisc-archive 2026-05-14 20:21:05 +02:00
bucket-catch-2026-06-27.json Add bucket_catch: osu!catch browser game with 100% frontend test coverage 2026-06-27 12:21:35 +02:00
ci-pipeline-and-lint-backlog-fix-2026-06-22.json Fix CI pipeline and clear the lint backlog it had been hiding 2026-06-22 07:52:44 +02:00
cleanup-meta-folder-2026-05.json chore: consolidate root configs into meta/, drop unused C dir + split/pdfCentered/geo_data 2026-05-14 20:40:12 +02:00
diet-guard-app-focus-whitelist-2026-06-22.json style: prettier format pre-existing evidence JSON 2026-06-27 12:25:13 +02:00
diet-guard-gatelock-migration-2026-06-21.json Migrate diet_guard to the shared gatelock backend 2026-06-21 18:16:45 +02:00
diet-guard-meal-and-trigger-fix-2026-06-10.json feat(diet_guard): add meal-logging screen-lock gate with trigger fix 2026-06-10 22:32:39 +02:00
diet-guard-test-isolation-fix-2026-06-22.json Fix non-hermetic diet_guard gate tests depending on a real X display 2026-06-22 08:12:02 +02:00
digital-wellbeing-bypass-hardening-2026-05.json security: harden digital-wellbeing bypass vectors 2026-05-16 15:41:40 +02:00
extract-inline-python-2026-06-06.json refactor: extract all inline Python from shell scripts into proper .py files 2026-06-06 10:31:48 +02:00
file-length-split-2026-06-14.json style: apply prettier formatting to evidence JSON and dwm/gaming READMEs 2026-06-14 07:22:04 +02:00
fix-install-failures.json style: prettier formatting for evidence JSON files 2026-05-16 15:46:33 +02:00
fix-midnight-shutdown-heredoc-2026-06-22.json fix: shutdown timer crashing on every fire due to heredoc escaping bug 2026-06-22 07:09:55 +02:00
guard-lib-migration-2026-07-04.json feat: migrate hosts-guard and shutdown-schedule-guard to guard-lib 2026-07-04 11:54:08 +02:00
idle-inhibit-zero-fork-20260604.json perf(idle-off): replace controller-watch fork storm with a single systemd-inhibit 2026-06-04 18:14:07 +02:00
install-core-system-cleanup.json Add install_core_system.sh; remove pc_startup and thesis_tracker 2026-05-15 01:13:28 +02:00
linux-config-cleanup-2026-05.json style: prettier formatting fixes 2026-05-15 01:15:52 +02:00
linux-config-polling-hardening-2026-05-14.json fix(linux_configuration): harden polling/runtime scripts and add tests 2026-05-14 19:55:42 +02:00
linux-config-runtime-hardening-2026-05-08.json Harden runtime script deployment and enforce installer safety 2026-05-08 17:44:22 +02:00
linux-config-scripts-split-2026-05.json refactor(linux_configuration/scripts): split all scripts into single_use/ and periodic_background/ 2026-05-15 00:32:35 +02:00
morning-routine-unified-2026-05-25.json morning_routine: unified alarm+lock orchestrator, fix alarm audio/reliability 2026-05-25 18:55:27 +02:00
move-install-core-system.json style: prettier formatting for evidence JSON files 2026-05-16 15:46:33 +02:00
pc-polling-runtime-validation-2026-05-10.json Optimize polling/runtime scripts, add regressions, and sync verification artifacts 2026-05-10 02:58:11 +02:00
phone-blackview-recents-fix-2026-05-31.json fix(phone): restore Blackview launcher for recents gesture 2026-05-31 16:27:08 +02:00
phone-curfew-demo-net-stopgap-2026-06-13.json feat(phone_focus_mode): add on-demand demo curfew + netd-resistant net stopgap 2026-06-13 22:01:32 +02:00
phone-focus-mode-fresh-install-2026-05-31.json feat(phone): automate BL-9000 fresh-phone recovery after factory reset 2026-05-31 16:22:49 +02:00
phone-focus-mode-netd-cache-fix-2026-05.json phone_focus_mode: fix YouTube DNS blocking via netd cache restart 2026-05-22 15:58:36 +02:00
phone-night-curfew-2026-06-13.json feat(phone_focus_mode): enable curfew per-UID network allow-list; build companion button 2026-06-13 16:58:49 +02:00
pre-commit-default-stages-2026-05-14.json perf(pre-commit): default_stages=[pre-commit] so push only runs pytest+prettier 2026-05-14 21:21:40 +02:00
pre-commit-prettier-isolated-scope-2026-05-14.json perf(pre-commit): run prettier in its own systemd-run scope 2026-05-14 21:12:32 +02:00
pre-commit-prettier-scope-fix-2026-05-14.json perf(pre-commit): tighten prettier scope to fit in pre-push cgroup 2026-05-14 21:09:14 +02:00
pre-commit-pytest-batch-2026-05-14.json perf(pre-commit): batch+parallelize pytest on commit; kill 15s sleeps in steam_backlog_enforcer tests 2026-05-14 21:52:52 +02:00
pre-commit-pytest-scope-fix-2026-05-14.json fix(pre-commit): skip deleted/missing python_pkg subpackages 2026-05-14 21:05:49 +02:00
pre-commit-stage-rebalance-2026-05-14.json perf(pre-commit): move mypy/pylint/bandit from pre-push to pre-commit 2026-05-14 21:20:21 +02:00
protondb-coverage-fix.json fix: remove dead code in unplayable_reason; add coverage for playable path 2026-05-08 20:35:55 +02:00
protondb-gold-silver-fix.json fix: accept ProtonDB gold+silver combinations; add explicit skip reasons 2026-05-08 20:31:16 +02:00
pylint10-r0801-schema-validation-2026-06.json feat: split oversized modules for 500-line limit, fix kasa coverage gap 2026-06-14 07:19:37 +02:00
pytest-xdist-coverage-flake-fix-2026-06-22.json Drop -n 4 xdist parallelism from the pytest-coverage pre-commit hook 2026-06-22 08:29:54 +02:00
remove-diet-guard-2026-06-22.json Remove diet_guard: extracted to its own repo (kuhyx/diet-guard) 2026-06-22 12:22:41 +02:00
remove-screen-locker-2026-05-28.json chore: remove screen_locker — extracted to own repo 2026-05-28 07:44:14 +02:00
remove-screen-replay-2026-06-06.json remove: uninstall unused ffmpeg screen-replay feature 2026-06-06 10:44:36 +02:00
remove-steam-backlog-enforcer-2026-05-28.json chore: remove steam_backlog_enforcer — extracted to own repo 2026-05-28 07:27:32 +02:00
remove-wake-alarm-2026-06-22.json Remove wake_alarm (extracted to kuhyx/wake-alarm) and fix the orchestrator 2026-06-22 12:47:06 +02:00
root-cleanup-2026-05-14.json chore: spring-clean repo root (move docs, relocate batch3 script, drop stale outputs) 2026-05-14 20:01:09 +02:00
run-sh-wrapper-smoke.json style(prettier): apply markdown/json formatting updates 2026-05-07 22:08:00 +02:00
screen-locker-scheduled-skip-2026-05.json screen_locker: add scheduled-skip date mechanism + hibernate on alarm nights 2026-05-22 16:00:15 +02:00
screen-locker-sick-tracker-2026-05-14.json feat(screen-locker): add sick-day tracker and commitment debt flow 2026-05-14 19:52:15 +02:00
screen-locker-weekly-check-2026-05-28.json screen_locker: add weekly check feature with UI integration 2026-05-28 07:04:18 +02:00
self-hosted-gitea-2026-07-04.json Add self-hosted Gitea deployment, mirroring all GitHub repos publicly 2026-07-04 07:45:00 +02:00
setup-midnight-shutdown-violation-checks-disabled.json fix(digital-wellbeing): disable schedule leniency violation checks 2026-05-07 22:06:34 +02:00
setup-wireguard-ssh-2026-06-19.json feat: add self-hosted WireGuard+SSH remote access from Android, across networks 2026-06-21 20:07:13 +02:00
stats-hltb-fixes-2026-05-28.json steam_backlog_enforcer: fix stats command — show real Rush/Leisure/Worst data 2026-05-28 07:02:48 +02:00
steam-backlog-cache-behavior-fix-2026-05-08.json steam_backlog_enforcer: reduce repeated cache refetches 2026-05-08 15:13:25 +02:00
steam-backlog-done-install-retry-2026-05-08.json steam_backlog_enforcer: retry install after library hide restart 2026-05-08 14:56:46 +02:00
steam-backlog-finished-only-next-pick-2026-05.json steam_backlog_enforcer: only prompt next pick after game is finished 2026-05-23 21:19:44 +02:00
steam-backlog-module-split-2026-05.json Split modules, fix tests, fix pre-commit batching 2026-05-22 22:48:28 +02:00
steam-backlog-protected-ids-2026-05-14.json feat(steam-backlog): protect four additional Steam app IDs 2026-05-14 19:58:40 +02:00
steam-backlog-whitelist-hardening-2026-05.json feat(steam_backlog_enforcer): harden whitelist against circumvention 2026-05-17 20:44:05 +02:00
steam-library-hide-fix-2026-05-17.json steam_backlog_enforcer: fix library_hider crash on invalid AppIDs + improve HLTB hour extraction 2026-05-22 15:59:18 +02:00
sync-tests-fix-coverage-2026-05.json fix: sync test paths, drop stale assertions, fix coverage gap 2026-05-16 15:46:02 +02:00
template.json style(prettier): apply markdown/json formatting updates 2026-05-07 22:08:00 +02:00
usage-report-hz-cpu-fix-20260604.json fix(usage_report): stop charging atop's HZ field as CPU; bundle since-last-report mode 2026-06-04 18:13:47 +02:00
vendor-agent-skills-import.json chore(third_party): vendor agent-skills snapshot 2026-05-07 22:06:00 +02:00
wake-alarm-gatelock-migration-2026-06-22.json Migrate wake_alarm to the shared gatelock backend 2026-06-22 07:33:49 +02:00
wake-alarm-hibernate-2026-05.json wake_alarm + midnight_shutdown: hibernate on alarm nights instead of poweroff 2026-05-22 16:01:04 +02:00
wake-alarm-loudness-typeable-2026-05.json wake_alarm: louder + typeable + multi-fan 2026-05-24 16:20:34 +02:00
wake-alarm-plug-fans-warnings-2026-05.json wake_alarm: Tapo P110 plug control, fan ramp via sudo, loud warnings 2026-05-23 19:51:26 +02:00
wake-alarm-refactor-2026-05-30.json style: prettier format CLAUDE.md and evidence JSON 2026-05-30 22:13:54 +02:00
wake-alarm-restore-display-test-gap-2026-06-22.json Fix the real cause of the wake_alarm CI coverage gap 2026-06-22 09:14:29 +02:00