Subcategory: Type safety (3→8).
Problem. SubplotSpec is a module-level value used as a type annotation, which mypy rejects as not-valid-as-a-type; and self._server is annotated/initialized as None but assigned a uvicorn.Server.
Files / lines to change:
src/pycharting/data/ingestion.py:34,190,245 — make SubplotSpec a proper alias (TypeAlias / type statement) so it is usable as a type.
src/pycharting/core/lifecycle.py:131,134 — annotate the server attribute as uvicorn.Server | None (initialized to None in __init__).
Done when: make typecheck reports no valid-type / assignment / attr-defined errors in those files.
Evidence: ingestion.py:34: error: Variable "…SubplotSpec" is not valid as a type; lifecycle.py:134: "None" has no attribute "run".
Context: $PR
Subcategory: Type safety (3→8).
Problem.
SubplotSpecis a module-level value used as a type annotation, which mypy rejects as not-valid-as-a-type; andself._serveris annotated/initialized asNonebut assigned auvicorn.Server.Files / lines to change:
src/pycharting/data/ingestion.py:34,190,245— makeSubplotSpeca proper alias (TypeAlias/typestatement) so it is usable as a type.src/pycharting/core/lifecycle.py:131,134— annotate the server attribute asuvicorn.Server | None(initialized toNonein__init__).Done when:
make typecheckreports novalid-type/assignment/attr-definederrors in those files.Evidence:
ingestion.py:34: error: Variable "…SubplotSpec" is not valid as a type;lifecycle.py:134: "None" has no attribute "run".Context: $PR