Problem (measured this session). Code QC does not reach all Python:
ruff check . excludes docs/, large/, notebooks/ (see ruff.toml), but real .py scripts live under docs/ and escape linting entirely:
docs/metpo/scripts/definition_work/fetch_source_metadata.py
docs/metpo/scripts/definition_work/merge_sparql_with_metadata.py
docs/n4l/transformation_code/regex_parse_n4l_temperatures.py
mypy runs on metpo/ only (not tests/ or docs/), and is continue-on-error: true (non-blocking).
Why it slips: the docs exclude was meant for documentation, but scripts were dropped into it; nothing type-checks tests.
Proposed fix. Don't let code live in doc/data dirs: move those scripts into metpo/ (so ruff sees them), or narrow the exclude to docs/**/*.md instead of all of docs/. Extend mypy to tests/. (Making mypy blocking is tracked in #454.)
Note: the n4l script leaves with the N4L cleanup and the definition_work ones are tied to the chromadb definition tooling being removed in #498, so some self-resolve with the slimming. Related: #309, #454.
Problem (measured this session). Code QC does not reach all Python:
ruff check .excludesdocs/,large/,notebooks/(seeruff.toml), but real.pyscripts live underdocs/and escape linting entirely:docs/metpo/scripts/definition_work/fetch_source_metadata.pydocs/metpo/scripts/definition_work/merge_sparql_with_metadata.pydocs/n4l/transformation_code/regex_parse_n4l_temperatures.pymypyruns onmetpo/only (nottests/ordocs/), and iscontinue-on-error: true(non-blocking).Why it slips: the
docsexclude was meant for documentation, but scripts were dropped into it; nothing type-checks tests.Proposed fix. Don't let code live in doc/data dirs: move those scripts into
metpo/(so ruff sees them), or narrow the exclude todocs/**/*.mdinstead of all ofdocs/. Extend mypy totests/. (Making mypy blocking is tracked in #454.)Note: the
n4lscript leaves with the N4L cleanup and thedefinition_workones are tied to the chromadb definition tooling being removed in #498, so some self-resolve with the slimming. Related: #309, #454.