tests/test_repositories.py covers schema migrations (idempotent), scan lifecycle, request insert/query/cross-source, grow-only blocklist ledger, unblock, whitelist lookup/replace, and firewall snapshots. 10 tests total. README usage documents the 'python app.py analyze' command.
- deploy.sh: clean-tree guard + git fetch && git pull --ff-only + optional dep reinstall + app.db --migrate + restart. - restart-service.sh: supervisor-agnostic restart (systemd or fallback), waits for an in-flight scan. - check_runtime_git.sh: proves no scan writes git-tracked runtime data. - ids.service: systemd unit template. - tests/test_deployment.py: stdlib unittest invariant tests for the deployment runtime-isolation guarantee.