mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-08 11:46:35 +00:00
Adds three more rule families to the strict ruleset:
- ``TID`` — flake8-tidy-imports (banned modules, banned relative imports)
- ``LOG`` — flake8-logging (proper module-scoped loggers)
- ``G`` — flake8-logging-format (lazy ``%``-format, not f-strings, in
``logger.<level>(...)`` calls)
Fixes
=====
TID252 (1): ``from ...meta.runtime import detect_runtime`` →
``from cli.meta.runtime import detect_runtime`` in
``cli/deploy/development/init.py``. Absolute imports survive package
reorgs that would silently break a parent-relative dotted import.
LOG015 (7) + G004 (3): replaced root-logger calls
(``logging.<level>(...)``) with module-scoped
``logger = logging.getLogger(__name__)`` so log records carry the
origin module, and switched f-strings inside those calls to
``%``-format placeholders so the formatting cost is paid only when
the level is enabled. Touched:
- ``cli/fix/move_unnecessary_dependencies/yaml_io.py``
- ``tests/integration/jinja/test_variable_definitions.py``
- ``tests/integration/jinja/test_variable_usage.py``
- ``utils/roles/dependency_resolver.py``
Verification
============
- ``ruff check .`` → All checks passed
- 1621 unit tests → all pass
- Suppression-related lints (project-root-import, no-direct-yaml-calls,
noqa-only-ruff-codes) → green
5 files changed. The branch now satisfies 20 ruff rule families
end-to-end.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>