Files
manual_slop/conductor/tracks/gui_decoupling_controller_20260302/plan.md

1.9 KiB

Implementation Plan: GUI Decoupling & Controller Architecture (gui_decoupling_controller_20260302)

Status: COMPLETE [checkpoint: 45b716f]

Phase 1: Controller Skeleton & State Migration

  • Task: Initialize MMA Environment activate_skill mma-orchestrator [d0009bb]
  • Task: Create app_controller.py Skeleton [d0009bb]
  • Task: Migrate Data State from GUI [d0009bb]

Phase 2: Logic & Background Thread Migration

  • Task: Extract Background Threads & Event Queue [9260c7d]
  • Task: Extract I/O and AI Methods [9260c7d]

Phase 3: Test Suite Refactoring

  • Task: Update conftest.py Fixtures [f2b2575]
  • Task: Resolve Broken GUI Tests [f2b2575]

Phase 4: Final Validation

  • Task: Full Suite Validation & Warning Cleanup [45b716f]
    • WHERE: Project root
    • WHAT: uv run pytest
    • HOW: 345 passed, 0 skipped, 2 warnings
    • SAFETY: All tests pass

Phase 5: Stabilization & Cleanup (RECOVERY)

  • Task: Task 5.1: AST Synchronization Audit [16d337e]
  • Task: Task 5.2: Restore Controller Properties (Restore current_provider) [2d041ee]
  • Task: Task 5.3: Replace magic __getattr__ with Explicit Delegation (DEFERRED - requires 80+ property definitions, separate track recommended)
  • Task: Task 5.4: Fix Sandbox Isolation logic in conftest.py [88aefc2]
  • Task: Task 5.5: Event Loop Consolidation & Single-Writer Sync [1b46534]
  • Task: Task 5.6: Fix test_gui_provider_list_via_hooks workspace creation [45b716f]
  • Task: Task 5.7: Fix test_live_gui_integration event loop issue [45b716f]
  • Task: Task 5.8: Fix test_gui2_performance key mismatch [45b716f]
    • WHERE: tests/test_gui2_performance.py:57-65
    • WHAT: Fix key mismatch - looked for "gui_2.py" but stored as full sloppy.py path
    • HOW: Use next((k for k in _shared_metrics if "sloppy.py" in k), None) to find key
    • SAFETY: Test-only change