Commit Graph
182 Commits
Author SHA1 Message Date
jxxghp 362f606751 feat(governance): unify durable event retention 2026-08-26 12:45:44 +08:00
jxxghp b914e8b6e4 refactor: strengthen architecture CI gates and runtime contracts 2026-08-25 17:02:29 +08:00
InfinityPacer adbeff95d0 fix(plugin): serialize dynamic route projection (#6441) 2026-08-25 06:40:43 +08:00
jxxghp 84326e20de feat(system): add staged release updates 2026-08-24 17:58:03 +08:00
InfinityPacer feff545b16 refactor: isolate agent task execution data boundary (#6433) 2026-08-24 12:14:46 +08:00
jxxghp 8e669d415e refactor: unify host agent runtime access 2026-08-24 06:42:07 +08:00
jxxghp 4575146acd refactor: require scheduler task ownership 2026-08-24 05:25:43 +08:00
jxxghp cb3c5f008f refactor: unify service configuration boundary 2026-08-24 05:12:21 +08:00
jxxghp 4dd2d7fed2 refactor: use explicit runtime facade getters 2026-08-24 03:56:54 +08:00
jxxghp 9b0a96083f refactor: unify plugin runtime access 2026-08-23 23:56:31 +08:00
jxxghp 2372b1236e refactor: remove final async blocking query 2026-08-23 23:46:15 +08:00
InfinityPacer af338a0a5d fix(scheduler): preserve completed task outcome on stop (#6418) 2026-08-23 19:23:13 +08:00
InfinityPacer e1d7918297 fix(runtime): 收口调度与事件异步任务生命周期 (#6415) 2026-08-23 17:17:59 +08:00
jxxghp cd97b1300a fix(scheduler): close async task lifecycle 2026-08-23 15:41:07 +08:00
jxxghp 97d2dcd7fb fix(ci): align architecture and pylint gates 2026-08-22 08:50:25 +08:00
jxxghp 5d9c6c8b19 refactor: expand runtime contracts and debt ratchets 2026-08-22 08:25:36 +08:00
jxxghp 43cccb8ff8 feat: add low-cardinality observation port 2026-08-21 22:15:47 +08:00
jxxghp 47f1ff9cb4 feat: propagate request correlation context 2026-08-21 22:08:33 +08:00
jxxghp c755c074b9 refactor: dataize scheduler job contracts 2026-08-21 21:59:11 +08:00
jxxghp dce7372b81 feat: persist subscription side-effect outbox 2026-08-21 21:50:18 +08:00
InfinityPacer 2b3766e86e feat: 数据库迁移前自动备份 (#6360) 2026-08-19 18:35:56 +08:00
InfinityPacer f700db5ac8 feat(database): add managed backup and offline restore (#6359) 2026-08-19 17:34:32 +08:00
jxxghp 03ada7eb01 refactor: 收敛 factory 模块级副作用并统一 async 路径进度为异步后端
- 将 configure_token_codec/configure_plugin_routes 移入 create_app(),消除 import 期副作用
- runtime 层新增 AsyncCacheProxy/AsyncTTLCache/AsyncProgressHelper,共享 progress region
- search/system/history/scheduler/dashboard 的事件循环路径切换异步进度后端
- 同步进度回调经事件循环提交或线程池执行,避免阻塞事件循环
2026-08-19 09:11:42 +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 2edc7d54f4 fix text 2026-08-17 13:47:48 +08:00
jxxghp 72f5667927 refactor(scheduler): 缓存清理改为仅手动执行
移除 clear_cache 的 add_job 注册,不再自动定时执行。
在 _jobs 中标记 manual=True 并补充 provider_name,
list() 新增手动任务展示段,未调度的手动任务也能在 UI 中显示和手动触发。
2026-08-17 13:38:01 +08:00
jxxghp 252f0f986f fix(scheduler): 恢复缓存清理定时任务注册
commit 4b1df72a 移除了 clear_cache 的 add_job 调用但保留了 _jobs 定义,
导致任务在 UI 中不可见、无法手动执行。现以固定 24 小时间隔重新注册,
不再绑定 META_CACHE_EXPIRE。
2026-08-17 13:33:32 +08:00
jxxghp 48d85b798b feat(scheduler): 下载失败冷却记录加入定时清理
新增 DATA_CLEANUP_DOWNLOAD_FAILURE_DAYS 配置项(默认 7 天),
在 _build_cleanup_plans 中增加 downloadfailure 清理计划,
调用已有的 DownloadFailure.delete_expired 删除冷却已过期的记录。
2026-08-17 13:29:42 +08:00
InfinityPacer 4e47cce5f2 fix(runtime): prevent implicit scheduler startup (#6337) 2026-08-16 19:48:22 +08:00
jxxghp 54f093a099 Merge remote-tracking branch 'origin/v3' into v3
# Conflicts:
#	app/api/endpoints/agent.py
#	app/api/endpoints/anthropic.py
#	app/api/endpoints/openai.py
#	app/chain/__init__.py
#	app/chain/message.py
#	app/chain/site.py
#	app/chain/subscribe.py
#	app/chain/transfer.py
#	app/modules/discord/__init__.py
#	app/modules/qqbot/__init__.py
#	app/modules/slack/__init__.py
#	app/modules/telegram/__init__.py
#	app/modules/wechat/__init__.py
#	app/runtime/extensions/module_manager.py
#	app/runtime/extensions/service_registry.py
#	tests/test_agent_interaction.py
#	tests/test_slash_command_interactions.py
#	tests/test_web_agent_stream.py
2026-08-16 19:44:43 +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
InfinityPacer 5b367011c5 refactor(agent): 按需加载 Agent 运行时 (#6336) 2026-08-16 19:25:24 +08:00
jxxghp 7e851dbfa7 refactor(chain): 处理链功能域 mixin 化,清理未使用导入并根治兼容层循环导入
- ChainBase 拆分为 RecognitionMixin/MessageProcessingMixin/NotificationMixin
- TransferChain 拆分为 7 个功能 mixin(_mixins.py),SubscribeChain 音乐订阅域拆出 _music.py
- 斜杠命令交互四件套收敛为 InteractionChainMixin 委托,会话管理器移至 application 层,chain 层不再 re-export
- 模块基础类收敛到 app/modules/_base(notification/mediaserver 语义重命名)
- 清理 app/chain/__init__.py 24 个未使用导入,修正 49 处测试 patch 目标到实际命名空间
- 兼容层 legacy 符号不再并入 __all__,根治 schemas 初始化反向拉起 application.transfer 的循环导入
- 修复 bangumi 集数为字符串时 set_bangumi_info 抛 TypeError
- 新增重复代码等架构门禁测试;capability 清单校验排除下划线内部目录
2026-08-16 16:30:16 +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
jxxghp 7b3444c366 refactor backend module architecture 2026-08-14 15:45:38 +08:00
InfinityPacer 57e7f86f38 feat(agent): record task run history (#6305) 2026-08-13 22:13:36 +08:00
InfinityPacer e014604b1c fix: 避免服务重启后重复执行 Agent 定时任务 (#6302) 2026-08-13 19:25:11 +08:00
InfinityPacer 4d11a38496 fix(agent): propagate task cancellation (#6284) 2026-08-13 08:12:00 +08:00
jxxghp 4b1df72a4a refactor(cache): simplify recognition cache persistence 2026-08-06 07:48:43 +08:00
jxxghp e3f80af74f feat: expand metadata sources and media server sync (#6129) 2026-07-21 11:34:18 +08:00
jxxghpandtraeagent 318d2ab7d7 feat: 修复单元测试失败 (#6165)
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
2026-07-21 07:41:34 +08:00
jxxghp d666134ed2 Route autonomous agent tasks through notification broadcasting 2026-07-20 08:54:32 +08:00
jxxghp 31544629b4 Add autonomous Agent task scheduling 2026-07-19 20:19:06 +08:00
InfinityPacer 7725342a80 fix(scheduler): refresh plugin jobs after reload (#6124) 2026-07-15 17:29:31 +08:00
jxxghp 9eb71c744b feat(mediaserver): add item count retrieval for various media servers 2026-06-29 10:45:10 +08:00
jxxghp 494f809ef0 Refine transfer history batch actions 2026-06-29 07:07:33 +08:00
jxxghp 6557b8b9d8 更新 scheduler.py 2026-05-27 15:56:08 +08:00
jxxghp 0e5c592862 refactor: centralize MoviePilot server helper 2026-05-27 12:56:45 +08:00