Commit Graph
74 Commits
Author SHA1 Message Date
jxxghp 52fd495d38 refactor: normalize downloader file contracts 2026-08-24 02:10:04 +08:00
jxxghp 5128ae9e1e refactor: 推进后端分层架构治理 2026-08-18 00:29:14 +08:00
Aqr-K 8a11214a43 refactor(db): 修复异步连接池无界增长,并完成 SQLAlchemy 2.0 迁移与分层归位 (#6320) 2026-08-15 06:58:38 +08:00
jxxghp b4863a6550 feat(media): support extensible media sources 2026-08-13 13:26:17 +08:00
Aqr-KandAqr-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 baf8850d63 refactor(api): standardize responses and restore media config contracts 2026-08-12 23:15:13 +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 3f1b0cdb05 feat(music): 支持多源识别与元数据刮削 2026-08-11 23:34:00 +08:00
jxxghp 05d15a04f5 feat(v3): add music automation workflow 2026-08-07 21:50:22 +08:00
jxxghp 36dd381260 feat(download): expose source site for active tasks (#6231) 2026-08-03 18:40:08 +08:00
jxxghp cae28d8c03 fix(transfer): 支持显式重新整理历史记录 2026-07-26 08:59:57 +08:00
jxxghp ff9ba79b60 Codex/fix season subscription poster (#6185) 2026-07-25 08:07:08 +08:00
jxxghp 3b709b7f2e feat: unify media source identity flow (#6129) 2026-07-21 20:20:09 +08:00
jxxghp e3f80af74f feat: expand metadata sources and media server sync (#6129) 2026-07-21 11:34:18 +08:00
jxxghp 6a635ac720 feat: enhance agent download task controls 2026-06-15 13:51:35 +08:00
jxxghp bef2a81296 fix downloader task status queries 2026-06-14 18:23:18 +08:00
jxxghp b89c351686 allow auto manual transfer scrape option 2026-06-13 10:42:34 +08:00
jxxghp b1259fdc02 feat: add manual transfer target path matching 2026-05-27 13:26:01 +08:00
Album 2eb7f57a4c feat: 支持多文件手动整理与集数定位模板推荐 (#5820) 2026-05-23 09:23:50 +08:00
jxxghp 617692616c fix: build complete transfer result at source 2026-05-20 22:09:57 +08:00
jxxghp 0fb9d18b30 fix: keep transfer event normalization in domain 2026-05-20 21:03:33 +08:00
Album 9e9c398177 feat: 新增集数定位模板生成接口 (#5785) 2026-05-19 07:18:28 +08:00
jxxghp f4423e121e fix: aggregate metadata scrape events 2026-05-14 07:38:06 +08:00
album 05b34b9c26 feat(transfer): 增加手动整理预览模式(preview mode)
- ManualTransferItem/TransferTask 增加 preview 字段,支持同一接口双模式
- /api/v1/transfer/manual 透传 preview,预览时返回结构化结果不落盘
- ChainBase.transfer 增加 preview 参数并透传到 run_module
- TransferChain.do_transfer 预览分支复用完整命名/覆盖判定逻辑(dry-run)
- TransferChain.do_transfer 预览结束后显式 finish_task/fail_task,避免任务残留 running 状态导致重复预览失败
- TransHandler.transfer_media 预览分支跳过实际 copy/move/link/delete,仅返回目标路径
- FileManagerModule.transfer 透传 preview 参数
- 修复 /manual 失败分支 dict 类型导致 Response.message 校验错误
- 兼容性:preview 字段有默认值,旧客户端不传参时行为不变
2026-05-12 10:14:58 +08:00
jxxghp aae50004b1 feat: 新增修改下载任务Agent工具,查询下载任务支持返回标签
- 新增 modify_download Agent工具,支持通过hash修改下载任务的标签、开始和暂停下载
- 在 ChainBase 及三个下载器模块中新增 set_torrents_tag 方法
- DownloadingTorrent schema 新增 tags 字段
- 各下载器模块构建 DownloadingTorrent 时填充 tags
- query_download_tasks 工具输出中新增 tags 字段
2026-03-24 18:33:06 +08:00
jxxghp d8dc53805c feat(transfer): 整理事件增加历史记录ID 2026-01-26 21:29:05 +08:00
jxxghp 7218d10e1b feat(transfer): 拆分字幕和音频整理事件 2026-01-26 19:33:50 +08:00
jxxghp ed294d3ea4 Revert "fix schemas"
This reverts commit a5e7483870.
2025-11-17 11:48:18 +08:00
jxxghp a5e7483870 fix schemas 2025-11-17 10:58:24 +08:00
jxxghp d523c7c916 fix pydantic 2025-11-01 09:51:23 +08:00
jxxghp 7e3e0e1178 fix #4725 2025-08-11 18:29:29 +08:00
jxxghp 72fce20905 feat:整理后记录字幕和音频文件 2025-05-24 20:58:46 +08:00
jxxghp 1eb41c20d5 fix TransferInfo 2025-05-24 15:40:03 +08:00
jxxghp 078b60cc1e feat:支持指定剧集组识别和刮削 2025-04-03 18:35:02 +08:00
jxxghp 22b69f7dac fix blanke 2025-03-23 22:35:37 +08:00
jxxghp 1317d9c4f0 fix actions 2025-02-19 16:43:42 +08:00
jxxghp 22b1ebe1cf fix #3724 2025-01-15 08:14:39 +08:00
Attente 03b96fa88b fix: 类型注解 2025-01-15 02:54:22 +08:00
jxxghp 9446e88012 fix #3689 2025-01-08 11:37:58 +08:00
jxxghp 922c391ffc fix 2025-01-07 14:39:15 +08:00
jxxghp 39169e8faa fix 2025-01-07 14:38:26 +08:00
jxxghp 23650657cd add noqa
fix #3670
2025-01-07 14:20:31 +08:00
jxxghp 5d2a911849 feat:手动刮削时强制覆盖 2025-01-05 15:38:13 +08:00
jxxghp 41636395ff fix 整理入库消息用户隔离 2025-01-05 12:35:21 +08:00
InfinityPacer 166674bfe7 feat(transfer): match source dir in subdirs or prioritize same drive 2024-12-30 02:11:48 +08:00
jxxghp 2b40e42965 fix bug 2024-12-27 21:16:38 +08:00
jxxghp e3552d4086 feat:识别支持后台处理 2024-12-27 17:45:04 +08:00
jxxghp 10f8efc457 TODO 后台整理队列 2024-12-23 18:59:36 +08:00