feat(backends,conversations,frontends): opus 5.5 progress updates reach telegram, current claude cli in the image

This commit is contained in:
hh committed 2026-09-22 18:02:01 +00:00
1 parent e58153628c
commit bbce425eeb
9 files changed
+140 -20

No files matched your search

+18
View File
@@ -20,7 +20,11 @@ from claude_agent_sdk import (
project_key_for_directory,
)
from anthropic.types import TextBlock as AnthropicTextBlock
from anthropic.types import ThinkingBlock
from beaver_gateway.agents.claude import ClaudeAgent, ClaudeOptions
from beaver_gateway.conversations.turns import reply_text
from beaver_gateway.backends.claude_sdk import ClaudeSdkBackend
from beaver_gateway.events.bus import EventBus
from beaver_gateway.conversations.service import (
@@ -958,3 +962,17 @@ async def test_subagent_result_inside_a_turn_does_not_end_it(world: World) -> No
assert client.prompts[-1].startswith("two")
rows = await world.conversations.queue.recent(conv.id)
assert [r.status for r in rows] == ["done", "done"]
def test_reply_text_keeps_progress_updates_and_drops_hidden_reasoning() -> None:
blocks = [
ThinkingBlock(type="thinking", thinking="", signature="s"),
ThinkingBlock(type="thinking", thinking="looking it up", signature="s"),
AnthropicTextBlock(type="text", text="found it"),
]
assert reply_text(blocks) == "looking it up\n\nfound it"
def test_reply_text_on_a_plain_answer_is_unchanged() -> None:
blocks = [AnthropicTextBlock(type="text", text=" just an answer ")]
assert reply_text(blocks) == "just an answer"