jxxghp
1af5b8f019
fix(ci): sync architecture quality metric
2026-09-10 10:06:22 +08:00
jxxghp
4deb5cc408
fix(ci): refresh post-merge quality baselines
2026-09-10 09:58:08 +08:00
jxxghp
0a43a307c4
fix(ci): restore architecture gate parity
2026-09-10 09:45:58 +08:00
jxxghp
21e154d6d2
feat(agent): deliver browser screenshots as model-visible images
2026-09-10 02:17:01 +08:00
jxxghp
02d528310b
fix(db): release worker capacity before publishing results
2026-09-10 00:29:09 +08:00
jxxghp
53f7012b6b
feat(music): add AMLL TTML lyrics source
2026-09-09 23:53:30 +08:00
jxxghp
827856d1a7
docs(architecture): sync reduced Ruff diagnostic count
2026-09-09 23:37:53 +08:00
jxxghp
17eaf47c34
refactor(music)!: remove Musixmatch and expose lyrics plugin types
...
BREAKING CHANGE: remove the Musixmatch module and settings without migration. Lyrics providers can use the public music candidate SDK and existing plugin module hook.
2026-09-09 23:04:20 +08:00
jxxghp
deff3795b4
fix(agent): enforce read-only subagent tool actions
2026-09-09 21:03:48 +08:00
jxxghp
5fa5b414aa
feat(agent): harden tool outcomes, recovery and discovery
2026-09-09 19:55:21 +08:00
jxxghp
c0ed78e168
feat(agent): strengthen planning, tool discovery and recovery
2026-09-09 19:37:11 +08:00
jxxghp
022dd006a5
fix(transfer): allow manual reorganization after stale task failures
...
Refs #6625
2026-09-09 17:53:24 +08:00
jxxghp
22e3b197c5
Merge pull request #6627 from InfinityPacer/fix/rss-complexity-gate
...
重构:统一 HTTP URL 校验并修复 RSS 复杂度门禁
2026-09-09 17:31:26 +08:00
InfinityPacer
b6fe6998eb
refactor(url): centralize HTTP URL validation in UrlUtils
2026-09-09 17:30:03 +08:00
yanjunpu
89917a7baf
docs: classify music library status route
2026-09-09 17:01:12 +08:00
jxxghp
29cb80a2ad
docs(architecture): sync subscription search dependency counts
2026-09-09 16:56:01 +08:00
jxxghp
5a214afc19
fix(subscribe): keep scheduled searches progressing across site retries
2026-09-09 16:45:42 +08:00
jxxghp
538ec30034
docs: sync mypy debt count after TMDB retry fix
2026-09-09 14:24:56 +08:00
jxxghp
9e1c25124b
fix(transfer): restore regression and architecture gates
2026-09-09 13:40:35 +08:00
ranzhigg
2ea04c1687
docs(architecture): sync Ruff quality metric
2026-09-09 10:14:13 +08:00
ranzhigg
221772c3b3
test(architecture): refresh v3 dependency baseline
2026-09-09 08:30:04 +08:00
jxxghp
fb48751745
Merge pull request #6617 from ranzhigg/fix/plugin-market-global-flight
2026-09-09 08:21:17 +08:00
ranzhigg
0c1c4adebe
docs(architecture): refresh dependency edge metrics
2026-09-09 08:14:25 +08:00
yanjunpu
2e8664c1dc
fix(music): scope and rank manual search results
2026-09-09 03:57:20 +08:00
jxxghp
a69c9073cb
feat(transfer): implement recovery commands for discarding corrupt tasks
2026-09-08 23:15:38 +08:00
jxxghp
64543a3765
Merge branch 'v3' into codex/music-album-batch-transfer
2026-09-08 22:29:45 +08:00
yanjunpu
13f0ac4faa
fix(transfer): reidentify selected music history batches
2026-09-08 22:17:45 +08:00
yanjunpu
5a4a5a1188
Merge remote-tracking branch 'origin/v3' into codex/manual-source-classification
...
# Conflicts:
# docs/architecture-overview.md
# docs/architecture/optimization-checklist.md
# tests/fixtures/architecture/dependency-baseline.json
2026-09-08 13:45:01 +08:00
jxxghp
bf11461d11
docs(architecture): sync dependency edge metrics
2026-09-08 09:39:46 +08:00
yanjunpu
9985e22e82
fix(download): apply effective music category paths
2026-09-08 02:56:14 +08:00
yanjunpu
78b678a5df
fix(classification): add safe music category defaults
2026-09-08 02:24:49 +08:00
yanjunpu
f0198c22e1
fix(download): harden source organization planning
2026-09-08 00:10:41 +08:00
yanjunpu
e267a18476
Merge remote-tracking branch 'origin/v3' into codex/manual-source-classification
...
# Conflicts:
# tests/fixtures/architecture/dependency-baseline.json
2026-09-07 23:50:34 +08:00
yanjunpu
7c270737f0
fix(download): satisfy source classification gates
2026-09-07 23:47:01 +08:00
yanjunpu
0570eb24fc
Merge remote-tracking branch 'origin/v3' into codex/manual-source-classification
2026-09-07 23:27:11 +08:00
jxxghp
7ccb1d9dee
feat(classification): provide source-aware condition dictionaries
2026-09-07 23:21:25 +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
8167922949
docs(architecture): sync ruff metric
2026-09-07 12:02:48 +08:00
jxxghp
373c398a7b
chore(architecture): refresh host dependency baseline
2026-09-07 11:35:41 +08:00
yanjunpu
2361470af4
feat(download): classify existing source locations
2026-09-07 00:33:44 +08:00
jxxghp
e3a5e8a3e9
docs(architecture): sync mypy debt metric
2026-09-06 22:59:15 +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
be41517520
fix: 防止音乐署名清理截断真实曲名
2026-09-06 04:55:08 +08:00
jxxghp
a01a941c11
fix: 对齐音乐备选来源匹配并校验录音版本证据
2026-09-06 04:06:00 +08:00
jxxghp
976cecce8f
fix: 对齐音乐候选识别和缓存匹配规则
2026-09-06 02:21:03 +08:00
jxxghp
916619f2e2
fix: 对齐音乐识别词并补齐版本和专辑匹配证据
2026-09-06 01:28:47 +08:00
jxxghp
fba0b6ae67
refactor: 统一音乐与影视的识别搜索匹配流程
2026-09-06 00:48:00 +08:00
jxxghp
41d46d1b5c
fix: 无损合并旧分类枚举并隔离迁移校验失败
2026-09-05 23:08:25 +08:00