ranzhigg
914abf6273
fix: tighten API authorization boundaries
2026-10-30 16:14:49 +08:00
Cat
87561a90d1
fix(agent): route agent command receipts to the signed channel user ( #7228 )
...
- Agent 代渠道用户调用内部 API 时,把会话渠道与渠道用户写入宿主签发令牌的签名
声明(agent_channel、agent_channel_user),不再新增可伪造的请求头。
- /commands/run 对 Telegram 等通知渠道只使用与请求渠道一致的签名渠道用户执行命令
和投递回执;缺少该声明时明确拒绝,不再把 MoviePilot 用户表主键当作渠道 chat id。
Web、WebAgent 与无渠道调用仍按 MoviePilot 用户 ID 处理。
- 只读公共资料借用宿主身份,不携带渠道发起人声明。
- 同步依赖基线与架构总览中的内部导入边数量。
Refs #7225
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com >
Co-authored-by: jxxghp <jxxghp@gmail.com >
2026-10-28 19:05:52 +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
2de976f6b3
Merge pull request #7050 from DDSRem-Dev/codex-comment-migration
...
docs: 统一全项目中文注释和结构化契约说明
2026-10-17 19:26:29 +08:00
jxxghp
9b615a663a
refactor(types): describe agent endpoint response payloads
2026-10-17 04:23:50 +08:00
jxxghp
769c79f618
refactor(types): align agent with typed route contracts
2026-10-17 02:59:31 +08:00
Cat
3112ee2040
fix(agent): deny inaccessible web sessions without HTTP 500 ( #7030 )
2026-10-16 22:08:37 +08:00
jxxghp
4955b7b9ea
fix: harden backend isolation and execution safety
2026-10-16 09:11:28 +08:00
jxxghp
4e9a64c0f0
refactor(application): 按模块子目录统一文件命名
2026-09-15 23:57:06 +08:00
jxxghp
ff01449cdd
fix(api): humanize user-facing error messages
2026-09-04 17:55:56 +08:00
jxxghp
0f8aad2daf
fix(agent): encode channel metadata in API headers
2026-09-03 18:09:40 +08:00
jxxghp
d512f528be
refactor(api): make collection pagination explicit
2026-09-01 09:13:56 +08:00
jxxghp
ec1a878a32
fix(agent): auto-load gateway skill before API calls
2026-08-31 18:42:25 +08:00
jxxghp
fecb458302
fix(ci): restore architecture and coverage gates
2026-08-31 17:52:12 +08:00
jxxghp
fdba2c7d64
refactor(agent): unify tools behind API gateway and provider skills
2026-08-31 16:57:54 +08:00
jxxghp
f38637dcea
refactor(api): move host orchestration into application services
2026-08-29 10:27:57 +08:00
jxxghp
b914e8b6e4
refactor: strengthen architecture CI gates and runtime contracts
2026-08-25 17:02:29 +08:00
jxxghp
4e44deb0fa
refactor: unify web agent notice event routing
2026-08-24 07:54:05 +08:00
jxxghp
85d8c58a76
refactor: unify agent audio capability access
2026-08-24 07:23:29 +08:00
jxxghp
8e669d415e
refactor: unify host agent runtime access
2026-08-24 06:42:07 +08:00
jxxghp
371383f0a8
refactor: unify host threadpool boundary
2026-08-24 03:28:10 +08:00
jxxghp
2e5dd2cf0a
refactor: drain traditional agent streams
2026-08-24 00:50:24 +08:00
jxxghp
e9a226af02
refactor: complete command facade migration
2026-08-24 00:00:37 +08:00
InfinityPacer
d11c2fb301
fix(agent): isolate web and storage blocking I/O
2026-08-23 13:06:30 +08:00
InfinityPacer
e0f70fa920
fix(agent): close chat lifecycle safely
2026-08-23 11:44:18 +08:00
InfinityPacer
0ba4a7e5e3
fix(agent): close async chat persistence lifecycle
2026-08-23 11:44:18 +08:00
InfinityPacer
f560c19d65
fix(agent): keep chat reads on native async path
2026-08-23 11:43:07 +08:00
InfinityPacer
21ce70fbfc
refactor(agent): route chat persistence through database worker
2026-08-23 11:43:07 +08:00
jxxghp
e602c23668
refactor: clear public entrypoint complexity debt
2026-08-22 23:28:30 +08:00
jxxghp
996a1a0705
refactor: expand api and chain config snapshots
2026-08-22 13:22:33 +08:00
InfinityPacer
9cc2bdbce1
fix: 避免 Web Agent 语音转写阻塞事件循环 ( #6389 )
2026-08-22 13:16:15 +08:00
jxxghp
1b253510e1
ci: block new async blocking calls
2026-08-21 22:29:19 +08:00
jxxghp
9df599f502
refactor: split api dependencies by domain
2026-08-21 21:09:57 +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
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
dd38c16400
refactor(messaging): 拆分用户交互模块到 application/messaging 层
...
- 新增 application/messaging 交互层:router.py 统一会话优先级与回调分发,
site/subscribe/skill/media/plugin 各交互状态与视图从 Chain 迁出
- MessageChain 改为通过 InteractionRouter 派发文本会话与按钮回调,
新增结构化 callback_data 通道(兼容 CALLBACK: 文本前缀)
- Transfer 失败重试/AI 接管回调归入 TransferChain
- MediaInteractionChain 拆出为 app/chain/interaction.py(旧路径保留兼容别名)
- WebAgent Endpoint 去重,统一使用 agent.py 回调协议函数
- 删除 app/chain/skills.py(交互逻辑并入 SkillInteractionHandler)
- 同步更新架构文档与测试,全量 4476 通过
2026-08-15 16:36:39 +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
591a1d420d
fix(agent): close secret confirmation delivery gaps ( #6285 )
2026-08-13 08:20:14 +08:00
InfinityPacer
a6e8ba8b57
feat(agent): 敏感设置读取增加宿主二次确认 ( #6283 )
...
* feat(agent): require confirmation for secret settings
* fix(agent): preserve history during secret confirmation
2026-08-13 08:10:32 +08:00
jxxghp
baf8850d63
refactor(api): standardize responses and restore media config contracts
2026-08-12 23:15:13 +08:00
jxxghp
7985268f10
fix(agent): emit web tool status immediately
2026-08-07 13:01:47 +08:00
jxxghp
865635c59d
perf(agent): optimize web SSE streaming
2026-08-07 12:45:36 +08:00
jxxghp
cf6c73d85b
fix(agent): persist streamed message order
2026-08-06 22:24:54 +08:00
jxxghp
d666134ed2
Route autonomous agent tasks through notification broadcasting
2026-07-20 08:54:32 +08:00
jxxghp
b51971ee7d
feat: add agent MCP support
2026-07-08 08:44:33 +08:00