InfinityPacer
1d2984b95f
fix(runtime): enforce main event loop ownership ( #6424 )
2026-08-23 20:14:31 +08:00
jxxghp
1bb6e36e8c
refactor: complete runtime configuration migration
2026-08-22 19:07:07 +08:00
jxxghp
8472bcff43
refactor: 收口 V3 分层架构与插件兼容边界
2026-08-18 13:22:02 +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
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
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
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
318cfe68e9
Refactor agent tool inputs and background activity logging
2026-06-27 07:53:09 +08:00
jxxghp
495807ef4d
Simplify agent message handling and streaming cleanup
2026-06-21 12:34:11 +08:00
jxxghp
d483b805d8
Normalize Telegram HTML send_message responses
2026-06-21 11:39:53 +08:00
jxxghp
5c1b303908
Add Telegram parse_mode support for send_message
2026-06-21 10:57:26 +08:00
jxxghp
d4b6d3f332
refactor: remove persist_output_message functionality and related database save logic
2026-06-17 16:14:35 +08:00
jxxghp
e78efe3e34
feat: implement file upload and callback handling for Web Agent
2026-06-16 22:53:11 +08:00
InfinityPacer
437baec620
test: 测试套件自隔离与全量离线化(collection 清零 + 杜绝真实网络) ( #5873 )
2026-06-02 12:23:08 +08:00
jxxghp
855681ff35
feat(agent): mark and propagate voice input metadata in agent messages; clarify terminal tool usage in prompts
...
- Add `has_audio_input` flag to agent message handling and propagate through processing pipeline
- Structure agent input payloads to include `input.mode` and `input.transcribed` for voice messages
- Update prompts and tool descriptions to clarify that `send_voice_message` and `ask_user_choice` are terminal tools and should not be followed by redundant text replies
- Enhance tests to cover voice input metadata propagation and prompt updates
2026-05-31 18:04:02 +08:00
jxxghp
4f107a7cc8
fix: resume agent after choice callback
2026-05-23 00:28:42 +08:00
jxxghp
b26bf2a019
fix: stop agent after user choice prompt
2026-05-23 00:15:35 +08:00
jxxghp
737bcb5c62
refactor(agent): move feedback issue flow into skill scripts
2026-05-21 19:22:27 +08:00
InfinityPacer
0245c8db80
feedback-issue: 拆三步、入口意图门、消息可靠性、日志脱敏与噪音过滤 ( #5810 )
2026-05-21 13:57:12 +08:00
jxxghp
4d0a722b09
refactor: reorganize interaction chain
2026-05-01 09:53:04 +08:00
jxxghp
344280cd61
Refactor agent persona runtime layering
2026-04-29 14:12:47 +08:00
jxxghp
cefb60ba2c
refactor: unify message interactions
2026-04-22 15:18:04 +08:00
jxxghp
e0e21e39a2
refactor: generalize agent interaction requests
2026-04-16 22:51:51 +08:00