feat: Add review events persistence, version display, and auto-versioning system

This commit is contained in:
Primakov Alexandr Alexandrovich
2025-10-13 14:18:37 +03:00
parent cfba28f913
commit 2db1225618
56 changed files with 750 additions and 436 deletions

View File

@@ -552,7 +552,7 @@ class ReviewerAgent:
try:
async for event in self.graph.astream(
initial_state,
stream_mode=["updates"]
stream_mode=["updates", "messages"]
):
event_count += 1
print(f"📨 Event #{event_count} received from graph")
@@ -581,6 +581,28 @@ class ReviewerAgent:
if isinstance(node_data, dict):
final_state = node_data
# Handle 'messages' events (LLM streaming)
elif event_type == 'messages':
print(f" 💬 LLM messages received")
# event_data is a list of messages
if isinstance(event_data, (list, tuple)):
for msg in event_data:
# Check if it's an AIMessage or similar
msg_content = None
if hasattr(msg, 'content'):
msg_content = msg.content
elif isinstance(msg, dict) and 'content' in msg:
msg_content = msg['content']
else:
msg_content = str(msg)
if msg_content and on_event:
print(f" 💬 Sending LLM message: {msg_content[:100]}...")
await on_event({
"type": "llm_message",
"message": msg_content
})
# Handle 'values' events (state snapshots)
elif event_type == 'values':
print(f" 📊 State snapshot received")