chore(mma): Clean up mma_exec.py and robustify visual simulation mocking
This commit is contained in:
21
gui_2.py
21
gui_2.py
@@ -2016,6 +2016,23 @@ class App:
|
||||
threading.Thread(target=_bg_task, daemon=True).start()
|
||||
|
||||
def _cb_start_track(self, user_data: Any = None) -> None:
|
||||
if isinstance(user_data, str):
|
||||
# If track_id is provided directly
|
||||
track_id = user_data
|
||||
# Ensure it's loaded as active
|
||||
if not self.active_track or self.active_track.id != track_id:
|
||||
self._cb_load_track(track_id)
|
||||
|
||||
if self.active_track:
|
||||
# Use the active track object directly to start execution
|
||||
self.mma_status = "running"
|
||||
engine = multi_agent_conductor.ConductorEngine(self.active_track, self.event_queue)
|
||||
flat = project_manager.flat_config(self.project, self.active_discussion, track_id=self.active_track.id)
|
||||
full_md, _, _ = aggregate.run(flat)
|
||||
asyncio.run_coroutine_threadsafe(engine.run(md_content=full_md), self._loop)
|
||||
self.ai_status = f"Track '{self.active_track.description}' started."
|
||||
return
|
||||
|
||||
idx = 0
|
||||
if isinstance(user_data, int):
|
||||
idx = user_data
|
||||
@@ -2076,10 +2093,12 @@ class App:
|
||||
step_mode=t_data.get("step_mode", False)
|
||||
)
|
||||
tickets.append(ticket)
|
||||
track_id = f"track_{uuid.uuid5(uuid.NAMESPACE_DNS, f'{self.active_project_path}_{title}_{now.isoformat()}').hex[:12]}"
|
||||
track_id = f"track_{uuid.uuid5(uuid.NAMESPACE_DNS, f'{self.active_project_path}_{title}').hex[:12]}"
|
||||
track = Track(id=track_id, description=title, tickets=tickets)
|
||||
# Initialize track state in the filesystem
|
||||
from models import TrackState, Metadata
|
||||
from datetime import datetime
|
||||
now = datetime.now()
|
||||
meta = Metadata(id=track_id, name=title, status="todo", created_at=now, updated_at=now)
|
||||
state = TrackState(metadata=meta, discussion=[], tasks=tickets)
|
||||
project_manager.save_track_state(track_id, state, self.ui_files_base_dir)
|
||||
|
||||
Reference in New Issue
Block a user