79 Commits

Author SHA1 Message Date
Aqr-K
951cdc5b27 fix: arbitrate subscription identity and restore workflow state (#7147)
* fix: arbitrate subscription identity and restore workflow state

* test: preserve legacy empty-owner subscription transactions

* fix: align shared atomic configuration method with lifecycle prerequisite

---------

Co-authored-by: jxxghp <jxxghp@gmail.com>
2026-10-23 08:14:15 +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
Aqr-K
bf4ef4214e perf(mediaserver): add caller-controlled query projections (#7068)
* perf(mediaserver): add caller-controlled query projections

* test(mediaserver): cover query projection option contracts

---------

Co-authored-by: jxxghp <jxxghp@gmail.com>
2026-10-19 08:33:45 +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
c6527e2e6e mypy: type workflow event action parameters 2026-10-17 09:48:15 +08:00
jxxghp
a00aaf79f1 mypy: type plugin workflow action parameters 2026-10-17 09:48:15 +08:00
jxxghp
71b94046ed style(workflow): order download schema imports 2026-10-17 05:53:53 +08:00
jxxghp
cea9201c4e refactor(workflow): isolate transfer result settlement 2026-10-17 05:53:20 +08:00
jxxghp
969c16b998 refactor(workflow): isolate resource recognition before download 2026-10-17 05:53:17 +08:00
jxxghp
909425716a fix(workflow): validate incomplete download resources and outputs 2026-10-17 05:47:37 +08:00
jxxghp
82bc1c8443 fix(workflow): reject missing download paths before transfer 2026-10-17 05:47:33 +08:00
jxxghp
912264f0d7 fix(workflow): distinguish directory read failure from empty scan 2026-10-17 05:47:31 +08:00
jxxghp
dbae6bb214 fix(workflow): handle empty subscription input across loop iterations 2026-10-17 05:47:28 +08:00
jxxghp
58a4904399 fix(workflow): keep unknown downloads incomplete and normalize paths 2026-10-17 05:38:06 +08:00
jxxghp
3ec901c5c7 fix(workflow): handle absent media and unknown ratings 2026-10-17 05:38:04 +08:00
jxxghp
a9972f2b80 fix(types): separate workflow notification parameters 2026-10-17 05:38:01 +08:00
jxxghp
7474f96c73 fix(types): complete workflow note input contract 2026-10-17 05:37:59 +08:00
jxxghp
c6175bcdcf fix(types): define workflow action metadata and state contracts 2026-10-17 05:37:58 +08:00
jxxghp
5b0db854c4 fix(types): separate workflow search input and parsed parameters 2026-10-17 05:24:05 +08:00
jxxghp
4955b7b9ea fix: harden backend isolation and execution safety 2026-10-16 09:11:28 +08:00
jxxghp
5b8b16b38a fix(workflow): restore torrent node outputs before consumption (#6959) 2026-10-11 07:41:15 +08:00
InfinityPacer
3faa49fd7a fix(workflow): keep torrent contexts usable across persistence and filtering
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 18:44:19 +08:00
jxxghp
f03b5fb74c fix(workflow): accept RSS domain context when adding downloads (#6947) 2026-10-10 17:51:24 +08:00
jxxghp
9924e5e7ff fix(workflow): satisfy architecture gates for issue 6931 2026-10-09 23:58:33 +08:00
jxxghp
0115c41459 fix(workflow): 修复添加下载的媒体上下文类型 #6931 2026-10-09 21:33:06 +08:00
Aqr-K
d44480d739 Merge pull request #6666 from Aqr-K/feat/plugin-instance-target-enablement
feat(plugin): 插件实例默认调用目标与启停,未指定实例时不再兜底取第一个
2026-09-13 16:37:27 +08:00
jxxghp
60a95090b6 fix(workflow): 工作流添加下载支持 MetaInfo.season_list (#6637) 2026-09-10 20:13:04 +08:00
InfinityPacer
fe688aee9c fix(workflow): resolve plugin actions by public id 2026-08-31 13:30:27 +08:00
jxxghp
4575b11d84 fix(architecture): close canonical search type gate 2026-08-30 02:48:42 +08:00
jxxghp
c960a0184d refactor(architecture): complete final governance 2026-08-29 23:28:44 +08:00
jxxghp
fb5d7fc593 refactor(torrent): group application capability 2026-08-29 21:28:18 +08:00
jxxghp
92e745fc97 refactor(architecture): split chain owners and close runtime boundaries 2026-08-28 22:26:19 +08:00
jxxghp
2fe39d856c refactor(architecture): invert application adapter boundaries 2026-08-28 18:45:47 +08:00
jxxghp
eb45ed6b77 refactor(runtime): remove data service locators 2026-08-28 16:39:29 +08:00
jxxghp
7a10964526 refactor(subscription): close typed persistence boundary 2026-08-28 13:56:42 +08:00
jxxghp
017fecabd6 refactor(history): close transfer history boundary 2026-08-28 11:57:38 +08:00
jxxghp
b4f8736541 refactor(workflow): enforce typed query boundary 2026-08-28 01:16:08 +08:00
jxxghp
b914e8b6e4 refactor: strengthen architecture CI gates and runtime contracts 2026-08-25 17:02:29 +08:00
jxxghp
ffe6da2135 refactor: own active workflow executions 2026-08-24 16:26:39 +08:00
jxxghp
48e796cab7 refactor: unify workflow data port access 2026-08-24 04:11:09 +08:00
jxxghp
8555d0da3e refactor: use explicit system config getter 2026-08-24 04:04:35 +08:00
jxxghp
4dd2d7fed2 refactor: use explicit runtime facade getters 2026-08-24 03:56:54 +08:00
jxxghp
3a3c0b4ab6 refactor: migrate workflow actions to runtime config snapshot 2026-08-23 00:50:04 +08:00
jxxghp
ab51b5116a refactor: migrate workflow actions to runtime config snapshot 2026-08-23 00:37:03 +08:00
InfinityPacer
3a5947cc88 feat: 升级 V3 默认运行时至 Python 3.14 与 Debian Trixie (#6382) 2026-08-22 07:16:35 +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
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
Aqr-K
8a11214a43 refactor(db): 修复异步连接池无界增长,并完成 SQLAlchemy 2.0 迁移与分层归位 (#6320) 2026-08-15 06:58:38 +08:00