mirror of
https://github.com/moltbot/moltbot.git
synced 2026-05-13 15:47:28 +00:00
fix(channels): scope progress tool status config
This commit is contained in:
@@ -46,6 +46,7 @@ Docs: https://docs.openclaw.ai
|
|||||||
|
|
||||||
### Fixes
|
### Fixes
|
||||||
|
|
||||||
|
- Channels/streaming: keep `streaming.progress.toolProgress` scoped to progress draft mode, so disabling compact progress lines does not silence partial/block preview tool updates. Thanks @vincentkoc.
|
||||||
- Control UI: point the Appearance tweakcn browse action and docs at the live tweakcn editor route instead of the removed `/themes` page. Fixes #77048.
|
- Control UI: point the Appearance tweakcn browse action and docs at the live tweakcn editor route instead of the removed `/themes` page. Fixes #77048.
|
||||||
- Control UI: render Dream Diary prose through the sanitized markdown pipeline, so diary bold/italic/header markdown no longer appears as literal source text. Fixes #62413.
|
- Control UI: render Dream Diary prose through the sanitized markdown pipeline, so diary bold/italic/header markdown no longer appears as literal source text. Fixes #62413.
|
||||||
- Control UI: render tool results whose output arrives as text-block arrays and give expanded tool output a scrollable block, so read/exec output remains visible in WebChat. Fixes #77054.
|
- Control UI: render tool results whose output arrives as text-block arrays and give expanded tool output a scrollable block, so read/exec output remains visible in WebChat. Fixes #77054.
|
||||||
|
|||||||
@@ -61,6 +61,32 @@ describe("channel-streaming", () => {
|
|||||||
expect(resolveChannelStreamingPreviewToolProgress(entry)).toBe(false);
|
expect(resolveChannelStreamingPreviewToolProgress(entry)).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("keeps progress-only tool progress config out of normal preview modes", () => {
|
||||||
|
expect(
|
||||||
|
resolveChannelStreamingPreviewToolProgress({
|
||||||
|
streaming: { mode: "partial", progress: { toolProgress: false } },
|
||||||
|
}),
|
||||||
|
).toBe(true);
|
||||||
|
expect(
|
||||||
|
resolveChannelStreamingPreviewToolProgress({
|
||||||
|
streaming: {
|
||||||
|
mode: "block",
|
||||||
|
preview: { toolProgress: true },
|
||||||
|
progress: { toolProgress: false },
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
).toBe(true);
|
||||||
|
expect(
|
||||||
|
resolveChannelStreamingPreviewToolProgress({
|
||||||
|
streaming: {
|
||||||
|
mode: "progress",
|
||||||
|
preview: { toolProgress: true },
|
||||||
|
progress: { toolProgress: false },
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
).toBe(false);
|
||||||
|
});
|
||||||
|
|
||||||
it("falls back to legacy flat fields when the canonical object is absent", () => {
|
it("falls back to legacy flat fields when the canonical object is absent", () => {
|
||||||
const entry = {
|
const entry = {
|
||||||
chunkMode: "newline",
|
chunkMode: "newline",
|
||||||
|
|||||||
@@ -424,11 +424,14 @@ export function resolveChannelStreamingPreviewToolProgress(
|
|||||||
defaultValue = true,
|
defaultValue = true,
|
||||||
): boolean {
|
): boolean {
|
||||||
const config = getChannelStreamingConfigObject(entry);
|
const config = getChannelStreamingConfigObject(entry);
|
||||||
return (
|
if (resolveChannelPreviewStreamMode(entry, "partial") === "progress") {
|
||||||
asBoolean(config?.progress?.toolProgress) ??
|
return (
|
||||||
asBoolean(config?.preview?.toolProgress) ??
|
asBoolean(config?.progress?.toolProgress) ??
|
||||||
defaultValue
|
asBoolean(config?.preview?.toolProgress) ??
|
||||||
);
|
defaultValue
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return asBoolean(config?.preview?.toolProgress) ?? defaultValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function resolveChannelStreamingSuppressDefaultToolProgressMessages(
|
export function resolveChannelStreamingSuppressDefaultToolProgressMessages(
|
||||||
|
|||||||
Reference in New Issue
Block a user