Skip to content

Bring flepimop2-op_system adapter under mypy --strict #60

@jc-macdonald

Description

@jc-macdonald

Summary

Remove the flepimop2-op_system/ exclusion from pyproject.toml mypy config and fix all resulting strict-mode errors. Add a py.typed marker to the provider package.

Problem

pyproject.toml explicitly excludes the adapter:

[tool.mypy]
strict = true
exclude = ["examples/", "flepimop2-op_system/"]

This means type errors in the provider go undetected. The op_engine provider just went through this same cleanup (PR #51, op_engine commit 25d3dbc) — StateChangeEnum vs string literals, dict vs Pydantic model constructors, narrowing type: ignore annotations.

The op_system adapter has the same patterns:

  • _AxesMeta is a bare NamedTuple (could be typed more strictly)
  • Untyped getattr calls
  • No py.typed marker for downstream type checking

Scope

  • Add flepimop2-op_system/src/flepimop2/system/op_system/py.typed
  • Remove "flepimop2-op_system/" from mypy exclude
  • Fix all mypy --strict errors that surface
  • Narrow any remaining type: ignore to specific error codes

Related

Metadata

Metadata

Assignees

Labels

providerflepimop2 provider/connector packagetestingTest infrastructure and coverage

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions