nas-burnin/scripts
Brandon Walter cd92a4d3c8
Some checks are pending
Security scan / pip-audit (push) Waiting to run
Security scan / bandit (push) Waiting to run
Security scan / gitleaks (push) Waiting to run
Security scan / mypy (push) Waiting to run
chore: dev-experience + mypy noise cleanup
- scripts/run-tests.sh — one-shot wrapper for the tar+docker-cp dance
  that was being done by hand every test run. Optional pattern arg
  for a single module. Cleans tests/ out of the container after.

- scripts/security-scan.sh — mount the deploy app/ at /opt/app/app
  (not /src) so internal `from . import X` resolves through the
  `app` package and stops producing spurious "Module 'src' has no
  attribute X" errors that masked real findings.

- app/truenas.py — explicit `raise RuntimeError("unreachable")` after
  the retry loop. Functionally a no-op (loop always returns or
  re-raises), but makes the post-loop control flow obvious to
  readers and silences the mypy missing-return false positive.

mypy stays informational. Down to 14 real findings after these
fixes — promoting to gating still needs settings_store + retention
typing work, which is its own pass.
2026-05-03 21:11:23 -07:00
..
regenerate-lockfile.sh deps: pin transitive dependencies via lockfile (1.0.0-25) 2026-05-02 17:15:02 -04:00
run-tests.sh chore: dev-experience + mypy noise cleanup 2026-05-03 21:11:23 -07:00
security-scan.service feat: daily security scan — pip-audit + bandit + gitleaks (1.0.0-24) 2026-05-02 17:07:22 -04:00
security-scan.sh chore: dev-experience + mypy noise cleanup 2026-05-03 21:11:23 -07:00
security-scan.timer feat: daily security scan — pip-audit + bandit + gitleaks (1.0.0-24) 2026-05-02 17:07:22 -04:00