Skip to content

修复 BBDown 下载前重复预取与缓存/YouTube 测试契约 - #27

Merged
zj1123581321 merged 3 commits into
mainfrom
agent/bbdown-cache-youtube-ci
Jul 22, 2026
Merged

zj1123581321 merged 3 commits into
mainfrom
agent/bbdown-cache-youtube-ci

Conversation

@zj1123581321

Copy link
Copy Markdown
Collaborator

变更概要

  • 修复 BBDown 在用户看到“开始下载”前重复解析/预取下载信息的问题,保证下载信息只解析一次。
  • 更新分层缓存测试以匹配章节状态与 processing_options 当前契约。
  • 更新 YouTube 字幕优先级测试,改用当前的 SubtitleResult 权威接口,避免旧 mock 意外请求真实 TikHub。
  • 补充 YouTube 字幕适配器接口约定文档。

根因

这批 26 个失败主要是既有测试契约落后于已合入的章节功能和 SubtitleResult 重构,并非 26 个生产任务真实失败。旧 YouTube mock 未拦住当前调用链后,会误打真实 TikHub 并产生 401。

验证

  • uv run pytest tests/unit tests/integration -q
  • 相关缓存、任务快照、YouTube 测试:44 个通过
  • 真机本地 API GET /health:healthy
  • 真实 B23 链接 BBDown -info:成功解析标题及音视频流
  • 独立 Codex review:连续 2 轮通过,P1/P2/P3 均为 0

本次变更相对 main 为 228 行新增,未拆分 stacked PR。

@github-actions

Copy link
Copy Markdown

Reviewed commit: 3afa84a1dbf81818274e2c7546fafb770925f866

🤖 Review 门禁 — 判定: pass(主审: codex-sub)

PR 的生产代码变更符合设计意图:下载信息解析已从下载前预取阶段移至用户收到“正在下载”通知之后,并复用同一下载器实例,BBDown 路径只会执行一次实际下载;独立 download_url、YouTube API Server、平台字幕及异常传播路径未发现实质性回归。缓存与 YouTube 测试调整符合当前章节状态、processing_options 和 SubtitleResult 接口契约。受只读环境限制,无法初始化 uv 缓存或执行 pytest,但已静态核对相关实现与调用链,未发现 blocker 或 major 问题。

覆盖:single;1 个审查单元;654 行 diff。

@github-actions

Copy link
Copy Markdown

📒 Review ledger state

  • Commit: 3afa84a1dbf81818274e2c7546fafb770925f866
  • Round: 1
  • Status / findings: pass / 0
  • Comparison: first_review

完整数据保存在 codex-review-ledger artifact;此 sticky comment 仅保存跨 rerun 的连续游标。

@zj1123581321
zj1123581321 marked this pull request as ready for review July 22, 2026 06:49
@zj1123581321
zj1123581321 merged commit 6b20375 into main Jul 22, 2026
2 checks passed
@zj1123581321
zj1123581321 deleted the agent/bbdown-cache-youtube-ci branch July 23, 2026 04:51
zj1123581321 added a commit that referenced this pull request Oct 15, 2026
合并 PR #27,CI 与 Agent review gate 已通过。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant