Skip to content

fix(security): bump yt-dlp, setuptools, torch to patched releases - #1033

Draft
seonghobae wants to merge 11 commits into
developfrom
fix/python-dep-cves-ytdlp-setuptools-torch
Draft

fix(security): bump yt-dlp, setuptools, torch to patched releases#1033
seonghobae wants to merge 11 commits into
developfrom
fix/python-dep-cves-ytdlp-setuptools-torch

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Python dependency security owner

Repairs the BandScope analysis-engine security baseline without treating an elective scientific-runtime upgrade as ordinary dependency churn.

  • setuptools is locked to 84.0.0; the repository's recorded floor for GHSA-h35f-9h28-mq5c is >=83.0.0.
  • torch is locked to 2.13.0; the repository's recorded advisory boundary has <=2.12.1 affected. Torch remains transitive through Demucs on admitted platforms.
  • yt-dlp is advanced to 2026.8.19 as remote-media hardening; the documented advisory minimum is kept distinct from this forward version.
  • The analysis-engine manifest continues to exclude Demucs/torch on macOS Intel.

Exact current identity

  • Protected target: develop@889d782e88b4df28dcbb4ae3cfd6d99ef85d9844.
  • Branch: fix/python-dep-cves-ytdlp-setuptools-torch.
  • Exact head: a13f8258d1403a6cd68fd177df222672013a46dd.
  • Open, Draft, mergeable, intentionally unmerged.
  • Current semantic delta remains six files: .trivyignore, CHANGELOG.md, docs/security/dependency-policy.md, analysis pyproject.toml, the dependency-security regression, and uv.lock.

Commit a13f8258... is a normal two-parent descendant of predecessor head 046db562... and protected develop@889d782.... The only intervening protected delta was the Tauri Cargo.lock; this branch adopts that protected blob exactly. No force-push/destructive rebase or predecessor evidence transfer was used.

Regression and owner boundary

test_python_dependency_security_baseline.py is the owner-level regression for exact patched lock versions, retired exception text, and the macOS Intel exclusion contract. This PR owns the security baseline, not future scientific-performance adoption of arbitrary latest torch releases.

Dependabot #1164 currently combines setuptools 81→83 with transitive torch 2.12.1→2.14.0 in a lock-only update. Its setuptools security objective is already superseded here by 84.0.0. Its remaining unique delta is torch 2.14, whose own release notes include backwards-incompatible changes and whose resolved CUDA dependency topology changes materially. That elective scientific/runtime move must be evaluated separately against Demucs compatibility, rights-cleared real decoded audio, reproducibility, supported backend parity and performance; it must not overwrite this security owner or inherit this PR's evidence.

Verification boundary

All hosted results before a13f8258d1403a6cd68fd177df222672013a46dd are predecessor-only. Keep Draft until this unchanged head has applicable CI, dependency/security audit, SAST, SBOM/supply-chain, coverage, release/build and central review gates terminal-success, zero valid unresolved findings and a qualifying independent non-author last-push approval. Do not reuse #1164 or predecessor-head checks, self-approve, bypass protection, or suppress a failing gate.

Remediates the three open Dependabot alerts on develop:
- GHSA-6v4j-43gg-vj32 (HIGH, yt-dlp < 2026.7.4): floor raised to the
  latest 2026.8.19 release ahead of the advisory window.
- GHSA-h35f-9h28-mq5c (MEDIUM, setuptools < 83.0.0): transitive pin
  refreshed to 84.0.0 through the lockfile.
- torch <= 2.12.1 (LOW): demucs's torch dependency updated to 2.13.0.

uv.lock regenerated with uv's own resolver; full analysis-engine suite
passes (679 passed, 24 skipped) on Python 3.14.
@coderabbitai

coderabbitai Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

Python 분석 의존성 기준을 갱신했습니다. torch, setuptools, yt-dlp의 버전 기준과 보안 예외를 변경했습니다. macOS Intel의 Demucs 및 torch 제외 정책을 명시했습니다. 관련 기준을 검증하는 회귀 테스트를 추가했습니다.

Changes

Python 의존성 보안 기준선

Layer / File(s) Summary
의존성 및 보안 정책 갱신
services/analysis-engine/pyproject.toml, docs/security/dependency-policy.md, CHANGELOG.md
yt-dlp 최소 버전을 2026.8.19로 변경했습니다. torchsetuptools의 고정 버전 및 보안 예외 상태를 갱신했습니다. macOS Intel에서 Demucs와 torch를 설치하지 않는 정책을 기록했습니다.
보안 기준 회귀 테스트
services/analysis-engine/tests/test_python_dependency_security_baseline.py
setuptools, torch, yt-dlp의 lockfile 버전을 검증합니다. Demucs 플랫폼 조건, 보안 예외 제거, Trivy 예외, yt-dlp 수정 기준을 검증합니다.

Estimated code review effort: 2 (Simple) | ~15 minutes

Merge Risk: 🔵 Low · up to 3a048

The dependency baseline is updated to patched releases, but the regression test does not directly verify that torch remains excluded on macOS Intel. The PR is mergeable with explicit owner awareness or a follow-up to assert that platform condition.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 6 functions across 1 files.
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.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 yt-dlp, setuptools, torch를 보안 수정 버전으로 업데이트하는 PR의 주요 변경 사항을 정확하고 간결하게 설명합니다.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/python-dep-cves-ytdlp-setuptools-torch

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 0 potential issues.

Open in Devin Review

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 0 new potential issues.

Open in Devin Review

devin-ai-integration[bot]

This comment was marked as resolved.

coderabbitai[bot]

This comment was marked as resolved.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 0 new potential issues.

Open in Devin Review

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 0 new potential issues.

Open in Devin Review

coderabbitai[bot]

This comment was marked as resolved.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 0 new potential issues.

Open in Devin Review

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 0 new potential issues.

Open in Devin Review

@seonghobae
seonghobae enabled auto-merge (squash) August 28, 2026 01:39
@seonghobae

Copy link
Copy Markdown
Collaborator Author

Please provide the required independent OpenCode review for current HEAD 046db56. Refetch this SHA and the protected base before reviewing; submit a formal current-head verdict only after independent review.

Copy link
Copy Markdown
Collaborator Author

@opencode-agent Review only PR #1033 on unchanged exact head 046db562497a8104fa525f56a6437eb13fbf4760 against independently refetched protected develop@749511c3ad4000090048718f685c6bee6b3d2c25. Apply superpowers:using-superpowers and receiving-code-review/verification-before-completion. Do not mutate the branch in this dispatch. Re-read the exact diff plus current dependency/security policy and verify the Python dependency-security baseline: patched setuptools/torch/yt-dlp locks, retired exception assertions, the Demucs/macOS-Intel transitive torch exclusion contract, lock/manifest consistency, and absence of unrelated dependency/policy drift. Treat predecessor reviews and prior-head evidence as stale; report findings against this exact head only. The repository-owned workflow runs on this exact head are terminal-success and all current inline review threads are resolved, but that is not an approval. If you find an actionable defect, identify the first causal BandScope-owned boundary and smallest realistic RED regression; do not self-approve or weaken any gate. If clean, leave an exact-head review receipt suitable for the normal independent approval/merge-gate path.

@seonghobae

Copy link
Copy Markdown
Collaborator Author

Queued @opencode-agent for PR #1033 at head 046db562497a8104fa525f56a6437eb13fbf4760. Central exact-name Actions artifacts are the durable dispatch ledger; existing review workflows remain authoritative for the final verdict and failure evidence.

@opencode-agent opencode-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

OpenCode reviewed the current-head product diff. Coverage is a separate gate.

Changed files

  • .trivyignore — repository behavior
  • CHANGELOG.md — repository behavior
  • docs/security/dependency-policy.md — operator or user guidance
  • services/analysis-engine/pyproject.toml — repository behavior
  • services/analysis-engine/tests/test_python_dependency_security_baseline.py — regression suite
  • services/analysis-engine/uv.lock — repository behavior

Changed behavior

flowchart LR
  PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
  Evidence --> S1["Repository file: .trivyignore"]
  S1 --> I1["repository behavior"]
  I1 --> R1["Review risk: Repository file: .trivyignore"]
  R1 --> V1["required checks"]
  Evidence --> S2["Repository file: CHANGELOG.md"]
  S2 --> I2["repository behavior"]
  I2 --> R2["Review risk: Repository file: CHANGELOG.md"]
  R2 --> V2["required checks"]
  Evidence --> S3["Docs: dependency-policy.md"]
  S3 --> I3["operator or user guidance"]
  I3 --> R3["Review risk: Docs: dependency-policy.md"]
  R3 --> V3["docs review"]
  Evidence --> S4["Repository file: pyproject.toml"]
  S4 --> I4["repository behavior"]
  I4 --> R4["Review risk: Repository file: pyproject.toml"]
  R4 --> V4["required checks"]
  Evidence --> S5["Test: test_python_dependency_security_baseline.py"]
  S5 --> I5["regression suite"]
  I5 --> R5["Review risk: Test: test_python_dependency_security_baseline.py"]
  R5 --> V5["targeted test run"]
  Evidence --> S6["Repository file: uv.lock"]
  S6 --> I6["repository behavior"]
  I6 --> R6["Review risk: Repository file: uv.lock"]
  R6 --> V6["required checks"]
Loading

Findings

No source-backed product finding is synthesized from the coverage gate. A coverage miss belongs in the status comment.

  • Head SHA: 046db562497a8104fa525f56a6437eb13fbf4760
  • Workflow run: 33245610267
  • Workflow attempt: 1
  • Coverage gate: failure

Review outcome

Coverage is a gate, not the review. This body reviews the changed product files.

Changed-File Evidence Map

flowchart LR
  PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
  Evidence --> S1["Repository file: .trivyignore"]
  S1 --> I1["repository behavior"]
  I1 --> R1["Review risk: Repository file: .trivyignore"]
  R1 --> V1["required checks"]
  Evidence --> S2["Repository file: CHANGELOG.md"]
  S2 --> I2["repository behavior"]
  I2 --> R2["Review risk: Repository file: CHANGELOG.md"]
  R2 --> V2["required checks"]
  Evidence --> S3["Docs: dependency-policy.md"]
  S3 --> I3["operator or user guidance"]
  I3 --> R3["Review risk: Docs: dependency-policy.md"]
  R3 --> V3["docs review"]
  Evidence --> S4["Repository file: pyproject.toml"]
  S4 --> I4["repository behavior"]
  I4 --> R4["Review risk: Repository file: pyproject.toml"]
  R4 --> V4["required checks"]
  Evidence --> S5["Test: test_python_dependency_security_baseline.py"]
  S5 --> I5["regression suite"]
  I5 --> R5["Review risk: Test: test_python_dependency_security_baseline.py"]
  R5 --> V5["targeted test run"]
  Evidence --> S6["Repository file: uv.lock"]
  S6 --> I6["repository behavior"]
  I6 --> R6["Review risk: Repository file: uv.lock"]
  R6 --> V6["required checks"]
Loading

@opencode-agent

opencode-agent Bot commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

OpenCode Review Overview

Coverage evidence did not pass, so approval is blocked. The formal pull-request review is the source-backed diff review, not this status comment.

@opencode-agent
opencode-agent Bot disabled auto-merge August 31, 2026 06:35
@seonghobae
seonghobae enabled auto-merge (squash) September 2, 2026 21:13
@opencode-agent
opencode-agent Bot disabled auto-merge September 3, 2026 04:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant