Skip to content

Follow-up: type error fix after PR#72 #76

Description

@bradjin8

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

  • All eight localci.cli.* modules are removed from the ignore_errors override list in cli/pyproject.toml (override block deleted entirely if empty)
  • cd cli && mypy localci/ passes under strict = true with zero errors across all packages
  • warn_unused_ignores = true stays green — no redundant # type: ignore comments
  • No runtime behavior changes (typing/annotation fixes only)
  • Tests pass in CI
  • PR approved by at least 1 reviewer

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions