Skip to content

[None][fix] Exclude vulnerable filelock releases - #21071

Merged
yuxianq merged 3 commits into
NVIDIA:mainfrom
yuxianq:filelock-security-fix
Oct 29, 2026
Merged

yuxianq merged 3 commits into
NVIDIA:mainfrom
yuxianq:filelock-security-fix

Conversation

@yuxianq

@yuxianq yuxianq commented Oct 27, 2026 •

Copy link
Copy Markdown
Collaborator

Description

The promotion scan reports vulnerable filelock==4.1.0 on otherwise unrelated PRs. This PR constrains runtime requirements and the scan dependency declaration to exclude the affected releases for CVE-2026-112906, CVE-2026-112914, CVE-2026-112937, and CVE-2026-112940, as reported on PR #19395.

Extract the dependency fix from Tanmay Verma's commit 0296d569 in #21034 into a dedicated PR so it can merge independently and unblock affected PRs.

The version constraints preserve TensorRT-LLM's Python 3.10 minimum while excluding all reported affected versions:

Vulnerabilities Affected versions
CVE-2026-112906, CVE-2026-112914, CVE-2026-112937 >=4.1.0,<4.2.1
CVE-2026-112940 >=3.20.4,<4.2.1
  • Python 3.10: filelock==3.20.3. This release predates all four affected ranges. The patched 4.2.1 release requires Python 3.11+, so Python 3.10 cannot use it. The exact pin prevents the resolver from selecting a newer vulnerable release.
  • Python 3.11+: filelock>=4.2.1. Version 4.2.1 is the first release fixing all four reported CVEs. A minimum version allows subsequent compatible releases.
  • Security-scanning artifacts: filelock==3.20.3. The existing scan generator evaluates markers using a hardcoded Python 3.10 target, then removes the markers before adding dependencies to Poetry. Consequently, the scan manifest selects the Python 3.10 branch even though its project metadata declares >=3.10,<3.13.

security_scanning/poetry.lock is excluded from this PR and remains identical to main. It still records filelock==4.1.0, so it is stale against the updated scan dependency declaration and requires separate regeneration before a scan using that lockfile can reflect the fix. The PR changes only requirements.txt and security_scanning/pyproject.toml.

The existing scan-generation behavior covers the Python 3.10 branch only; scanning both branches would require preserving the markers or generating separate manifests.

Test Coverage

  • Rebased onto main at 94348c4de6eb5526b0743b9e1c365506eb70868c. Before/after patch audit confirms that only the requested lockfile changes were dropped; both dependency declarations and the explanatory comment are preserved.
  • Verified that security_scanning/poetry.lock is byte-for-byte identical to main, runtime requirements are identical to the previous PR head, and all new upstream scan dependencies are retained.
  • Requirement-marker checks for Python 3.10–3.14: passed; exactly one branch selected and vulnerable boundary releases 3.20.4, 4.1.0, and 4.2.0 excluded.
  • TOML parsing, scoped repository pre-commit checks, and git diff --check: passed.
  • poetry check --lock: reports a stale lockfile, as expected with the generated lockfile excluded. Lockfile consistency is not claimed for this revision.

Prior validation of the unchanged runtime constraints resolved wheels for Python 3.10 (3.20.3) and Python 3.11 (4.2.4), and passed cross-process FileLock exclusion/release checks for both versions on Python 3.12. Full TensorRT-LLM/GPU tests were not run because this rebase only changes dependency configuration. CI and the vulnerability scan must be requalified on the updated head.

PR Checklist

  • Description explains the issue, fix, and source PR.
  • Follows the coding guidelines; commit is DCO signed.
  • Dependency declarations validated; the excluded lockfile and its consistency limitation are documented.
  • No API, architecture, or ownership changes; no new dependencies introduced.
  • Please check this after reviewing the above items as appropriate for this PR.

GitHub Bot Help

To see available CI bot commands, comment /bot help.

Dev Engineer Review

  • requirements.txt selects filelock==3.20.3 for Python versions below 3.11 and filelock>=4.2.1 for Python 3.11 and later. security_scanning/pyproject.toml pins filelock==3.20.3.
  • security_scanning/poetry.lock is unchanged and still records filelock==4.1.0. The scanning dependency declaration and lockfile are therefore inconsistent; regenerate the lockfile before relying on scans that use it.
  • Reported checks cover marker selection, TOML parsing, scoped pre-commit checks, and git diff --check. poetry check --lock reports a stale lockfile. Full TensorRT-LLM/GPU tests were not run, and CI and vulnerability-scan qualification remain pending. Review severity counts are unavailable.

QA Engineer Review

No test changes.

Per-File QA Perspective

  • requirements.txt: Verify dependency resolution on Python 3.10 and Python 3.11+; the selected filelock constraint changes by Python version.
  • security_scanning/pyproject.toml: Verify scan dependency resolution. Its filelock==3.20.3 declaration does not match the unchanged security_scanning/poetry.lock entry.

@yuxianq
yuxianq requested review from a team as code owners October 27, 2026 03:31

yuxianq commented Oct 27, 2026

Copy link
Copy Markdown
Collaborator Author

/bot run

@coderabbitai

coderabbitai Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Important

Review skipped

Review was skipped as selected files did not have any reviewable changes.

Run configuration
Commits

Reviewing files that changed from the base of the PR and between aa0cb7d and a48024d.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review.

Recent review info
Run configuration
Commits

Reviewing files that changed from the base of the PR and between 21eb9be and aa0cb7d.

Files selected for processing: 1
  • security_scanning/pyproject.toml

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review.

Walkthrough

The changes add Python-version-specific filelock requirements to requirements.txt and pin filelock to version 3.20.3 in the security scanning project dependencies.

Changes

Filelock dependency constraints

Layer / File(s) Summary
Update filelock dependency declarations
requirements.txt, security_scanning/pyproject.toml
requirements.txt selects filelock==3.20.3 below Python 3.11 and filelock>=4.2.1 for Python 3.11 and later. The security scanning dependencies pin filelock to 3.20.3.

Priority: Normal

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Bug fix

Possibly related PRs

  • NVIDIA/TensorRT-LLM#21034: This PR includes the same filelock constraints in requirements.txt and security_scanning/pyproject.toml and addresses the same dependency behavior.
Merge Risk: Minimal · previous review aa0cb

This change excludes vulnerable filelock releases through version constraints in the root requirements and the security-scanning project. The lockfile is refreshed separately by the repository's automated process. No merge-blocking risk remains beyond the CI and scan requalification the author already notes.

Pre-merge checks: Passed 5
Check name Status Explanation
Title check Passed The title follows the required format and clearly states that vulnerable filelock releases are excluded.
Description check Passed The description explains the issue, solution, affected versions, implementation details, test coverage, known lockfile limitation, and checklist status.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Documentation-only edits and deletions within survi…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)

Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80783 [ run ] triggered by Bot. Commit: 1498cbc Link to invocation

yuxianq commented Oct 27, 2026

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80785 [ run ] triggered by Bot. Commit: 21eb9be Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80783 [ run ] completed with state ABORTED. Commit: 1498cbc

Link to invocation

Signed-off-by: Yuxian Qiu <142763828+yuxianq@users.noreply.github.com>
Signed-off-by: Yuxian Qiu <142763828+yuxianq@users.noreply.github.com>
@yuxianq
yuxianq force-pushed the filelock-security-fix branch from 21eb9be to aa0cb7d Compare October 27, 2026 04:40

yuxianq commented Oct 27, 2026

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80803 [ run ] triggered by Bot. Commit: aa0cb7d Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80785 [ run ] completed with state ABORTED. Commit: 21eb9be

Link to invocation

@github-actions

Copy link
Copy Markdown

Automatically added "ci: full pre-merge approved" because this PR has satisfied the required GitHub review approvals. Unresolved review conversations and other required checks remain independent merge requirements.

@yuxianq
yuxianq enabled auto-merge (squash) October 27, 2026 10:26
@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80803 [ run ] completed with state SUCCESS. Commit: aa0cb7d
/LLM/main/L0_MergeRequest_PR pipeline #66538 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@tburt-nv

Copy link
Copy Markdown
Collaborator

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80915 [ run ] triggered by Bot. Commit: aa0cb7d Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #80915 [ run ] completed with state SUCCESS. Commit: aa0cb7d
/LLM/main/L0_MergeRequest_PR pipeline #66639 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@yuxianq

yuxianq commented Oct 28, 2026

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81031 [ run ] triggered by Bot. Commit: aa0cb7d Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81031 [ run ] completed with state FAILURE. Commit: aa0cb7d
/LLM/main/L0_MergeRequest_PR pipeline #66747 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@yuxianq

yuxianq commented Oct 28, 2026

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81165 [ run ] triggered by Bot. Commit: a48024d Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81165 [ run ] completed with state SUCCESS. Commit: a48024d
/LLM/main/L0_MergeRequest_PR pipeline #66860 completed with status: 'FAILURE'

CI Report

⚠️ Resource Maintenance — Test Coverage Reduced:

Resource maintenance in LLM/main/L0_Test-x86_64-Single-GPU #9099: L40S-PyTorch-2 is temporarily paused due to Kubernetes agent provisioning and node issues.
Affected stages:
L40S-PyTorch-2

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@yuxianq

yuxianq commented Oct 29, 2026

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81283 [ run ] triggered by Bot. Commit: a48024d Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81283 [ run ] completed with state FAILURE. Commit: a48024d
/LLM/main/L0_MergeRequest_PR pipeline #66972 completed with status: 'FAILURE'

CI Report

⚠️ Resource Maintenance — Test Coverage Reduced:

Resource maintenance in LLM/main/L0_Test-x86_64-Single-GPU #9623: L40S-PyTorch-2 is temporarily paused due to Kubernetes agent provisioning and node issues.
Affected stages:
L40S-PyTorch-2

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@yuxianq

yuxianq commented Oct 29, 2026

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81348 [ run ] triggered by Bot. Commit: a48024d Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #81348 [ run ] completed with state SUCCESS. Commit: a48024d
/LLM/main/L0_MergeRequest_PR pipeline #67031 completed with status: 'SUCCESS'

CI Report

⚠️ Resource Maintenance — Test Coverage Reduced:

Resource maintenance in LLM/main/L0_Test-x86_64-Single-GPU #4162: L40S-PyTorch-2 is temporarily paused due to Kubernetes agent provisioning and node issues.
Affected stages:
L40S-PyTorch-2

Link to invocation

@yuxianq
yuxianq merged commit 93d31b4 into NVIDIA:main Oct 29, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants