ci: wire ty into lint.yaml as a blocking typecheck job - #315
Open
antejavor wants to merge 1 commit into
Open
Conversation
Closes out #313's last remaining scope item. Added as a second job in the existing lint.yaml (already named "Lint and type check", never actually running one) rather than a new workflow file, and as a separate job rather than more steps on `lint` so ruff's fast feedback isn't gated behind the much heavier full-workspace sync this needs. ty resolves imports through installed packages, unlike ruff's purely syntactic checks -- and cross-package imports span the whole workspace (agent-context-graph optionally imports skills-graph/actions-graph/ sessions-graph), so the job does one `uv sync --all-packages --all-extras` before checking, rather than per-package syncs that would miss those. Pinned `ty==0.0.75`, matching ruff's own exact-pin convention in the same file -- ty is still pre-1.0 and evolves fast; pinning locks in exactly the version #314's fixes were verified against, since CI running a newer, unpinned version could see diagnostics nobody's checked for yet. Verified locally end-to-end as CI will run it: `uv tool install ty==0.0.75`, `uv sync --all-packages --all-extras`, `ty check .` -- all checks passed. Also updates AGENTS.md's Type checking section: drops the "not yet enforced" framing and the now-stale note about lightrag-memgraph's dormant mypy config (removed in #314), and documents the full-sync command CI actually runs.
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 #313.
typecheckjob to.github/workflows/lint.yaml(already named "Lint and type check", never actually running one) — a separate job fromlintso ruff's fast feedback isn't gated behind the much heavier full-workspace synctyneeds.tyresolves imports through installed packages, unlike ruff's purely syntactic checks, and cross-package imports span the whole workspace (agent-context-graphoptionally importsskills-graph/actions-graph/sessions-graph) — so the job runs oneuv sync --all-packages --all-extrasbefore checking, rather than per-package syncs that would produce spurious unresolved-import diagnostics.ty==0.0.75, matchingruff's own exact-pin convention in the same file —tyis still pre-1.0 and evolves fast; pinning locks in the exact version Enforce ty type checking across the workspace #314's fixes were verified against.AGENTS.md's Type checking section: drops the "not yet enforced" framing and the now-stale note aboutlightrag-memgraph's dormantmypyconfig (removed in Enforce ty type checking across the workspace #314), documents the full-sync command CI actually runs.Test plan
uv tool install ty==0.0.75→uv sync --all-packages --all-extras→ty check .→ all checks passed.github/workflows/lint.yamlvalidated as parseable YAML (also passes the repo's own pre-commitcheck-yamlhook)