Nikolas de Hor
66063abb8c
fix: prevent session poisoning from null/error LLM responses
...
When an LLM returns content: null on a plain assistant message (no
tool_calls), the null gets saved to session history and causes
permanent 400 errors on every subsequent request.
- Sanitize None content on plain assistant messages to "(empty)" in
_sanitize_empty_content(), matching the existing empty-string handling
- Skip persisting error responses (finish_reason="error") to the
message history in _run_agent_loop(), preventing poison loops
Closes #1303
2026-02-28 00:57:08 -03:00
GabrielWithTina
8842fb2b4d
fix: pass msg_id in QQ C2C reply to avoid proactive message permission error
...
QQ's bot API requires a msg_id (original inbound message ID) to send a
passive reply. Without it the request is treated as a proactive message
and fails with error 40034102 (无权限). The message_id was already stored
in InboundMessage.metadata and forwarded to OutboundMessage, but was never
read in send().
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-28 09:44:28 +08:00
Michael-lhh
11f1880c02
fix: handle list-type tool arguments in _tool_hint
...
Some models (e.g., Kimi K2.5 via OpenRouter) return tool call arguments
as a list instead of a dict. This caused an AttributeError when trying
to call .values() on the list.
The fix checks if arguments is a list and extracts the first element
before accessing .values().
Made-with: Cursor
2026-02-28 00:18:00 +08:00
Xubin Ren
a4d95fd064
Merge PR #1293 to generate short alphanumeric tool_call_id for Mistral compatibility
...
fix: generate short alphanumeric tool_call_id for Mistral compatibility
2026-02-28 00:15:52 +08:00
Re-bin
1fe94898f6
fix: generate short alphanumeric tool_call_id for Mistral compatibility
2026-02-27 16:13:26 +00:00
Xubin Ren
ef09add825
Merge PR #1278 to guide llm grep using timestamp
...
Fix(prompt): guide llm grep using timestamp
2026-02-27 23:42:05 +08:00
fengxiaohu
7229d86bb3
fix(shell): parse full Windows absolute paths in workspace guard
2026-02-27 21:46:46 +08:00
aiguozhi123456
db4185c8b7
Add timestamp format hint for HISTORY.md grep searching
2026-02-27 11:11:42 +00:00
Xubin Ren
e86cfcde22
Merge PR #1200 to update heartbeat tests to match two-phase tool-call architecture
...
fix: update heartbeat tests to match two-phase tool-call architecture
2026-02-27 18:10:35 +08:00
Re-bin
fdd2c25aed
Merge PR #1222 : fix runtime context leaking into session history
2026-02-27 10:07:22 +00:00
Re-bin
bc558d0592
refactor: merge user-role branches in _save_turn
2026-02-27 10:07:22 +00:00
Re-bin
6bdb590028
Merge remote-tracking branch 'origin/main' into pr-1222
2026-02-27 09:57:45 +00:00
Re-bin
a6aa5fbd7c
Merge PR #1239 : register Matrix channel in manager and schema
2026-02-27 09:53:31 +00:00
Re-bin
12f3365103
fix: remove duplicate import, tidy MatrixConfig comments
2026-02-27 09:53:31 +00:00
Re-bin
2d33371366
Merge remote-tracking branch 'origin/main' into pr-1239
2026-02-27 09:51:33 +00:00
Re-bin
858a62dd9b
refactor: slim down helpers.py — remove dead code, compress docstrings
2026-02-27 09:50:12 +00:00
Re-bin
21e9644944
Merge PR #1253 : auto-sync workspace templates on startup
2026-02-27 09:46:57 +00:00
Re-bin
d5808bf586
refactor: streamline workspace template sync
2026-02-27 09:46:57 +00:00
Re-bin
e260219ce6
Merge remote-tracking branch 'origin/main' into pr-1253
2026-02-27 09:41:13 +00:00
Re-bin
b7561848e1
Merge PR #1257 : feat(feishu): make reaction emoji configurable
2026-02-27 09:32:20 +00:00
Re-bin
969b15dbce
Merge remote-tracking branch 'origin/main' into pr-1257
2026-02-27 09:31:12 +00:00
Re-bin
32ecfd32f3
Merge PR #1258 : fix Telegram media-group aggregation
2026-02-27 09:30:01 +00:00
Re-bin
aa2987be3e
refactor: streamline Telegram media-group buffering
2026-02-27 09:30:01 +00:00
Tanish Rajput
568a54ae3e
Initialize Matrix channel in ChannelManager when enabled in config
2026-02-27 11:39:01 +05:30
Kim
a3e0543eae
chore(telegram): keep media-group fix without unrelated formatting changes
2026-02-27 12:16:51 +08:00
Kim
aa774733ea
fix(telegram): aggregate media-group images into a single inbound turn
2026-02-27 12:08:48 +08:00
kimkitsuragi26
6641bad337
feat(feishu): make reaction emoji configurable
...
Replace hardcoded THUMBSUP with configurable react_emoji field
in FeishuConfig, consistent with SlackConfig.react_emoji pattern.
Default remains THUMBSUP for backward compatibility.
2026-02-27 11:45:44 +08:00
Re-bin
cab901b2fb
Merge PR #1228 : fix(web): use self.api_key instead of undefined api_key
2026-02-27 02:44:19 +00:00
Re-bin
b24df8afeb
Merge remote-tracking branch 'origin/main' into pr-1228
2026-02-27 02:43:37 +00:00
Re-bin
ec8dee802c
refactor: simplify message tool suppress and inline consolidation locks
2026-02-27 02:39:38 +00:00
Hon Jia Xuan
cb999ae826
feat: implement automatic workspace template synchronization
2026-02-27 10:39:05 +08:00
Re-bin
c3a0c7c9eb
Merge PR #1206 : fix message tool suppress for cross-channel sends
2026-02-27 02:27:18 +00:00
Re-bin
29e6709e26
refactor: simplify message tool suppress — bool check instead of target tracking
2026-02-27 02:27:18 +00:00
Re-bin
ac1c40db91
Merge remote-tracking branch 'origin/main' into pr-1206
2026-02-27 02:17:04 +00:00
gaoyiman
cf2ed8a6a0
tune volcengine provider
2026-02-26 16:22:24 +08:00
Yongfeng Huang
7a3788fee9
fix(web): use self.api_key instead of undefined api_key
...
Made-with: Cursor
2026-02-26 15:43:04 +08:00
Kim
286e67ddef
style(agent): remove inline comment in runtime-context history filter
2026-02-26 14:21:44 +08:00
Kim
45ae410f05
fix(agent): do not persist runtime context metadata in session history
2026-02-26 14:12:37 +08:00
Re-bin
cc425102ac
docs: update Matrix channel guideline and schema
2026-02-26 03:08:00 +00:00
Re-bin
a1e930d942
Merge PR #420 : feat: add Matrix (Element) channel
2026-02-26 03:04:13 +00:00
Re-bin
988a85d8de
refactor: optimize matrix channel — optional deps, trim comments, simplify methods
2026-02-26 03:04:01 +00:00
Re-bin
84f2f3c316
Merge remote-tracking branch 'origin/main' into pr-420
2026-02-26 02:48:21 +00:00
Re-bin
a77add9d8c
Merge PR #1191 : fix base64 images stored in session history causing context overflow
2026-02-26 02:43:50 +00:00
Re-bin
a1440cf4cb
refactor: inline base64 image stripping in _save_turn
2026-02-26 02:43:45 +00:00
Re-bin
0a9bb1d8df
Merge remote-tracking branch 'origin/main' into pr-1191
2026-02-26 02:39:53 +00:00
Re-bin
4eb44cfb5c
Merge PR #1198 : fix assistant messages without tool calls not being saved to session
2026-02-26 02:33:38 +00:00
Re-bin
3902e31165
refactor: drop redundant tool_calls=None in final assistant message
2026-02-26 02:33:38 +00:00
Re-bin
23b9880478
Merge remote-tracking branch 'origin/main' into pr-1198
2026-02-26 02:29:45 +00:00
Re-bin
7e1a08d33c
docs: add provider option to Quick Start config example
2026-02-26 02:23:07 +00:00
Xubin Ren
cffba8d0be
Merge PR #1214 to support explicit provider selection in config
...
feat: support explicit provider selection in config
2026-02-26 10:17:08 +08:00