Add detailed AssistantMessage content inspection

**Problem**: tool_calls=0 in both successful and failed requests, despite
16-31 turns of Agent SDK work. Tool tracking code finds no tool_use blocks.

**Debug addition**: Log content structure for first 10 AssistantMessages:
- Content type (str vs list)
- If list: number of blocks and types of first 3 blocks
- Will show if content contains tool_use blocks or different structure

**Expected**: Should see "list with X blocks: [ToolUseBlock, TextBlock, ...]"
**If broken**: Will see empty lists or unexpected structure

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-03-01 18:48:24 -07:00
parent d8b05173f7
commit cc7e623d74

View File

@@ -594,6 +594,15 @@ class LLMInterface:
logger.info(f"[LLM] Message #{message_count}: {msg_type}") logger.info(f"[LLM] Message #{message_count}: {msg_type}")
if isinstance(message, AssistantMessage) and hasattr(message, 'content'): if isinstance(message, AssistantMessage) and hasattr(message, 'content'):
# DEBUG: Log content structure for first few messages
if message_count <= 10:
content_type = type(message.content).__name__
if isinstance(message.content, list):
block_types = [type(b).__name__ if hasattr(b, 'type') else str(type(b)) for b in message.content[:3]]
logger.info(f"[LLM] Message #{message_count} content: list with {len(message.content)} blocks: {block_types}")
else:
logger.info(f"[LLM] Message #{message_count} content: {content_type}")
if isinstance(message.content, str): if isinstance(message.content, str):
assistant_messages.append(message.content) assistant_messages.append(message.content)
elif isinstance(message.content, list): elif isinstance(message.content, list):