Log additional ag-ui events in the cli renderer
This commit is contained in:
parent
0c8d2838b2
commit
4a623934b2
2 changed files with 32 additions and 3 deletions
|
|
@ -67,11 +67,17 @@ class AGUIConsoleRenderer:
|
|||
|
||||
return result
|
||||
|
||||
def _render_run_started(self, _event: AGUIEvent) -> None:
|
||||
def _render_run_started(self, event: AGUIEvent) -> None:
|
||||
"""Render run start event."""
|
||||
run_id = event.get("runId", "")
|
||||
if run_id:
|
||||
# Show shortened run ID (first 8 chars like our UUIDs)
|
||||
short_id = run_id[:8] if len(run_id) > 8 else run_id
|
||||
self.console.print(f"[bold green][RUN_STARTED][/bold green] Run {short_id}")
|
||||
|
||||
def _render_run_finished(self) -> None:
|
||||
"""Render run completion."""
|
||||
self.console.print("[bold green][RUN_FINISHED][/bold green] Completed")
|
||||
|
||||
def _render_error(self, event: AGUIEvent) -> None:
|
||||
"""Render error event."""
|
||||
|
|
@ -87,8 +93,12 @@ class AGUIConsoleRenderer:
|
|||
f"\n[bold cyan][STEP_STARTED][/bold cyan] {display_name}"
|
||||
)
|
||||
|
||||
def _render_step_finished(self, _event: AGUIEvent) -> None:
|
||||
def _render_step_finished(self, event: AGUIEvent) -> None:
|
||||
"""Render step finish event."""
|
||||
step_name = event.get("stepName", "")
|
||||
if step_name:
|
||||
display_name = step_name.replace("_", " ").title()
|
||||
self.console.print(f"[cyan][STEP_FINISHED][/cyan] {display_name}")
|
||||
|
||||
def _render_text_message(self, event: AGUIEvent) -> None:
|
||||
"""Render complete text message."""
|
||||
|
|
|
|||
|
|
@ -37,9 +37,10 @@ async def test_renderer_basic_flow():
|
|||
renderer = AGUIConsoleRenderer(console)
|
||||
|
||||
events = [
|
||||
emit_run_started("t1", "r1"),
|
||||
emit_run_started("t1", "r1-test-run-id"),
|
||||
emit_state_snapshot(SimpleState(value=1)),
|
||||
emit_step_started("plan"),
|
||||
emit_step_finished("plan"),
|
||||
emit_activity("m1", "planning", "Planning research"),
|
||||
emit_run_finished("t1", "r1", {"status": "complete"}),
|
||||
]
|
||||
|
|
@ -183,3 +184,21 @@ async def test_renderer_state_delta_without_initial():
|
|||
|
||||
result = await renderer.render(async_gen(events))
|
||||
assert result == {"ok": True}
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_renderer_lifecycle_events():
|
||||
"""Test that lifecycle events are rendered properly."""
|
||||
renderer = AGUIConsoleRenderer()
|
||||
|
||||
events = [
|
||||
emit_run_started("thread-123", "run-abc-def-ghi"), # Long run ID
|
||||
emit_step_started("search_one"),
|
||||
emit_step_finished("search_one"),
|
||||
emit_step_started("analyze_insights"),
|
||||
emit_step_finished("analyze_insights"),
|
||||
emit_run_finished("thread-123", "run-abc-def-ghi", {"complete": True}),
|
||||
]
|
||||
|
||||
result = await renderer.render(async_gen(events))
|
||||
assert result == {"complete": True}
|
||||
|
|
|
|||
Loading…
Reference in a new issue