OneMoon
7205f8d9e2
fix(search): include plugin resources without indexers ( #6399 )
2026-08-23 09:21:04 +08:00
jxxghp
1bb6e36e8c
refactor: complete runtime configuration migration
2026-08-22 19:07:07 +08:00
jxxghp
2d982f08fa
fix(search): disambiguate yearless same-title resources
2026-08-22 11:35:01 +08:00
jxxghp
97d2dcd7fb
fix(ci): align architecture and pylint gates
2026-08-22 08:50:25 +08:00
jxxghp
03ada7eb01
refactor: 收敛 factory 模块级副作用并统一 async 路径进度为异步后端
...
- 将 configure_token_codec/configure_plugin_routes 移入 create_app(),消除 import 期副作用
- runtime 层新增 AsyncCacheProxy/AsyncTTLCache/AsyncProgressHelper,共享 progress region
- search/system/history/scheduler/dashboard 的事件循环路径切换异步进度后端
- 同步进度回调经事件循环提交或线程池执行,避免阻塞事件循环
2026-08-19 09:11:42 +08:00
jxxghp
8472bcff43
refactor: 收口 V3 分层架构与插件兼容边界
2026-08-18 13:22:02 +08:00
jxxghp
5128ae9e1e
refactor: 推进后端分层架构治理
2026-08-18 00:29:14 +08:00
InfinityPacer
5b367011c5
refactor(agent): 按需加载 Agent 运行时 ( #6336 )
2026-08-16 19:25:24 +08:00
jxxghp
7e851dbfa7
refactor(chain): 处理链功能域 mixin 化,清理未使用导入并根治兼容层循环导入
...
- ChainBase 拆分为 RecognitionMixin/MessageProcessingMixin/NotificationMixin
- TransferChain 拆分为 7 个功能 mixin(_mixins.py),SubscribeChain 音乐订阅域拆出 _music.py
- 斜杠命令交互四件套收敛为 InteractionChainMixin 委托,会话管理器移至 application 层,chain 层不再 re-export
- 模块基础类收敛到 app/modules/_base(notification/mediaserver 语义重命名)
- 清理 app/chain/__init__.py 24 个未使用导入,修正 49 处测试 patch 目标到实际命名空间
- 兼容层 legacy 符号不再并入 __all__,根治 schemas 初始化反向拉起 application.transfer 的循环导入
- 修复 bangumi 集数为字符串时 set_bangumi_info 抛 TypeError
- 新增重复代码等架构门禁测试;capability 清单校验排除下划线内部目录
2026-08-16 16:30:16 +08:00
jxxghp
96118e73e7
refactor(string): split utilities by responsibility
2026-08-15 08:03:55 +08:00
Aqr-K
8a11214a43
refactor(db): 修复异步连接池无界增长,并完成 SQLAlchemy 2.0 迁移与分层归位 ( #6320 )
2026-08-15 06:58:38 +08:00
jxxghp
e28de9cfe1
fix: 修复音乐搜索进度更新
2026-08-14 22:15:17 +08:00
jxxghp
369d7d6448
refactor: reorganize backend module boundaries
2026-08-14 19:53:33 +08:00
jxxghp
7b3444c366
refactor backend module architecture
2026-08-14 15:45:38 +08:00
jxxghp
86b35bda9a
fix: 优先使用简体音乐关键词搜索
2026-08-13 21:53:18 +08:00
jxxghp
d611891296
fix: 放宽音乐资源标题匹配
2026-08-13 20:57:15 +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
97dba2a8ae
feat: unify media recognition and music lifecycle
2026-08-12 06:51:58 +08:00
jxxghp
60dc01694f
feat(search): 搜索流事件携带过滤前候选资源数 candidate_items
...
标题搜索流逐批过滤导致候选数丢失,媒体搜索流最终事件补充候选数,供前端在候选全部被过滤规则淘汰时给出友好提示。Closes jxxghp/MoviePilot-Frontend#646
2026-08-10 21:41:04 +08:00
jxxghp
75e56d8e9a
feat(music): add audio quality workflow
2026-08-10 10:23:02 +08:00
jxxghp
393a4ca4e2
feat(music): complete album subscription workflow
2026-08-09 20:43:33 +08:00
jxxghp
60aa762ca1
feat: 音乐识别与刮削统一入口整合
...
- 音乐识别统一走 recognize_media,移除 MusicChain.recognize/async_recognize 及 /music/search 独立端点
- 音乐刮削收拢到 MediaChain.scrape_music_metadata,消除 MusicChain 对 MediaChain 的嵌套引用
- MetaInfo/MetaInfoPath 增加 force_video 参数,影视附加音轨保留季集归属
- 整理、订阅、搜索、API 层音乐识别入口全部统一
2026-08-09 10:06:54 +08:00
jxxghp
7797d34c48
feat: 识别文件类型:音乐
2026-08-08 23:38:34 +08:00
jxxghp
05d15a04f5
feat(v3): add music automation workflow
2026-08-07 21:50:22 +08:00
jxxghp
3b709b7f2e
feat: unify media source identity flow ( #6129 )
2026-07-21 20:20:09 +08:00
InfinityPacer
5588e37c6d
fix: preserve season zero semantics ( #6150 )
2026-07-20 06:55:23 +08:00
jxxghp
b231ad415f
fix title search filter rules
2026-07-05 17:02:19 +08:00
jxxghp
d4b6d3f332
refactor: remove persist_output_message functionality and related database save logic
2026-06-17 16:14:35 +08:00
jxxghp
fa06d5d861
fix: improve subtitle parsing and matching
2026-06-10 00:54:58 +08:00
jxxghp
210aac0937
feat: add exact subtitle search
2026-06-09 17:04:17 +08:00
jxxghp
e3c5a94c52
feat: add subtitle search functionality and related data handling
2026-06-09 06:46:26 +08:00
jxxghp
cb15b711b9
refactor(subscribe): unify best_version episode upgrade logic and always track downloads in note
...
- Simplify and centralize logic for filtering TV episodes during best_version (wash) mode, ensuring only episodes with strictly higher priority are considered for upgrade.
- Always update subscribe.note with downloaded episodes regardless of best_version state, ensuring download history is reliably tracked and available for all subscription modes.
- Remove redundant episode_group field from subscribe dict output.
- Refactor search: remove multi-page search logic, streamline concurrent site search for both sync and async paths, and update progress reporting accordingly.
- Remove obsolete tests for allowed_episodes propagation and note tracking, as logic is now unified and simplified.
2026-05-22 12:34:13 +08:00
jxxghp
7866aee1de
fix: stop torrent search paging after short pages
2026-05-19 17:54:39 +08:00
jxxghp
bedf06b864
feat: support multi-page resource search
2026-05-18 09:48:43 +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
2c45831714
feat(subscribe): add episode priority tracking for subscription updates
2026-05-12 17:22:50 +08:00
InfinityPacer
98347669ea
feat(search): mark search result context source
2026-05-08 14:53:22 +08:00
jxxghp
924d54dfd3
perf(search): 按站点并行过滤搜索结果
2026-05-05 09:01:18 +08:00
jxxghp
6532c60a3c
Refine agent background reply handling
2026-04-30 00:25:23 +08:00
jxxghp
7586a2cd42
disable agent message tools for ui background tasks
2026-04-29 23:30:59 +08:00
jxxghp
7ab643d34a
suppress channel notifications for ui background tasks
2026-04-29 23:13:57 +08:00
jxxghp
0b7505a604
refactor search AI recommendation flow
2026-04-29 22:55:27 +08:00
jxxghp and Copilot
019a077407
Apply suggestions from code review
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-04-27 11:35:44 +08:00
PKC278
0f190057d3
fix #5528
2026-04-27 11:35:44 +08:00
jxxghp
10543eedd0
feat(search): 支持渐进式(SSE)搜索资源并实时返回搜索进度与结果
...
- 新增 /media/{mediaid}/stream 和 /title/stream 接口,支持基于 SSE 的渐进式搜索
- SearchChain 增加 async_search_by_title_stream、async_search_by_id_stream、async_process_stream、__async_search_all_sites_stream 方法
- 搜索结果按站点完成顺序实时推送,支持进度、候选、过滤、完成等阶段事件
- 优化参数解析与异常处理,提升大规模搜索体验
2026-04-10 16:50:23 +08:00
jxxghp
6065c29891
Revert "Merge pull request #5573 from wikrin/refactor-static-methods-conversion"
...
This reverts commit b8fc20b981 , reversing
changes made to e09cfc6704 .
2026-03-14 18:21:31 +08:00
Attente
b89825525a
refactor(helper): 将DirectoryHelper、RuleHelper和TorrentHelper方法改为静态方法
...
- 移除不必要的实例化操作,直接使用类方法
2026-03-13 19:50:10 +08:00
YuF-9468
591aa990a6
fix(search): call match_season_episodes via class to avoid bound-arg conflict
2026-03-12 09:27:31 +08:00
jxxghp
d469c2d3f9
refactor: 统一将布尔判断 if var: 和 if not var: 更改为显式的 if var is not None: 和 if var is None: 以正确处理 None 值。
2026-02-02 13:49:32 +08:00