yanjunpu
|
0570eb24fc
|
Merge remote-tracking branch 'origin/v3' into codex/manual-source-classification
|
2026-09-07 23:27:11 +08:00 |
|
jxxghp
|
b40eda2617
|
fix(transfer): preserve durable retry for failed manual history
|
2026-09-07 23:17:00 +08:00 |
|
jxxghp
|
d6c8c8fbe7
|
Merge pull request #6600 from dogodefi/codex/music-authority-path
|
2026-09-07 20:46:23 +08:00 |
|
yanjunpu
|
598f526d37
|
fix(music): prefer selected album identity when renaming
|
2026-09-07 19:57:52 +08:00 |
|
jxxghp
|
db7faef202
|
refactor(config): use field policies for setting updates
|
2026-09-07 18:25:59 +08:00 |
|
yanjunpu
|
994fc3a6a4
|
fix(schema): keep request type imports private
|
2026-09-07 16:32:47 +08:00 |
|
yanjunpu
|
8a7e4b2fbc
|
fix(download): detect dotted torrent root folders
|
2026-09-07 16:25:21 +08:00 |
|
yanjunpu
|
471c624aee
|
fix(download): follow single-word module policy
|
2026-09-07 15:56:20 +08:00 |
|
yanjunpu
|
9a74802d2b
|
feat(download): recognize and organize existing tasks
|
2026-09-07 15:52:11 +08:00 |
|
jxxghp
|
1f8b1b55e0
|
Merge pull request #6596 from thsrite/feat/mediavault-mediaserver
|
2026-09-07 14:58:06 +08:00 |
|
thsrite
|
4a66d43366
|
fix(types): 补齐模块基类注解,消除新模块的类型门禁失败
Architecture Contract Gate 的 mypy ratchet 报出新模块两条错误,根因都在基类:
- ConfigReloadMixin.__init_subclass__ 缺注解,导致所有继承它的模块在类型化
上下文中被判 no-untyped-call
- _ModuleBase.init_setting 的返回注解为 Tuple[...],与其文档说明的
「不实现该方法或返回 None 代表不使用开关」矛盾,子类如实声明 Optional
就会被判 override 不兼容
两处均为纯注解修正,无行为变化。全量 mypy 错误由 9,496 降至 9,441(净减 55,
未新增任何错误),出错文件 514 → 513;同步固化 mypy 低水位与架构清单中的计数。
|
2026-09-07 14:33:01 +08:00 |
|
thsrite
|
d04b721f84
|
feat(mediaserver): 新增 MediaVault 自建媒体库模块
通过 MediaVault 管理端口的原生接口接入自建媒体库,凭据为管理面板的长效 API Key:
- 媒体库列表、条目分页遍历、条目详情与总数
- 按标题/年份/媒体身份判断电影与剧集存在性,季集齐全度与季集条目 ID
- 数量统计、最近入库、继续观看、封面与背景图直链、播放地址
- 入库后按目标路径命中媒体库并排队后台扫描,未命中时回退全库扫描
- 用 MediaVault 账号完成 MoviePilot 用户认证
MediaVault 无音乐库也不外发 Webhook,get_music 与 webhook_parser 不实现;
图片直链自带 API Key,无需 mediaserver_image_cookies。
同时把 mediavault 接入 mediaserver-operation Agent Skill 的 provider 清单。
|
2026-09-07 13:49:10 +08:00 |
|
jxxghp
|
44c41ec476
|
fix(config): separate auto-update and dev tracking settings for clarity
|
2026-09-07 13:35:52 +08:00 |
|
jxxghp
|
6ae5b9d9f0
|
fix(transfer): preserve frozen source step identity
|
2026-09-07 12:20:44 +08:00 |
|
jxxghp
|
90275e195e
|
fix(cli): suppress expected click typing warning
|
2026-09-07 12:12:14 +08:00 |
|
jxxghp
|
8167922949
|
docs(architecture): sync ruff metric
|
2026-09-07 12:02:48 +08:00 |
|
jxxghp
|
3436553d32
|
chore(architecture): sync ruff low-water mark
|
2026-09-07 11:53:41 +08:00 |
|
jxxghp
|
9b5f4d096d
|
chore(architecture): refresh concurrency owner baseline
|
2026-09-07 11:44:54 +08:00 |
|
jxxghp
|
373c398a7b
|
chore(architecture): refresh host dependency baseline
|
2026-09-07 11:35:41 +08:00 |
|
jxxghp
|
c56734a826
|
fix(docker): apply release updates before supervisor restart
|
2026-09-07 08:28:14 +08:00 |
|
yanjunpu
|
2361470af4
|
feat(download): classify existing source locations
|
2026-09-07 00:33:44 +08:00 |
|
jxxghp
|
b9120a5b6a
|
fix(classification): preserve non-TMDB legacy categories
|
2026-09-06 23:36:43 +08:00 |
|
jxxghp
|
e3a5e8a3e9
|
docs(architecture): sync mypy debt metric
|
2026-09-06 22:59:15 +08:00 |
|
jxxghp
|
43438f1230
|
docs: strengthen pre-commit CI gate guidance
|
2026-09-06 22:41:09 +08:00 |
|
jxxghp
|
eda80050c5
|
fix: restore search provider type contract
|
2026-09-06 22:36:07 +08:00 |
|
jxxghp
|
c41dc69596
|
fix: remove stale runtime profile import
|
2026-09-06 22:15:36 +08:00 |
|
jxxghp
|
75c0f4fc66
|
chore: record supervisor restart timer owner
|
2026-09-06 22:04:51 +08:00 |
|
jxxghp
|
d5605bb0a1
|
fix(scheduler): gate release update checks
|
2026-09-06 21:50:40 +08:00 |
|
jxxghp
|
3f70440f5f
|
fix: sync supervisor architecture health contracts
|
2026-09-06 21:45:17 +08:00 |
|
jxxghp
|
6a3e36087f
|
fix: update runtime checks for supervisor restart
|
2026-09-06 21:32:07 +08:00 |
|
jxxghp
|
e6f531d47f
|
refactor: manage Docker processes with supervisor
|
2026-09-06 21:21:06 +08:00 |
|
jxxghp
|
d11ed310e6
|
Merge pull request #6592 from jxxghp/fix/issue-6588
style: sort plugin policy imports
|
2026-09-06 17:40:18 +08:00 |
|
jxxghp
|
4371549cd4
|
style: sort plugin policy imports
|
2026-09-06 16:45:41 +08:00 |
|
jxxghp
|
c8e9e6f3e6
|
Merge pull request #6591 from jxxghp/fix/issue-6588
feat(search): log site durations
|
2026-09-06 16:30:08 +08:00 |
|
jxxghp
|
dd7d6db9a1
|
feat(search): log site durations
|
2026-09-06 16:25:41 +08:00 |
|
jxxghp
|
7e8095f9ac
|
Merge pull request #6590 from jxxghp/chore/bump-moviepilot-rust-0.3.5
chore: bump moviepilot-rust to 0.3.5
|
2026-09-06 15:17:34 +08:00 |
|
jxxghp
|
71dffb7e18
|
chore: bump moviepilot-rust to 0.3.5
|
2026-09-06 07:16:48 +00:00 |
|
jxxghp
|
78120664fb
|
Merge pull request #6589 from jxxghp/fix/issue-6588
|
2026-09-06 15:07:59 +08:00 |
|
jxxghp
|
edc15e9575
|
fix: recognize parenthesized tmdb ids
|
2026-09-06 14:54:44 +08:00 |
|
jxxghp
|
f06ffb08dd
|
Merge pull request #6587 from ga626/codex/github-transport-recovery
|
2026-09-06 11:20:13 +08:00 |
|
ga626
|
5edeef5a4d
|
fix(plugin-market): bound proxy failure handling
|
2026-09-06 10:53:49 +08:00 |
|
jxxghp
|
801fe5a34f
|
chore(architecture): sync mypy baseline
|
2026-09-06 10:29:28 +08:00 |
|
jxxghp
|
365a00cc4a
|
chore(architecture): refresh dependency baseline
|
2026-09-06 10:20:55 +08:00 |
|
jxxghp
|
82652add91
|
fix(auth): fix passkey deletion password verification
|
2026-09-06 10:05:40 +08:00 |
|
jxxghp
|
a4cb2870a1
|
chore: bump moviepilot-rust to 0.3.4
|
2026-09-06 09:04:34 +08:00 |
|
jxxghp
|
d82bcc5b90
|
fix(music): recognize real site titles and prefer native subtitle names
|
2026-09-06 09:00:13 +08:00 |
|
jxxghp
|
82c0b4d09a
|
fix(music): 恢复下载历史中缺失的已选音乐元数据
|
2026-09-06 08:21:30 +08:00 |
|
jxxghp
|
49414ffad2
|
test: 清理重复单元测试并记录审计依据
|
2026-09-06 07:58:07 +08:00 |
|
jxxghp
|
be41517520
|
fix: 防止音乐署名清理截断真实曲名
|
2026-09-06 04:55:08 +08:00 |
|
jxxghp
|
a01a941c11
|
fix: 对齐音乐备选来源匹配并校验录音版本证据
|
2026-09-06 04:06:00 +08:00 |
|