You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
chore: remove stale validate_coverage.py; decide whether mypy gates CI #157
Two dev-tooling leftovers that no longer match how the repo works.
1. src/utils/validate_coverage.py is stale and crashes
Stale: it expects test files the repo no longer has (test_tools_modeling.py, test_adapters.py and others). Tests now mirror src/, and tests/integration/test_test_layout.py enforces that.
Crashes: on Windows it fails at startup: printing an emoji raises UnicodeEncodeError with the default cp1252 console encoding.
Unused: nothing references it, not CI, not dev-commands.ps1, not the docs.
Proposed: delete it. Coverage is already enforced by pytest-cov (100%) and the layout by test_test_layout.py. If anything in it is still wanted, move that into those.
2. mypy is configured but not enforced
pyproject.toml and dev-commands.ps1 configure mypy, but CI doesn't run it. It reports errors on main: 40 in adapters/solidworks/documentation.py alone. Most are lambdas passed to _attempt ("Cannot infer type of lambda") and Any returns. New code adds more of the same, and nobody notices.
Proposed: decide whether mypy should gate:
If yes: fix the existing errors module by module. Typing _attempt generically (def _attempt[T](self, op: Callable[[], T], default: T) -> T) should clear most of them. Then add a CI step.
If no: remove the mypy config, so editors stop flagging errors nobody will fix.
Acceptance
validate_coverage.py is removed, or rewritten so it runs and matches the current layout.
mypy either gates in CI with zero errors, or is removed from the config.
Activity