Commit Graph

7322 Commits

Author SHA1 Message Date
jxxghp
07f51c5d94 fix: handle invalid tmdb json responses 2026-05-20 09:05:18 +08:00
jxxghp
5d02550874 fix: cache available shell command discovery v2.12.2 2026-05-19 18:45:52 +08:00
jxxghp
2ff6474f0f 更新 version.py 2026-05-19 18:27:48 +08:00
jxxghp
c4eb4d9b95 feat: inject available shell commands into agent prompt 2026-05-19 18:16:09 +08:00
jxxghp
7866aee1de fix: stop torrent search paging after short pages 2026-05-19 17:54:39 +08:00
XiaoChao Fang
cdddd8e080 fix: preserve tv bluray disc folders (#5788) 2026-05-19 16:42:23 +08:00
InfinityPacer
407b60a14f feat: include episode group in subscribe source (#5787) 2026-05-19 16:03:04 +08:00
InfinityPacer
b989d08385 fix(workflow): use core torrent info for RSS action (#5786) 2026-05-19 13:04:03 +08:00
jxxghp
f46488cb9c fix: Audiences站点未读消息数解析错误
优先使用Audiences特有的解析逻辑(从"总数/未读数"格式提取真正的未读数),
仅在匹配不到时才fallback到NexusPHP基类的通用正则,避免基类将总消息数
误判为未读数导致发送大量错误通知。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 12:55:39 +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
Album
9e9c398177 feat: 新增集数定位模板生成接口 (#5785) 2026-05-19 07:18:28 +08:00
jxxghp
1f0eeb25e6 feat: add agent cli tools to docker image 2026-05-18 21:20:26 +08:00
jxxghp
3c1ff5242c feat: install ssh client in docker image 2026-05-18 21:16:58 +08:00
jxxghp
9076acc52e feat: add managed agent command sessions 2026-05-18 20:17:59 +08:00
InfinityPacer
f5eeeebeba fix(subscribe): persist best-version downloads to note and read it back (#5783) 2026-05-18 17:09:56 +08:00
TimoYoung
22bb15583d fix(alembic): ConfigParser interpolation breaks migration with special chars in PG password (#5782) 2026-05-18 17:09:02 +08:00
jxxghp
bedf06b864 feat: support multi-page resource search 2026-05-18 09:48:43 +08:00
jxxghp
cb8636e967 refactor(browser): decouple Playwright types with protocol interfaces and remove direct dependency 2026-05-18 08:46:24 +08:00
jxxghp
36a0d78f08 更新 version.py v2.12.1 2026-05-18 07:29:06 +08:00
InfinityPacer
23d6ba0466 fix(subscribe): stop best-version per-episode redownload loop (#5781) 2026-05-18 06:56:29 +08:00
jxxghp
6685bd0e0e fix(audiences): correctly filter unread messages by icon class and attributes 2026-05-17 21:52:13 +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
93130baf0a fix(system): improve error reporting for subprocess failures and add tests for output handling 2026-05-17 19:28:18 +08:00
jxxghp
3653164924 chore: bump version to v2.12.0 v2.12.0 2026-05-17 15:12:01 +08:00
jxxghp
ca0127cc87 fix: adapt site imdb search urls 2026-05-17 11:43:50 +08:00
jxxghp
092666f9d2 fix: avoid double episode offset in manual transfer 2026-05-17 08:59:17 +08:00
jxxghp
7b97e2039f fix(nginx): expand SSE configuration to include logging and search stream endpoints 2026-05-17 08:29:57 +08:00
jxxghp
e168e31a8f fix: offload subtitle download after add task 2026-05-17 08:26:13 +08:00
jxxghp
3ee601574c fix: reduce low-risk pylint issues 2026-05-17 08:01:39 +08:00
jxxghp
0ee9fec1d2 feat(browser): migrate to CloakBrowser for browser emulation and streamline dependency management
- Replace Playwright-based browser emulation with CloakBrowser as default
- Update config to support CloakBrowser options and humanization presets
- Refactor browser helper to use CloakBrowser context and remove cf_clearance dependency
- Update Dockerfile, entrypoint, and update scripts to install CloakBrowser runtime
- Ensure CloakBrowser kernel is pre-installed during local setup and dependency updates
- Add tests for CloakBrowser integration and legacy compatibility
2026-05-16 20:51:38 +08:00
jxxghp
9069dccb2a fix: parse Audiences unread messages 2026-05-16 16:41:11 +08:00
jxxghp
3c055e2482 fix: avoid tmdb cached response mutation
Fixes #5777
v2.11.4
2026-05-16 08:02:18 +08:00
jxxghp
28718094e4 Merge remote-tracking branch 'origin/v2' into v2 2026-05-15 22:43:48 +08:00
jxxghp
9b23265c3b feat(search): cache and expose last search parameters for replay and context retrieval
- Add methods to save and retrieve last search parameters in SearchChain
- Persist search params alongside results for replayable search context
- Add /last/context endpoint to fetch last search results and parameters
- Update tests to cover search param caching logic
- Allow images.tmdb.org in SECURITY_IMAGE_DOMAINS
2026-05-15 22:43:40 +08:00
jxxghp
9f61bce039 更新 version.py 2026-05-15 22:24:41 +08:00
jxxghp
1f49f9b454 fix: normalize downloader return paths
Fixes #5773
2026-05-15 18:15:42 +08:00
jxxghp
51229204c9 perf: optimize torrent filtering 2026-05-15 16:55:42 +08:00
jxxghp
2831eecbeb perf: optimize media recognition internals 2026-05-15 13:37:36 +08:00
jxxghp
b2a18f9ae4 feat(message-processing-status): unified processing status indicator for Telegram, Slack, Discord, Feishu
- Add ChannelCapability.PROCESSING_STATUS and capability detection for supported channels
- Implement mark_message_processing_started/finished in Telegram, Slack, Discord, Feishu modules
  - Telegram: manage typing lifecycle with max duration and explicit stop
  - Slack: add/remove reaction as processing indicator
  - Discord: start/stop typing indicator with async task management
  - Feishu: add/remove reaction for processing status
- Refactor message chain to invoke processing status hooks for supported channels
- Ensure processing status is properly finished on sync and async message handling paths
- Add tests for processing status lifecycle and capability detection across channels
2026-05-15 12:45:41 +08:00
jxxghp
5a06e7b8bc fix(uv-pip-compat): bind venv python for more pip commands and add tests for compatibility wrapper 2026-05-15 09:58:30 +08:00
jxxghp
f303d9e576 更新 version.py v2.11.3 2026-05-15 06:56:15 +08:00
InfinityPacer
b76c4edc4a fix(subscribe): prefer full packs for episode upgrades (#5771) 2026-05-15 06:50:16 +08:00
jxxghp
41da9b62c2 fix: refresh custom placeholders without restart
Closes #5770
2026-05-14 23:04:14 +08:00
jxxghp
9128955bf9 fix: preserve scalar items in list flatten
Fixes #5705
2026-05-14 22:18:59 +08:00
jxxghp
f50773711e feat: add support for syncing matching subtitle and audio files with main media during transfer 2026-05-14 21:12:02 +08:00
jxxghp
23784f614b feat: add user-friendly handling for unsupported image input errors in agent execution 2026-05-14 20:36:14 +08:00
jxxghp
7b27b7fd16 feat: add extensible agent audio capabilities 2026-05-14 19:37:13 +08:00
纯白色冰淇淋
6834d8b2c7 fix: mitigate CVE-2026-42945 by using named captures in rewrite (#5769) 2026-05-14 17:19:59 +08:00