chore(ci): pin ty version so unrelated PRs don't go red on tooling drift - #120
Merged
Conversation
CI ran `uvx ty check` unpinned, so it pulled whatever ty was newest at run time. Newer ty releases flag pre-existing `# ty: ignore` directives as unused, turning CI red on PRs that changed nothing related (observed: rate_limit.py:90 on one run, tmux.py:673 on another — the flagged set shifts per ty version). Pin to ty@0.0.35 in CI and the pre-push hook so results are deterministic; bump deliberately. Also drops the one currently-unused directive (tmux.py:673) so 0.0.35 is clean. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Problem
CI's backend job runs
uvx ty checkunpinned, so it pulls whatever ty version is newest at run time. Newer ty releases flag pre-existing# ty: ignoredirectives as unused, which turns CI red on PRs that changed nothing related. We saw it flagrate_limit.py:90on one run andtmux.py:673on another — the flagged set literally shifts with each ty release. This was blocking every open PR (andmain).Fix
uvx ty@0.0.35in.github/workflows/ci.ymland the pre-push hook so ty results are deterministic (bump deliberately).tmux.py:673— a redundant# ty: ignoreon asrv.cmd(*args)call that ty handles fine via the*argsunpack, matching the existing_cmd_okprecedent).Verified:
uvx ty@0.0.35 checkclean, ruff clean, 385 backend tests pass.This unblocks #116, #117, #118, #119 once they pick up
main.🤖 Generated with Claude Code