23 Commits

Author SHA1 Message Date
jxxghp
81260dc452 fix(notification): persist independent media posters 2026-10-24 19:11:27 +08:00
jxxghp
6d4ce83837 fix(types): clear host mypy debt and prevent typing regressions
严格检查全部宿主源码,清零类型错误预算并移除按模块类型豁免。
按原因、所属方法、错误码及语法指纹锁定必要兼容例外和站点类型桩,
CI 阻断新增忽略、检查范围退化、本地桩替代真实接口及新的类型错误。

修复空值、异步和供应方类型边界,保持插件与 API 兼容合同,
并补充存储、订阅、通知、Agent 和工作流边界的回归覆盖。
2026-10-21 22:03:18 +08:00
DDSRem
e0642eafa7 chore(types): reduce v3 host mypy debt (#7057)
* chore(types): clear AniList endpoint mypy debt

* chore(types): clear Douban endpoint mypy debt

* chore(types): clear recommendation endpoint mypy debt

* chore(types): clear subscription notification mypy debt

* chore(types): clear SDK string compatibility mypy debt

* chore(types): ratchet v3 host mypy across remaining files

* chore(types): reduce v3 host mypy debt and retire ledger

* chore(types): reconcile host snapshot with upstream HTTP pool

* test(types): cover host paths exposed by mypy cleanup
2026-10-18 09:37:49 +08:00
DDSRem
2de976f6b3 Merge pull request #7050 from DDSRem-Dev/codex-comment-migration
docs: 统一全项目中文注释和结构化契约说明
2026-10-17 19:26:29 +08:00
jxxghp
c1d7deada8 fix(types): type messaging template and queue boundaries 2026-10-17 18:23:57 +08:00
jxxghp
754da97d97 fix(music): apply simplified metadata to manual transfers
Normalize album details and final music template fields while preserving local edition evidence, multi-artist credits and source objects. Refs #6870.
2026-10-04 08:47:15 +08:00
Cat
eb76fcafd6 fix(notification): 限制实时消息队列积压并在 SSE 重连后一次推送 (#6862) 2026-10-02 21:32:18 +08:00
InfinityPacer
0100992b58 fix(notification): mark realtime notification type and severity
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 15:04:01 +08:00
jxxghp
b43ae37e62 feat(message): expose instance hostname in templates (#6815) 2026-09-29 08:31:20 +08:00
jxxghp
9e1c25124b fix(transfer): restore regression and architecture gates 2026-09-09 13:40:35 +08:00
yanjunpu
598f526d37 fix(music): prefer selected album identity when renaming 2026-09-07 19:57:52 +08:00
jxxghp
094621f5b8 refactor(parity): unify message and douban decisions 2026-08-29 21:50:09 +08:00
jxxghp
9bff18739d refactor(runtime): own lifecycle and adapter boundaries 2026-08-28 18:18:07 +08:00
jxxghp
6062b06610 fix(quality): close type and lint ratchets 2026-08-26 21:55:01 +08:00
jxxghp
b914e8b6e4 refactor: strengthen architecture CI gates and runtime contracts 2026-08-25 17:02:29 +08:00
jxxghp
ad45bfac5d refactor: unify message queue shutdown convergence 2026-08-24 14:25:59 +08:00
InfinityPacer
146f8649f6 fix(runtime): 隔离线程任务上下文 (#6420)
* fix(runtime): isolate thread task contexts

* test: use canonical message schema import
2026-08-23 20:10:23 +08:00
jxxghp
f4a879b3de fix(rename): 剥离专辑名尾部年份,避免重命名目录重复年份 (#6355)
音频标签或下载目录常把发行年份写进专辑名(如 "欲望反光 (2018)"),
而音乐重命名模板会独立追加 ({{year}}),两者叠加生成 "欲望反光 (2018) (2018)"
这类重复年份目录,并把同一专辑拆到多个目录。

在模板上下文中统一剥离专辑名尾部的括号年份;仅当存在可独立渲染的
年份时才剥离,避免丢失只存在于专辑名中的年份信息。
2026-08-19 17:26:35 +08:00
jxxghp
8472bcff43 refactor: 收口 V3 分层架构与插件兼容边界 2026-08-18 13:22:02 +08:00
jxxghp
240a4dffe6 refactor(schemas): 统一 message/notification 命名边界,旧名收敛至兼容映射表
- notification 域:渠道能力(MessageChannel→NotificationChannel、ChannelCapability* 迁入 notification.py)
- message 域:消息收发(Notification→Message、NotificationType→MessageType、CommingMessage→IncomingMessage、NotificationHistoryItem→MessageHistoryItem、NotificationClear*→MessageClear*)
- Agent 工具契约:send_notification_message→send_message、notification_callback→message_callback
- 源码不保留旧名物理别名,旧导入经 app/runtime/compat/manifest.py SYMBOL_ALIASES 惰性解析
- API 路径与持久化键冻结不变,前端零改动
- 新增兼容守护测试与 docs/rules/07 命名边界规范
2026-08-16 19:32:20 +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
369d7d6448 refactor: reorganize backend module boundaries 2026-08-14 19:53:33 +08:00