feat(gui): implement Phases 2-5 of Comprehensive GUI UX track
- Add cost tracking with new cost_tracker.py module - Enhance Track Proposal modal with editable titles and goals - Add Conductor Setup summary and New Track creation form to MMA Dashboard - Implement Task DAG editing (add/delete tickets) and track-scoped discussion - Add visual polish: color-coded statuses, tinted progress bars, and node indicators - Support live worker streaming from AI providers to GUI panels - Fix numerous integration test regressions and stabilize headless service
This commit is contained in:
@@ -75,11 +75,12 @@ class GeminiCliAdapter:
|
||||
if msg_type == "init":
|
||||
if "session_id" in data:
|
||||
self.session_id = data.get("session_id")
|
||||
elif msg_type == "message":
|
||||
elif msg_type == "message" or msg_type == "chunk":
|
||||
# CRITICAL: Only accumulate content from the assistant/model role.
|
||||
# The CLI echoes back the 'user' prompt in the stream, which we must skip.
|
||||
role = data.get("role", "")
|
||||
if role in ["assistant", "model"]:
|
||||
# Chunks usually don't have role, so we assume assistant if missing
|
||||
if role in ["assistant", "model"] or not role:
|
||||
content = data.get("content", data.get("text"))
|
||||
if content:
|
||||
accumulated_text += content
|
||||
|
||||
Reference in New Issue
Block a user