chore: gate `make test` on format check and sweep accumulated drift
Adds a `format-check` target (ruff format --check, no modifications)
and makes `test` depend on it — catches unformatted changes before
the test suite runs, so agent sessions committing without `make format`
fail loudly instead of accumulating silently.
One-time sweep over 54 files (1134 insertions / 437 deletions) brings
the tree back to a clean baseline. All changes are pure ruff-format
output — no lint fixes, no semantic changes. Drift had built up
because there was no gate: no pre-commit hook and no pre-test check,
only `make ci` (which isn't in the routine loop).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>