[None][chore] Introduce flashinfer-upgrade skill for automated version bumps#12987
Conversation
📝 WalkthroughWalkthroughA new skill document is added that defines an end-to-end workflow for upgrading the Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes 🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
.claude/skills/flashinfer-upgrade/SKILL.md (1)
139-140: Use canonical PEP 508 git requirement syntaxLine 139 mixes modern direct reference syntax with legacy
#egg=. The egg fragment is deprecated in favor of the direct reference form, which allows pip to infer the package name automatically.Suggested change
- `flashinfer-python @ git+https://github.com/flashinfer-ai/flashinfer.git@TAG#egg=flashinfer-python` + `flashinfer-python @ git+https://github.com/flashinfer-ai/flashinfer.git@TAG`🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.claude/skills/flashinfer-upgrade/SKILL.md around lines 139 - 140, Replace the legacy egg fragment usage in the requirement string `flashinfer-python @ git+https://github.com/flashinfer-ai/flashinfer.git@TAG#egg=flashinfer-python` with canonical PEP 508 direct reference syntax by removing the `#egg=` fragment (e.g. `flashinfer-python @ git+https://github.com/flashinfer-ai/flashinfer.git@TAG`) and update the surrounding text to ask the user whether they prefer a PyPI pin or a git-based pin so the README uses the chosen canonical form.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.claude/skills/flashinfer-upgrade/SKILL.md:
- Around line 85-87: The fenced code blocks in SKILL.md lack language tags
causing markdownlint MD040 failures; update the backtick fences around the
blocks containing "grep flashinfer-python requirements.txt" and the pytest
commands (the blocks that include "pytest tests/unittest/_torch/flashinfer/ -v"
and "pytest tests/unittest/_torch/attention/test_flashinfer_attention.py -v") to
include a language (e.g., bash) immediately after the opening ``` so each block
starts with ```bash; ensure you apply the same change to the other occurrence
referenced (lines ~165-168) so all fenced blocks declare a language.
- Around line 177-182: Replace the placeholder text "git stash -- <modified
files>" with a concrete, executable stash command so the step can run in
automation: use a git stash push invocation that includes an explicit message
and the target file paths (i.e., the -- <files> form) and keep the rest of the
flow (checkout main, pull --rebase, create branch, stash pop) unchanged so the
sequence is script-safe and unambiguous.
- Around line 111-131: The instructions for updating
security_scanning/poetry.lock miss regenerating the lockfile metadata hash;
after replacing the `files = [...]` block and updating any
`[package.dependencies]` for `flashinfer-python` (and ensuring pyproject.toml
reflects the same), run `poetry lock --no-update` from the security_scanning/
directory to refresh the `metadata.content-hash` without changing package
versions, or instead use `poetry add flashinfer-python@NEW_VERSION` to let
Poetry update both pyproject.toml and poetry.lock and regenerate the hash
automatically.
---
Nitpick comments:
In @.claude/skills/flashinfer-upgrade/SKILL.md:
- Around line 139-140: Replace the legacy egg fragment usage in the requirement
string `flashinfer-python @
git+https://github.com/flashinfer-ai/flashinfer.git@TAG#egg=flashinfer-python`
with canonical PEP 508 direct reference syntax by removing the `#egg=` fragment
(e.g. `flashinfer-python @
git+https://github.com/flashinfer-ai/flashinfer.git@TAG`) and update the
surrounding text to ask the user whether they prefer a PyPI pin or a git-based
pin so the README uses the chosen canonical form.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 0894a042-956b-41d9-af37-781e568941ec
📒 Files selected for processing (1)
.claude/skills/flashinfer-upgrade/SKILL.md
f19e660 to
7bfcfc8
Compare
…nfer-python version bumps Add a skill that automates upgrading the flashinfer-python dependency across TensorRT-LLM. It fetches available releases from GitHub, lets the user choose between stable and nightly versions, updates all pinned version references, and creates a PR via the GitHub API. Signed-off-by: Yihan Wang <yihwang@nvidia.com>
7bfcfc8 to
b2df6f2
Compare
- Add language tags to bare fenced code blocks (MD040) - Add poetry lock --no-update guidance for metadata.content-hash regeneration - Replace placeholder git stash command with concrete file paths Signed-off-by: Yihan Wang <yihwang@nvidia.com>
Add Step 0a to resolve GITHUB_USERNAME via multiple methods: 1. Query GitHub API using USE_GH_TOKEN (/user endpoint) 2. Extract from fork remote URL 3. Check GITHUB_USERNAME env var 4. Ask user via AskUserQuestion as fallback Signed-off-by: Yihan Wang <yihwang@nvidia.com>
|
@kaiyux do we have CI for skills? Any guidelines on how to contribute a skill? Thanks. |
|
/bot run --disable-fail-fast |
|
PR_Github #43162 [ run ] triggered by Bot. Commit: |
|
PR_Github #43162 [ run ] completed with state
|
|
/bot run --disable-fail-fast |
|
PR_Github #43346 [ run ] triggered by Bot. Commit: |
|
PR_Github #43346 [ run ] completed with state
|
|
/bot run --disable-fail-fast |
|
PR_Github #43621 [ run ] triggered by Bot. Commit: |
|
PR_Github #43621 [ run ] completed with state
|
|
/bot run --disable-fail-fast |
Replace the fine-grained PAT setup (USE_GH_TOKEN, NVIDIA_GH_TOKEN) and the Git Data API push / urllib PR-creation flow with plain `gh auth status`, `git push`, and `gh pr create`. Per AGENTS.md, `gh` is the project convention for GitHub operations; using it drops ~55 lines of skill prose and removes the need for users to provision and export scoped PATs. Signed-off-by: Yihan Wang <yihwang@nvidia.com>
|
/bot run --disable-fail-fast |
|
PR_Github #44332 [ run ] triggered by Bot. Commit: |
|
PR_Github #44332 [ run ] completed with state
|
|
/bot skip --comment "Only add a skill, no need testing" |
|
PR_Github #45888 [ skip ] triggered by Bot. Commit: |
|
PR_Github #45888 [ skip ] completed with state |
Summary
flashinfer-upgradeskill to.claude/skills/that automates upgrading theflashinfer-pythondependencyUSE_GH_TOKENandNVIDIA_GH_TOKENwith setup instructionsTest plan
/flashinfer-upgradeand verify the interactive workflow runs correctlySummary by CodeRabbit