Problem
PR #72 / issue #68 removed ignore_errors for localci.core.* and localci.utils.*, but eight CLI modules remain suppressed in cli/pyproject.toml:
localci.cli.analyze
localci.cli.config
localci.cli.list
localci.cli.logs
localci.cli.run.click_options
localci.cli.run.patcher
localci.cli.run.run_flow
localci.cli.status
CI and pre-commit run mypy localci/ in strict mode, but those CLI modules still ship with zero type enforcement. This was intentionally deferred from #68 to keep that PR reviewable.
Acceptance Criteria
Implementation Notes
- Primary file:
cli/pyproject.toml — remove the [[tool.mypy.overrides]] block for CLI modules.
- Expected error sites (verify against current source):
click_options.py (click.pass_context decorator typing), status.py (_safe_float / dict generics), config.py (YAML dict typing), logs.py (return type), patcher.py (PriorityJobQueue param), analyze.py / list.py (WorkflowError import path), run_flow.py (exception imports, registry_path, matrix filter dicts), container.py (resolve_cache_paths_fn return type).
- Import
WorkflowError, ActNotFoundError, and DockerNotAvailableError from localci.errors, not re-exported attributes on localci.core.*.
- Verify with
cd cli && mypy localci/ and pre-commit run -a.
References
- Follow-up to #68 / #72
cli/pyproject.toml, .pre-commit-config.yaml, .github/workflows/ci.yml
Problem
PR #72 / issue #68 removed
ignore_errorsforlocalci.core.*andlocalci.utils.*, but eight CLI modules remain suppressed incli/pyproject.toml:localci.cli.analyzelocalci.cli.configlocalci.cli.listlocalci.cli.logslocalci.cli.run.click_optionslocalci.cli.run.patcherlocalci.cli.run.run_flowlocalci.cli.statusCI and pre-commit run
mypy localci/in strict mode, but those CLI modules still ship with zero type enforcement. This was intentionally deferred from #68 to keep that PR reviewable.Acceptance Criteria
localci.cli.*modules are removed from theignore_errorsoverride list incli/pyproject.toml(override block deleted entirely if empty)cd cli && mypy localci/passes understrict = truewith zero errors across all packageswarn_unused_ignores = truestays green — no redundant# type: ignorecommentsImplementation Notes
cli/pyproject.toml— remove the[[tool.mypy.overrides]]block for CLI modules.click_options.py(click.pass_contextdecorator typing),status.py(_safe_float/dictgenerics),config.py(YAMLdicttyping),logs.py(return type),patcher.py(PriorityJobQueueparam),analyze.py/list.py(WorkflowErrorimport path),run_flow.py(exception imports,registry_path, matrix filter dicts),container.py(resolve_cache_paths_fnreturn type).WorkflowError,ActNotFoundError, andDockerNotAvailableErrorfromlocalci.errors, not re-exported attributes onlocalci.core.*.cd cli && mypy localci/andpre-commit run -a.References
cli/pyproject.toml,.pre-commit-config.yaml,.github/workflows/ci.yml