Commit Graph
187 Commits
Author SHA1 Message Date
jxxghp 3fc593f5f6 feat: wire agent runtime metrics 2026-08-22 13:26:22 +08:00
jxxghp 996a1a0705 refactor: expand api and chain config snapshots 2026-08-22 13:22:33 +08:00
jxxghp 7bc5e01afd refactor: expand async and type safety gates 2026-08-22 13:21:52 +08:00
jxxghp 677f6a66c2 refactor: complete host module and event contracts 2026-08-22 13:21:52 +08:00
jxxghp e61b5168ad refactor: move workflow execution writes to uow 2026-08-22 13:21:52 +08:00
jxxghp fa2bf1fe4d refactor: expand chain runtime config snapshot 2026-08-22 13:21:52 +08:00
InfinityPacer 941c167084 docs(testing): scope local full-suite requirements (#6390) 2026-08-22 13:17:00 +08:00
jxxghp 9273d68aa7 feat(telegram): support rich Agent messages 2026-08-22 10:11:18 +08:00
jxxghp 5d9c6c8b19 refactor: expand runtime contracts and debt ratchets 2026-08-22 08:25:36 +08:00
jxxghp 820f7e8850 refactor: make download and transfer events durable 2026-08-22 08:03:00 +08:00
jxxghp c5de1c7b1b refactor: make subscription lifecycle events durable 2026-08-22 07:43:41 +08:00
jxxghp b6a8d76975 docs: record architecture refactor completion 2026-08-21 22:37:11 +08:00
jxxghp 1b253510e1 ci: block new async blocking calls 2026-08-21 22:29:19 +08:00
jxxghp dd246fe045 ci: enforce complexity reduction ratchet 2026-08-21 22:23:37 +08:00
jxxghp 59fa3c0e74 ci: add incremental strict type gate 2026-08-21 22:21:23 +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
jxxghp 336da307a7 docs: classify background action reliability 2026-08-21 21:33:34 +08:00
jxxghp 1f656830db docs: add module quality scale 2026-08-21 21:31:42 +08:00
jxxghp c0b31bddb6 refactor: register event delivery contracts 2026-08-21 21:29:52 +08:00
jxxghp b9ad5220ae refactor: define module contract v2 2026-08-21 21:25:35 +08:00
jxxghp ff0ce8d1c1 refactor: add configuration dependency ratchet 2026-08-21 21:20:56 +08:00
jxxghp 9df599f502 refactor: split api dependencies by domain 2026-08-21 21:09:57 +08:00
jxxghp 773ea8cb9b refactor: introduce typed host runtime 2026-08-21 20:56:25 +08:00
jxxghp b598b516d5 refactor: migrate high-risk write transactions 2026-08-21 20:46:57 +08:00
jxxghp 7de72e0e83 refactor: own subscription create transactions 2026-08-21 20:37:31 +08:00
jxxghp de2957b9de refactor: add transaction ownership ratchet 2026-08-21 20:16:30 +08:00
jxxghp dd1c4c3279 refactor: unify database readiness lifecycle 2026-08-21 20:07:07 +08:00
jxxghp bb57b22975 refactor: use factory for supervised uvicorn modes 2026-08-21 19:51:33 +08:00
jxxghp 0959831bae fix(ci): gate pylint on changed files 2026-08-21 19:50:06 +08:00
jxxghp d89d29612c refactor: enforce single-worker control plane 2026-08-21 19:40:20 +08:00
jxxghp 6c7c54d2c1 ci: enforce backend architecture contracts 2026-08-21 19:33:11 +08:00
jxxghp 7bc3ea831f refactor: scope architecture baseline operations 2026-08-21 19:21:27 +08:00
jxxghp 300ae75bcf docs: add backend architecture next-stage plan 2026-08-21 19:21:20 +08:00
InfinityPacer 638ea6f01e perf: 并行化后端单测并拆分覆盖率任务 (#6369) 2026-08-20 20:01:36 +08:00
InfinityPacer 23f5d59c74 feat: 使用 uv 锁定主程序依赖并强化插件恢复边界 (#6364) 2026-08-20 12:17:19 +08:00
InfinityPacer f700db5ac8 feat(database): add managed backup and offline restore (#6359) 2026-08-19 17:34:32 +08:00
0069d04b18 feat(download): 支持未识别资源确认下载 (#6356)
* feat(download): 支持未识别资源确认下载

* feat(download): 音乐与影视统一未识别确认下载逻辑

* fix(download): 修正未识别媒体信息构造的类型标注与合集归一

---------

Co-authored-by: liulang <liulang@25qp.cn>
Co-authored-by: jxxghp <jxxghp@gmail.com>
2026-08-19 13:40:47 +08:00
jxxghp c2a27f7c71 refactor: 收口订阅与插件应用边界 2026-08-18 13:54:17 +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 2436bdf3dd docs(architecture): 新增 MoviePilot v3 架构设计总览文档 2026-08-17 09:37:38 +08:00
jxxghp d7e610e656 feat(agent): 新增 apply_patch 多文件补丁编辑工具
参考 Codex apply_patch 设计,支持单次调用对多个文本文件执行新增、
更新和删除:补丁以 *** Begin Patch / *** End Patch 包裹,Update 段
用 @@ 分隔 hunk,上下文行须与当前内容精确一致;先整体校验全部文件
操作,通过后才逐个原子写盘,并以校验期 sha256 防止并发修改。

- 工具描述与系统提示词明确 apply_patch / edit_file / write_file 分工:
  跨多文件或增删文件用 apply_patch,单文件单处替换用 edit_file
- 注册进工具工厂与 ALWAYS_INCLUDE 列表,加入策略 inventory 与
  MCP 隐藏列表,流式回调归类为 file_write
- 同步 create-moviepilot-plugin / publish-moviepilot-plugin /
  create-moviepilot-skill 技能的 allowed-tools 与版本
- 新增 tests/test_agent_apply_patch.py 覆盖解析、多文件应用、
  整体拒绝、权限边界与版本冲突场景
2026-08-17 08:01:59 +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
LinFei83 e5f0c53069 MCP get_search_results 增加 include_labels 按需返回种子标签 (#6335)
让 Agent 在筛选命中标签时能按需查看 labels,默认不返回以免拉长上下文。

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 6a02e7de21)
2026-08-16 17:38:19 +08:00
jxxghp 3e417c1ac5 refactor(chain): _mixins.py 更名 _transfer.py,统一功能域 mixin 命名
TransferChain 的 7 个功能域 mixin 集合文件按域更名 _transfer.py,
与 _recognition/_messaging/_interaction/_music 的单域命名约定对齐;
同步更新 transfer.py 导入、9 个测试文件 patch 目标与架构文档。
另含 chain 基类导入排序优化与未使用导入清理(copy/datetime 已随
dispatch 方法迁入 _messaging.py)。
2026-08-16 17:25:49 +08:00