jxxghp
4322f8a3c1
fix: preserve reasoning content for compatible llms
2026-05-14 14:01:53 +08:00
jxxghp
0f3a4e4c15
refactor: rely on transfer chain invariants
2026-05-14 07:55:33 +08:00
jxxghp
f4423e121e
fix: aggregate metadata scrape events
2026-05-14 07:38:06 +08:00
jxxghp
7b1ece8b83
fix https://github.com/jxxghp/MoviePilot/issues/5663
2026-05-13 21:03:54 +08:00
jxxghp
6d5cda5d51
fix https://github.com/jxxghp/MoviePilot/issues/5663
2026-05-13 21:03:48 +08:00
jxxghp
fcf6e14ac9
fix: filter invalid subtitle action links
2026-05-13 17:57:25 +08:00
jxxghp
0959c4ace4
feat: add full-season pack option for TV best-version subscriptions
...
- Introduce `best_version_full` field to subscribe and subscribehistory models and migration
- Update subscription logic to support only downloading full-season packs when enabled
- Extend CLI, API, and documentation to reflect new option
- Add tests for full-season best-version behavior
2026-05-13 16:53:24 +08:00
jxxghp
f0bc1bd681
fix: prevent storage operations in preview mode and add tests for transfer preview logic
2026-05-13 13:39:57 +08:00
jxxghp
f8d096f476
fix: 支持飞书语音消息识别
2026-05-13 12:45:32 +08:00
jxxghp
b24127e66f
fix: map feishu user identity for agent subscribe
2026-05-13 12:14:05 +08:00
jxxghp
35eb8c51a9
chore: bump version to v2.11.2
2026-05-13 11:47:46 +08:00
jxxghp
669ca713cf
fix(feishu): add configurable margin to card sections and actions for improved layout with images
2026-05-13 11:43:37 +08:00
jxxghp
f2fd28bf4d
fix(feishu): place images at top of interactive cards and remove body padding for better visual layout
2026-05-13 11:31:38 +08:00
jxxghp
3852c0e43e
feat(feishu): support embedding images in interactive cards and sending mixed image+file messages
...
- Enhance Feishu card builder to embed images using remote URLs or uploaded files
- Add logic to send image card first, then file attachment when both image and file are present
- Update card schema to 2.0 and use new button behaviors for callbacks and URLs
- Improve callback data extraction for both new and legacy card actions
- Extend tests to cover image embedding, mixed messages, and new card structure
2026-05-13 11:14:11 +08:00
jxxghp
6fb6996d81
fix: ensure stop_streaming waits for inflight initial flush before final edit; improve message edit/delete return types and logging
...
- Update stop_streaming logic to await inflight initial flush task, preventing duplicate message sends on stream stop
- Change message edit/delete methods to return Optional[bool] for clearer channel mismatch handling
- Refine Feishu logging to include message_id instead of full data object
- Suppress allowed_objects warnings in __init__.py
- Add test to verify stop_streaming waits for inflight flush before final edit
- Update .pylintrc to use 'E' for error enabling
2026-05-13 10:11:31 +08:00
jxxghp
4c16704ca2
feat(feishu): add info logging for successful message and reply responses
2026-05-13 08:53:39 +08:00
jxxghp
f017eaedcc
feat: add logging for Feishu streaming card updates and handle update failures more explicitly
2026-05-13 08:44:57 +08:00
jxxghp
19526146c5
docs: update docstrings for message metadata and reply fields; fix markdown capability check in format instructions; improve streaming card update logic in Feishu
2026-05-13 08:36:27 +08:00
jxxghp
7b4cb2097b
refactor(feishu): promote download helper methods to public, update call sites and tests
2026-05-13 08:19:16 +08:00
jxxghp
b6062a9ce2
fix(feishu): unconditionally inc streaming sequence to prevent locking; send fallback as normal msg
2026-05-13 08:08:59 +08:00
jxxghp
ea8a90aa0a
fix(feishu): handle more IM websocket events
2026-05-13 07:10:44 +08:00
jxxghp
fa939dfbe6
fix(agent): reply Feishu agent streams with cards
2026-05-13 06:56:03 +08:00
jxxghp
77aa65bfdc
fix(agent): route streaming finalization through channel modules
2026-05-13 00:50:53 +08:00
jxxghp
d86d24fc4f
feat(feishu): enhance message handling with file and voice support, add reaction management
2026-05-13 00:34:03 +08:00
jxxghp
0989439d25
feat(feishu): enhance message handling with file and voice support, add reaction management
2026-05-13 00:07:36 +08:00
jxxghp
a46ce24691
feat(venv): add uv compatibility for pip commands and enhance virtual environment setup
2026-05-12 23:01:27 +08:00
jxxghp
57bb67e547
feat(feishu): enhance message target resolution and add user ID type handling
2026-05-12 22:39:10 +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
jxxghp
624862dfc6
feat(notification): add Feishu notification channel support
2026-05-12 21:40:55 +08:00
jxxghp
fc2c77fbf1
fix(agent): refresh LLM runtime config on each call
...
Read the latest LLM connection settings when building runtime clients so Web updates take effect immediately instead of reusing module-import defaults.
Closes #5757
2026-05-12 18:48:31 +08:00
jxxghp
2c45831714
feat(subscribe): add episode priority tracking for subscription updates
2026-05-12 17:22:50 +08:00
jxxghp
9068280f6d
refactor(tests): simplify test setup by removing unused stubs and imports
2026-05-12 14:00:50 +08:00
jxxghp
ea88f272a6
feat(system-settings): add unified tools for querying and updating system settings
2026-05-12 13:55:52 +08:00
jxxghp
ac090af606
feat(plugin): enhance dependency management by protecting main program dependencies and refining runtime constraints
2026-05-12 12:38:17 +08:00
jxxghp
99fbeecfa1
chore: update app version to v2.11.1-1
2026-05-11 22:32:11 +08:00
jxxghp
41477601c7
feat: add test for ILinkClient connection and handle ilink_user_id error gracefully
2026-05-11 22:30:13 +08:00
jxxghp
a6ab9b76c1
feat: refactor ZSpace media server request handling and improve authorization headers
2026-05-11 22:24:15 +08:00
jxxghp
a62b6b6fd5
fix: correct plugin dependency package lookup
2026-05-11 21:24:14 +08:00
jxxghp
75a52ad751
更新 version.py
2026-05-11 18:37:00 +08:00
jxxghp
a2fa8d6f28
feat: rename methods for clarity in ZSpace media server integration
2026-05-11 18:35:20 +08:00
jxxghp
ed9116d81e
feat: refactor ZSpace media server integration and enhance item management methods
2026-05-11 18:21:21 +08:00
jxxghp
6db1dd2067
feat: add ZSpace media server support with authentication and item management
2026-05-11 18:09:38 +08:00
jxxghp
b7fc5b0203
feat: refine job handling by filtering active jobs and updating date context in prompts
2026-05-11 13:15:32 +08:00
jxxghp
1b2433f7c2
feat: implement runtime dependency checks and recovery for plugin installations
2026-05-11 08:54:34 +08:00
jxxghp
888ccfcfc2
feat: add detailed docstrings for methods in WechatClawBot and related modules
2026-05-11 08:25:25 +08:00
jxxghp
3c9228c2f8
feat: enhance iLink polling logic to support multiple payload formats and improve success determination
2026-05-11 08:02:17 +08:00
jxxghp
3776422634
fix: tighten wechatclawbot poll protocol handling
2026-05-11 07:15:04 +08:00
jxxghp
5021b2c86f
feat: implement message deduplication and enhance error handling in WechatClawBot
2026-05-10 23:40:22 +08:00
jxxghp
412e10972f
fix: optimize client instantiation in message sending logic
2026-05-10 23:00:47 +08:00
jxxghp
d0b1b3d7f0
feat: add QR code URL normalization for compatibility with various formats
2026-05-10 22:10:53 +08:00
jxxghp
f5fea25b41
fix: migrate wechat clawbot login cache on rename
2026-05-10 21:50:33 +08:00
jxxghp
68706d3d5b
feat: add standalone wechat clawbot notifications
2026-05-10 21:47:35 +08:00
jxxghp
b768ed8fed
更新 version.py
2026-05-10 15:27:54 +08:00
jxxghp
c4d3d28491
fix: avoid blocking Ugreen startup on library preload
...
Delay Ugreen library loading until it is needed and cap poster wall pagination so a single Ugreen server cannot hang backend startup.\n\nFixes #5740
2026-05-10 12:19:36 +08:00
jxxghp
1862a7ab4b
feat: expose download save paths in API
...
Return configured download directories as API-ready save_path values so external integrations can choose download destinations without guessing local or remote path syntax.
Fixes #5737
2026-05-10 12:02:22 +08:00
jxxghp
adb7aa6aa9
fix: prevent repeated scans after history-based exits
...
Only mark downloader tasks as organized after a transfer history record exists, including existing-history skips and unrecognized media failures.
2026-05-10 10:25:39 +08:00
jxxghp
79eb128196
refactor: streamline media recognition by removing MetaInfoPath usage
2026-05-10 09:26:13 +08:00
jxxghp
4d132c424a
fix: avoid duplicate image fetch in transfer
...
Keep transfer recognition results ready for scraping without fetching images twice on the same path. Also ensure redo-by-path transfer recognition still populates image data before metadata scraping.
2026-05-10 08:22:27 +08:00
jxxghp
c52327c248
fix: only fetch images for scrape flows
...
Default title and path recognition to skip image fetching, while keeping scrape entrypoints and transfer-to-scrape paths populated with image data. This preserves lightweight recognition behavior without breaking metadata scraping.
2026-05-10 08:14:08 +08:00
jxxghp
1d97f2e043
fix: align media recognition fallback and shared reporting
...
Route title and path lookups through the fallback-aware entrypoints so auxiliary matches can reuse pre-assist keywords without forcing image fetches in lightweight flows. Also reduce noisy agent shutdown logging during cleanup.
2026-05-10 07:54:55 +08:00
jxxghp
4027ae2641
feat: add configurable data cleanup settings
...
Add a global cleanup switch, per-table retention periods, and scheduler config reload support so data cleanup can be managed and applied without restarting.
2026-05-09 21:22:02 +08:00
jxxghp
bc6c61bc45
fix(mediaserver): sync library data incrementally
2026-05-09 21:18:20 +08:00
jxxghp
cd5e693302
refactor: adjust database indexes by adding high-frequency composite indexes and removing redundant id indexes
2026-05-09 20:04:05 +08:00
jxxghp
ac11b303b3
fix: scheduled data cleanup chain
2026-05-09 18:30:55 +08:00
jxxghp
a7823fb4d1
feat: implement data cleanup chain for batch deletion of expired records
2026-05-09 14:04:10 +08:00
jxxghp
45d47d32f8
fix: optimize SSE event streaming with batched processing
2026-05-09 13:23:05 +08:00
jxxghp
893b8eba86
fix: remove unnecessary reporting for cache misses in media recognition
2026-05-09 12:01:14 +08:00
jxxghp
f9b987c3ef
fix: enhance logging for shared media recognition with item details
2026-05-09 11:52:05 +08:00
jxxghp
4ef8b0ba99
fix: 修复订阅刷新共享识别缓存回填异常
2026-05-09 11:25:45 +08:00
jxxghp
94d7e4385e
fix: update shared recognize cache flow
2026-05-08 21:21:01 +08:00
jxxghp
64b4de3900
fix: use original name for media recognize share
2026-05-08 20:36:33 +08:00
jxxghp
e217d1aa05
feat(recognize): implement media recognition sharing functionality with API integration
2026-05-08 18:08:43 +08:00
jxxghp
52e15b51db
fix(cli): align frontend download with version.py
...
Use FRONTEND_VERSION from version.py as the default frontend release target so local setup and auto-update install the matching frontend bundle.
Closes #5693
2026-05-08 15:49:32 +08:00
jxxghp
0dab3f087d
Merge remote-tracking branch 'origin/v2' into v2
2026-05-08 15:16:34 +08:00
jxxghp
e4c5a4f232
feat(provider): add kuaishou-wanqing endpoint with base URL presets and manual model input
2026-05-08 15:16:29 +08:00
jxxghp
14b366a648
refactor: adjust default and maximum limits for plugin candidates and torrent results; enhance result formatting for agents
2026-05-08 14:47:20 +08:00
jxxghp
0a0d5e6da2
docs: update AGENTS.md to improve clarity and consistency in project guidelines
2026-05-08 14:00:31 +08:00
jxxghp
3dbb68627f
refactor(provider): update sort orders and add new providers
2026-05-08 13:42:31 +08:00
jxxghp
f157b61dfa
docs: update AGENTS.md to clarify repository structure and guidelines
2026-05-08 13:29:18 +08:00
jxxghp
44f975baf4
docs: add comprehensive guide for MoviePilot AI Agent behavior and conventions
2026-05-08 13:17:10 +08:00
jxxghp
28ec4a6ac0
refactor(provider): update cache TTL for models.dev data to one week
2026-05-08 13:08:49 +08:00
jxxghp
1140a85402
feat(provider): implement fallback to bundled models.dev data on fetch failure
2026-05-08 13:00:27 +08:00
jxxghp
c6d95cd006
refactor(agent): consolidate provider preset resolution
2026-05-08 12:35:02 +08:00
jxxghp
c9931aa948
refactor(agent): remove MiniMax legacy alias
2026-05-08 11:43:10 +08:00
jxxghp
ec4f13dd79
feat(agent): merge MiniMax coding presets
2026-05-08 10:52:30 +08:00
jxxghp
d43ef610c7
feat(provider): add Baidu Qianfan and JDCloud support with base URL presets
2026-05-08 09:46:12 +08:00
jxxghp
05d720d81f
feat(agent): expand LLM provider and wizard support
2026-05-08 08:09:50 +08:00
jxxghp
2d2c2a01eb
refactor(core): enhance site operations and clarify media management workflow
2026-05-07 20:30:24 +08:00
jxxghp
226f9c9318
fix(system): extend graceful shutdown timeout to 180 seconds
2026-05-07 20:09:23 +08:00
jxxghp
b77b5a21c5
更新 version.py
2026-05-07 19:16:42 +08:00
jxxghp
82b637532e
更新 _torrent_search_utils.py
2026-05-07 17:31:22 +08:00
jxxghp
c2c9950bb1
fix(postgresql): support unix socket connections
...
Allow PostgreSQL socket paths without forcing a TCP port and reuse a single URL builder for sync, async, and migration flows. Document Redis socket URLs and close the socket connection request. Closes #5720
2026-05-07 13:22:14 +08:00
jxxghp
ffbe348d66
fix(openlist): paginate Alist directory listings
...
Fetch all OpenList/AList fs/list pages when using the default per_page=0 to avoid truncating directories at 200 entries. Add an isolated regression test for the auto-pagination behavior.
Fixes #5723
2026-05-07 13:09:28 +08:00
jxxghp
6d7b0733af
fix(transfer): avoid polluted history fallback at shared roots
...
Parent-path fallback should stop at shared download roots so an old root-level download cannot hijack unrelated manual transfers. Keep exact DownloadFiles matches allowed at the shared root to preserve valid no-subfolder lookups.
Closes #5716
Regression from afcd895f52
Follow-up to #5702
2026-05-07 13:01:20 +08:00
jxxghp
49a51cca25
fix(media): use Jellyfin-compatible season artwork names
...
Save season artwork in season folders with standard names like poster.jpg so Jellyfin can recognize them. Fixes #5725 .
2026-05-07 12:54:38 +08:00
jxxghp
06197144c0
refactor(qbittorrent): convert static methods to instance methods for better encapsulation
2026-05-07 08:25:34 +08:00
jxxghp
62541ffe43
fix(qbittorrent): restore qBittorrent 5.2 compatibility
...
Support WebUI API Key auth, newer add responses, and cookie sync so qBittorrent 5.2 can connect reliably while keeping legacy fallback behavior.
Fixes #5724
2026-05-07 07:41:05 +08:00
jxxghp
c762628217
fix(agent): preserve full command output in temp logs
...
Return only a 10KB preview to the agent so large command results do not overwhelm conversations while keeping the full output available for follow-up reads. Add pytest to the project dependencies to make the regression tests runnable in the project venv.
2026-05-06 20:04:17 +08:00
jxxghp
caf615f3bd
feat(system): implement one-shot upgrade mode and enhance upgrade handling
2026-05-05 15:22:33 +08:00
jxxghp
27436757a0
更新 version.py
2026-05-05 12:43:09 +08:00