@ouro.bot/cli 0.1.0-alpha.77 → 0.1.0-alpha.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/changelog.json
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_note": "This changelog is maintained as part of the PR/version-bump workflow. Agent-curated, not auto-generated. Agents read this file directly via read_file to understand what changed between versions.",
|
|
3
3
|
"versions": [
|
|
4
|
+
{
|
|
5
|
+
"version": "0.1.0-alpha.78",
|
|
6
|
+
"changes": [
|
|
7
|
+
"Fix: BlueBubbles group chats no longer start typing just because the model turn began. Group chats stay visually quiet until the agent has committed to replying.",
|
|
8
|
+
"Tool/progress updates now count as reply commitment in BlueBubbles group chats, so read/typing can begin before final user-facing text without regressing back to model-start typing.",
|
|
9
|
+
"Silent group-chat turns remain fully quiet: when the agent chooses no_response, the inbound message still reaches the model but the chat is not marked read, never types, and never sends a message."
|
|
10
|
+
]
|
|
11
|
+
},
|
|
4
12
|
{
|
|
5
13
|
"version": "0.1.0-alpha.77",
|
|
6
14
|
"changes": [
|
|
@@ -343,13 +343,14 @@ function emitBlueBubblesMarkReadWarning(chat, error) {
|
|
|
343
343
|
},
|
|
344
344
|
});
|
|
345
345
|
}
|
|
346
|
-
function createBlueBubblesCallbacks(client, chat, replyTarget) {
|
|
346
|
+
function createBlueBubblesCallbacks(client, chat, replyTarget, isGroupChat) {
|
|
347
347
|
let textBuffer = "";
|
|
348
348
|
const phrases = (0, phrases_1.getPhrases)();
|
|
349
349
|
const activity = (0, debug_activity_1.createDebugActivityController)({
|
|
350
350
|
thinkingPhrases: phrases.thinking,
|
|
351
351
|
followupPhrases: phrases.followup,
|
|
352
|
-
startTypingOnModelStart:
|
|
352
|
+
startTypingOnModelStart: !isGroupChat,
|
|
353
|
+
startTypingOnFirstTextChunk: isGroupChat,
|
|
353
354
|
suppressInitialModelStatus: true,
|
|
354
355
|
suppressFollowupPhraseStatus: true,
|
|
355
356
|
transport: {
|
|
@@ -607,7 +608,7 @@ async function handleBlueBubblesNormalizedEvent(event, resolvedDeps, source) {
|
|
|
607
608
|
role: "user",
|
|
608
609
|
content: buildInboundContent(event, existing?.messages ?? sessionMessages),
|
|
609
610
|
};
|
|
610
|
-
const callbacks = createBlueBubblesCallbacks(client, event.chat, replyTarget);
|
|
611
|
+
const callbacks = createBlueBubblesCallbacks(client, event.chat, replyTarget, event.chat.isGroup);
|
|
611
612
|
const controller = new AbortController();
|
|
612
613
|
// BB-specific tool context wrappers
|
|
613
614
|
const summarize = (0, core_1.createSummarize)();
|
|
@@ -109,7 +109,13 @@ function createDebugActivityController(options) {
|
|
|
109
109
|
})));
|
|
110
110
|
},
|
|
111
111
|
onTextChunk(text) {
|
|
112
|
-
if (!text
|
|
112
|
+
if (!text) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
if (!hadToolRun && options.startTypingOnFirstTextChunk) {
|
|
116
|
+
startTypingNow();
|
|
117
|
+
}
|
|
118
|
+
if (!hadToolRun || followupShown) {
|
|
113
119
|
return;
|
|
114
120
|
}
|
|
115
121
|
followupShown = true;
|