Aqr-K
a2e70b443d
fix(monitor,transfer): 修复 FUSE 挂载无响应导致的监控冻死、整理链锁死与漏件 ( #6276 )
...
* wip(v3): 移植监控与整理韧性修复到 v3 基线
包含:监控看门狗隔离/挂载探测、整理队列持久化、文件系统子进程代理、
写入原子化。迁移重挂到 v3 链 8a4c7e1d2f90 -> 7f5c1d2e3a4b -> e3d9f4b7c806。
tmdb 相关测试尚未通过,待定位。
* fix(v3): 修正移植引入的 16 项测试失败
- poller.py:合并时我方保留的行仍用旧变量名 merged_snapshot,而 v3 已统一
改名为 current_snapshot,导致 NameError 被外层 except 吞掉、快照从未保存
- smb.py:采纳 f-string 拆分写法,恢复 Python 3.11 可解析
- dispatcher 测试:历史查重由 _should_skip_by_history 统一承担,mock 点随之调整
- tmdb 缓存测试:补充 v3 新增的 media_source/media_id 字段
- tmdb 重试测试:为 fake 补充 match_multi/async_match_multi
尚余 3 项与 v3 识别流程的连接失败处理有关,待单独判断。
* fix(v3): 测试适配 v3 的 media_source/media_id 重构
v3 将媒体标识从 tmdbid 统一重构为 media_source + media_id,recognize_media
的 tmdbid 参数已被 **kwargs 静默吞掉——传了也不生效,流程会误降级到名称搜索。
tmdb 重试用例改用新参数后恢复正确路径。
同时修正 fake 的 match_multi 语义:真实实现(tmdbapi.match_multi)吞掉所有
异常并返回 None,连接失败与「未找到」在该路径上本就不可区分,fake 需保持一致。
至此移植引入的 19 项失败全部清零。
---------
Co-authored-by: Aqr-K <Aqr-K@users.noreply.github.com >
2026-08-13 08:19:54 +08:00
jxxghp
ca32922a7f
refactor(media): unify media identity and chain responsibilities
2026-08-12 18:31:09 +08:00
jxxghp
8bf2f601a6
refactor(media): unify source identity and music browsing
2026-08-12 12:56:40 +08:00
jxxghp
3f1b0cdb05
feat(music): 支持多源识别与元数据刮削
2026-08-11 23:34:00 +08:00
jxxghp
d7cf853bc8
fix(search): 支持单次搜索启用多个媒体数据源,合并显示所有源结果 ( #6270 )
...
- 新增 is_media_source_enabled/is_media_source_selected,请求级 source 支持逗号分隔多数据源,缺省回退全局 SEARCH_SOURCE 配置
- 四个媒体模块的搜索/人物/合集方法统一接入多源判断
- 补充多数据源搜索相关测试
2026-08-11 21:06:52 +08:00
jxxghp
4b1df72a4a
refactor(cache): simplify recognition cache persistence
2026-08-06 07:48:43 +08:00
InfinityPacer
197a09b2a4
fix(dashboard): distinguish empty media results ( #6187 )
2026-07-25 14:24:25 +08:00
jxxghp
fb32c59713
feat: add AniList rankings and discovery
2026-07-22 12:53:58 +08:00
jxxghp
e3f80af74f
feat: expand metadata sources and media server sync ( #6129 )
2026-07-21 11:34:18 +08:00
InfinityPacer
5588e37c6d
fix: preserve season zero semantics ( #6150 )
2026-07-20 06:55:23 +08:00
InfinityPacer
893269f8c1
fix(modules): serialize configuration reload lifecycle ( #6122 )
2026-07-15 17:28:49 +08:00
jxxghp
29068a5846
feat: 支持 TheMovieDb 识别缓存管理
2026-07-13 09:48:08 +08:00
jxxghp
68f18db374
Handle invalid UTF-8 with replacement decoding
2026-06-21 09:56:34 +08:00
jxxghp
d26225b998
fix(tmdb): stabilize tmdb connection reuse
2026-06-11 12:48:32 +08:00
jxxghp
00fc8b2f53
chore: update text processing dependencies
2026-05-23 12:18:59 +08:00
jxxghp
b6b5529d19
fix: 优化TMDB搜索匹配优先级,title/original_title优先于别名匹配
...
将搜索结果匹配策略从"逐个结果完整匹配链"改为"两轮优先级匹配":
第一轮遍历所有结果只匹配title/original_title,第二轮再匹配别名译名。
避免排序靠前的无关影片因别名恰好匹配而抢先于正确结果。
Fixes #5719
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-21 17:47:59 +08:00
jxxghp
7cc037c683
fix: suppress garbled gzip bytes in tmdb error log
...
When Content-Encoding is present (e.g. gzip), skip logging the raw
response text to avoid unreadable binary output in logs.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-20 18:08:10 +08:00
jxxghp
068d0af4ca
fix: remove tmdb manual gzip fallback
2026-05-20 17:09:31 +08:00
jxxghp
8f117d79f2
Revert "fix: handle tmdb gzip json responses"
...
This reverts commit 47c4e84fdd .
2026-05-20 17:03:47 +08:00
jxxghp
47c4e84fdd
fix: handle tmdb gzip json responses
2026-05-20 16:54:01 +08:00
jxxghp
a5745af484
fix: restore tmdb trending recommendations
2026-05-20 10:55:01 +08:00
jxxghp
c3e4e1a764
fix: decode raw gzip tmdb responses
2026-05-20 10:44:01 +08:00
jxxghp
6edb627145
fix: handle tmdb unicode decode errors
2026-05-20 09:21:36 +08:00
jxxghp
07f51c5d94
fix: handle invalid tmdb json responses
2026-05-20 09:05:18 +08:00
jxxghp
34ff80e26c
feat: optimize scraping for multi-server compatibility
...
- Add studio, country, runtime tags to NFO generation
- Fix Fanart naming: showbackground→fanart (recognized by Jellyfin/Emby)
- Add image alias system: backdrop↔fanart, thumb↔landscape
- Merge image sources from all modules instead of first-wins
- Add CLEARART and LANDSCAPE scraping metadata types
- Extend season scraping with backdrop and landscape support
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-19 12:36:47 +08:00
jxxghp
195e34563d
fix: use explicit tmdb locale setting
2026-05-19 11:33:03 +08:00
jxxghp
29dab5a312
fix: improve media image scraping
2026-05-19 10:48:36 +08:00
jxxghp
c857ae3e14
fix(tmdb): remove fallback to TMDB website scraping when API search fails
2026-05-17 19:46:50 +08:00
jxxghp
3c055e2482
fix: avoid tmdb cached response mutation
...
Fixes #5777
2026-05-16 08:02:18 +08:00
jxxghp
2831eecbeb
perf: optimize media recognition internals
2026-05-15 13:37:36 +08:00
DDSRem
5a585839ba
chore: remove unused imports and fix function name conflicts ( #5764 )
...
- Remove unused imports in anthropic.py, tmdbv3api/__init__.py, tv.py, test files
- Rename conflicting function names in subscribe.py and webhook.py
- Clean up unused re-exports in tmdbv3api/__init__.py (15 unused exports)
- Apply consistent formatting across API endpoints
2026-05-13 18:59:03 +08:00
jxxghp
5e5c257b75
fix(tmdb): cache serializable response snapshots
...
Avoid caching raw HTTP response objects in TMDb request helpers so Redis no longer fails on embedded locks. Add an isolated regression test for sync and async request snapshots.
Refs #5763
2026-05-12 22:31:56 +08:00
Attente
ee9ea54ab7
feat(fanart): 添加异步支持并优化图片处理逻辑
2026-05-10 00:07:28 +08:00
jxxghp
94d7e4385e
fix: update shared recognize cache flow
2026-05-08 21:21:01 +08:00
DDSRem
1acf78342c
feat: tmdbid优先识别,同ID电影/电视剧通过元数据自动消歧
...
当名称中包含 {tmdbid=xxx} 时,优先使用tmdbid直接查询TMDB,不再回退到标题搜索。
当同一tmdbid同时存在电影和电视剧时,通过标题、年份、类型等元数据自动消歧。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-26 06:45:17 +08:00
jxxghp
630d13ac52
fix: 修复集缩略图文件名错误,episode-thumb-xx 改为 视频文件名-thumb.xx
2026-03-23 23:05:25 +08:00
Attente
a0838ed9cd
fix(media): 修复剧集单集图片刮削
2026-03-23 19:41:48 +08:00
景大侠
4c3d47f1f0
feat(cache): 同步/异步函数可共享缓存
...
- 缓存键支持自定义命名,使异步与同步函数可共享缓存结果
- 内存缓存改为类变量,实现多个cache装饰器共享同一缓存空间
- 重构AsyncMemoryBackend,减少重复代码
- 补齐部分模块的缓存清理功能
2026-02-10 18:46:49 +08:00
CHANTXU64
4e74d32882
Fix: TMDB 剧集详情页不显示第 0 季(特别篇) #5444
2026-02-02 10:28:22 +08:00
copilot-swe-agent[bot]
5d3443fee4
Use ruamel.yaml consistently in CategoryHelper
...
Co-authored-by: jxxghp <51039935+jxxghp@users.noreply.github.com >
2026-01-26 04:10:15 +00:00
copilot-swe-agent[bot]
27756a53db
Implement proper architecture: module->chain->API with single CategoryHelper
...
Co-authored-by: jxxghp <51039935+jxxghp@users.noreply.github.com >
2026-01-26 04:07:56 +00:00
copilot-swe-agent[bot]
a857337b31
Fix architecture - restore helper layer and use ModuleManager for reload trigger
...
Co-authored-by: jxxghp <51039935+jxxghp@users.noreply.github.com >
2026-01-25 10:06:01 +00:00
copilot-swe-agent[bot]
4ee21ffae4
Address code review feedback - use ruamel.yaml consistently and fix typo
...
Co-authored-by: jxxghp <51039935+jxxghp@users.noreply.github.com >
2026-01-25 09:58:28 +00:00
copilot-swe-agent[bot]
d8399f7e85
Consolidate CategoryHelper classes and add reload trigger
...
Co-authored-by: jxxghp <51039935+jxxghp@users.noreply.github.com >
2026-01-25 09:56:11 +00:00
景大侠
a677ed307d
修复 剧集nfo文件刮削了错误的tmdb id
...
应使用剧集id而非剧id
2026-01-18 16:23:05 +08:00
景大侠
52437c9d18
按语言缓存tmdb元数据
2026-01-12 09:41:34 +08:00
景大侠
c6cb4c8479
统一构造tmdb图片网址
2026-01-12 09:41:25 +08:00
景大侠
357db334cd
修复 自建TMDB服无法通过健康检测
...
携带UA以避免被反爬虫脚本过滤
2025-12-30 22:13:43 +08:00
REinject
931a42e981
fix(tmdbapi): 修复按季搜索剧集的名称匹配逻辑问题
2025-12-03 12:26:05 +08:00
Attente
1ef4374899
feat(telegram): 图片增加缓存与安全校验, 获取失败降级发送
...
- 统一部分类型标注
- 修正部分文本错误
2025-12-03 09:56:30 +08:00