Architecture — Pure Hexagonal/SOLID
- Settings DI —
Settingsreceives platform path resolver via constructor. No module-level singleton, no hardcoded path imports - Path resolution through adapters —
conf.pyno longer imports path functions frompaths.py. All resolution throughPlatformSetupABC methods - Import binding fixed — all
settingsaccess uses module reference, safe acrossinit_settingsre-binding - Pure tests — no patches on path constants. DI via
init_settings(mock_resolver). 5241 tests, 0 failures