From 4a820124615b4e254a53d5b7b0267cc6f6f0f8f8 Mon Sep 17 00:00:00 2001 From: Onur <2453968+osolmaz@users.noreply.github.com> Date: Sun, 1 Mar 2026 13:11:19 +0100 Subject: [PATCH] ACP: default stream delivery to final_only --- src/auto-reply/reply/acp-projector.test.ts | 11 +++++++---- src/auto-reply/reply/acp-stream-settings.test.ts | 2 +- src/auto-reply/reply/acp-stream-settings.ts | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/auto-reply/reply/acp-projector.test.ts b/src/auto-reply/reply/acp-projector.test.ts index f1dba395037..0ebee2ccbd1 100644 --- a/src/auto-reply/reply/acp-projector.test.ts +++ b/src/auto-reply/reply/acp-projector.test.ts @@ -347,6 +347,7 @@ describe("createAcpReplyProjector", () => { stream: { coalesceIdleMs: 0, maxChunkChars: 256, + deliveryMode: "live", maxTurnChars: 5, }, }, @@ -370,10 +371,12 @@ describe("createAcpReplyProjector", () => { }); await projector.flush(true); - expect(deliveries).toEqual([ - { kind: "block", text: "hello" }, - { kind: "tool", text: prefixSystemMessage("output truncated") }, - ]); + expect(deliveries).toHaveLength(2); + expect(deliveries).toContainEqual({ kind: "block", text: "hello" }); + expect(deliveries).toContainEqual({ + kind: "tool", + text: prefixSystemMessage("output truncated"), + }); }); it("enforces maxMetaEventsPerTurn without suppressing assistant text", async () => { diff --git a/src/auto-reply/reply/acp-stream-settings.test.ts b/src/auto-reply/reply/acp-stream-settings.test.ts index fb1e5ee87d1..fb87da28ddc 100644 --- a/src/auto-reply/reply/acp-stream-settings.test.ts +++ b/src/auto-reply/reply/acp-stream-settings.test.ts @@ -9,7 +9,7 @@ import { createAcpTestConfig } from "./test-fixtures/acp-runtime.js"; describe("acp stream settings", () => { it("resolves stable defaults", () => { const settings = resolveAcpProjectionSettings(createAcpTestConfig()); - expect(settings.deliveryMode).toBe("live"); + expect(settings.deliveryMode).toBe("final_only"); expect(settings.repeatSuppression).toBe(true); expect(settings.maxTurnChars).toBe(24_000); expect(settings.maxMetaEventsPerTurn).toBe(64); diff --git a/src/auto-reply/reply/acp-stream-settings.ts b/src/auto-reply/reply/acp-stream-settings.ts index 5662bd5d8c9..64843530d34 100644 --- a/src/auto-reply/reply/acp-stream-settings.ts +++ b/src/auto-reply/reply/acp-stream-settings.ts @@ -5,7 +5,7 @@ import { resolveEffectiveBlockStreamingConfig } from "./block-streaming.js"; const DEFAULT_ACP_STREAM_COALESCE_IDLE_MS = 350; const DEFAULT_ACP_STREAM_MAX_CHUNK_CHARS = 1800; const DEFAULT_ACP_REPEAT_SUPPRESSION = true; -const DEFAULT_ACP_DELIVERY_MODE = "live"; +const DEFAULT_ACP_DELIVERY_MODE = "final_only"; const DEFAULT_ACP_MAX_TURN_CHARS = 24_000; const DEFAULT_ACP_MAX_TOOL_SUMMARY_CHARS = 320; const DEFAULT_ACP_MAX_STATUS_CHARS = 320;