Skip to content

fix(emby): 优先按 Provider ID 查询媒体 - #6314

Draft
bgColorGray wants to merge 1 commit into
jxxghp:v3from
bgColorGray:codex/fix-emby-provider-id-lookup
Draft

fix(emby): 优先按 Provider ID 查询媒体#6314
bgColorGray wants to merge 1 commit into
jxxghp:v3from
bgColorGray:codex/fix-emby-provider-id-lookup

Conversation

@bgColorGray

@bgColorGray bgColorGray commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

问题

Emby 媒体库存在性检查目前先按标题和年份搜索,再校验媒体身份。媒体元数据标题与 Emby 展示标题存在别名或本地化差异时,即使双方 TMDB ID 一致也会返回未入库,例如 航海王海贼王(TMDB 37854)。

修复

  • 将统一媒体身份转换为 Emby ProviderIds 规范键值。
  • 电影和电视剧优先通过 AnyProviderIdEquals 精确查询,并校验返回条目的 Provider ID。
  • Provider ID 不可用、未命中或返回身份不符时,保留原有标题/年份精确匹配回退。
  • 增加电影别名、电视剧别名和错误 Provider ID 回退的离线回归测试。

验证

  • pytest -q tests/test_emby_provider_id_lookup.py tests/test_mediaserver_tv_stale_itemid.py tests/test_emby_user_resolution.py tests/test_emby_dashboard_links.py: 19 passed
  • pylint app/helper/mediaserver.py app/modules/emby/emby.py: 10.00/10
  • python tests/run.py: 3985 passed, 3 skipped, 2 failed

全量测试的两个失败均已在未修改的 upstream/v3@557cc0e2 上独立复现:

  • tests/test_bluray.py::BluRayTest::test
  • tests/test_workflow_actions.py::test_workflow_manager_list_actions_exposes_contract

它们不经过本次修改路径。

PR-Agent 摘要

🤖 Generated by PR Agent at c34488d

  • 优先用 Provider ID 查询 Emby 媒体
  • 校验返回条目身份,防止错误匹配
  • 未命中时回退标题与年份检索
  • 覆盖电影、剧集别名及回退场景

@github-actions github-actions 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.

PR-Agent Code Review

本次变更新增统一媒体身份到 Emby ProviderIds 的转换与校验,并让电影和电视剧优先按 Provider ID 查询,未命中时回退标题和年份,同时补充了离线回归测试。未发现可确认的行为缺陷,无需提出审查意见。

审查提交:c34488d

@bgColorGray
bgColorGray marked this pull request as draft August 14, 2026 11:22
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