mirror of
https://gitee.com/mateos/mateclaw.git
synced 2026-09-13 19:23:42 +08:00
- ChannelMessageRouter: include assistantMessageId in message_complete and done broadcasts so ChatConsole observers can reconcile the streaming placeholder to the persisted DB row by id instead of falling back to the FIFO 'claim' heuristic (which occasionally dropped the assistant bubble on external channel conversations). Capture the id from ConversationService.saveMessage in both the sync agentService.chat path and the streaming processWithStreaming path; switch to HashMap since Map.of rejects null values when save is skipped (e.g. under approval). - ChatConsole: add a 'running' indicator on the sidebar so users can tell which conversations have an in-flight agent run. Pulsing amber dot on the channel icon (both expanded and collapsed modes) plus a '生成中…' / 'Generating…' pill in expanded mode. - ChatConsole: don't cancel the previous conversation's streaming run when switching conversations — let it keep running in the background and reconcile when the user comes back. |
||
|---|---|---|
| .. | ||
| controller | ||
| dingtalk | ||
| discord | ||
| feishu | ||
| model | ||
| notification | ||
| repository | ||
| service | ||
| slack | ||
| telegram | ||
| web | ||
| webchat | ||
| wecom | ||
| weixin | ||
| AbstractChannelAdapter.java | ||
| ChannelAdapter.java | ||
| ChannelHealthMonitor.java | ||
| ChannelManager.java | ||
| ChannelMessage.java | ||
| ChannelMessageRenderer.java | ||
| ChannelMessageRouter.java | ||
| ChannelSessionStore.java | ||
| ExponentialBackoff.java | ||
| StreamingChannelAdapter.java | ||