ci: enforce ruff+black formatting, fix all 50 lint errors, add pre-commit hooks#18
Merged
ci: enforce ruff+black formatting, fix all 50 lint errors, add pre-commit hooks#18
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #11
Enforces
ruff checkandblack --checkacross the entire codebase. All 50 ruff errors fixed, all 113 files pass black formatting. CI lint job already runs withoutcontinue-on-error(was updated in earlier session).Changes
Lint Fixes (50 errors → 0)
logging,Specialty,ErrorCode(TYPE_CHECKING). Fixed bug:memory_service→serviceparameterstate,ttft_ms,start_time,html_lang,logger,span, etc.strict=Falsetozip()callsl→lab/lvin comprehensionsfrom eto re-raisedHTTPExceptionis Trueinstead of== True(1 fix, 1 noqa for SQLAlchemy)set(generator)noqafor intentional non-abstract empty methodConfig Updates
pyproject.toml: Migrated ruff config from deprecated top-level to[tool.ruff.lint]section.pre-commit-config.yaml: New file — Black, Ruff, Bandit, file hygiene hooksFiles Modified (23 total)
src/medex/pyproject.toml).pre-commit-config.yaml)api/__init__.py— import sorting)Bug Found & Fixed
controller.py:622hadself.memory_service = memory_serviceinstead ofself.memory_service = service— the parameterservicewas being ignored, using the instance attribute name as a variable reference (which would fail at runtime). This is a real bug caught by F821.Verification
Pre-commit Setup
pip install pre-commit pre-commit install # Future commits will auto-check formatting