5.4 KiB
5.4 KiB
Implementation Plan: GUIv2 Feature Parity
Phase 1: Core Architectural Integration
- Task: Integrate
events.pyintogui_2.py. [24b831c]- Sub-task: Import the
eventsmodule ingui_2.py. - Sub-task: Refactor the
ai_clientcall in_do_sendto use the event-drivensendmethod. - Sub-task: Create event handlers in
Appclass forrequest_start,response_received, andtool_execution. - Sub-task: Subscribe the handlers to
ai_client.eventsuponAppinitialization.
- Sub-task: Import the
- Task: Integrate
mcp_client.pyfor native file tools. [ece84d4]- Sub-task: Import
mcp_clientingui_2.py. - Sub-task: Add
mcp_client.perf_monitor_callbackto theAppinitialization. - Sub-task: In
ai_client, ensure the MCP tools are registered and available for the AI to call whengui_2.pyis the active UI.
- Sub-task: Import
- Task: Write tests for new core integrations. [
ece84d4]- Sub-task: Create
tests/test_gui2_events.pyto verify thatgui_2.pycorrectly handles AI lifecycle events. - Sub-task: Create
tests/test_gui2_mcp.pyto verify that the AI can use MCP tools throughgui_2.py.
- Sub-task: Create
- Task: Conductor - User Manual Verification 'Core Architectural Integration' (Protocol in workflow.md)
Phase 2: Major Feature Implementation
- Task: Port the API Hooks System. [merged]
- Sub-task: Import
api_hooksingui_2.py. - Sub-task: Instantiate
HookServerin theAppclass. - Sub-task: Implement the logic to start the server based on a CLI flag (e.g.,
--enable-test-hooks). - Sub-task: Implement the queue and lock for pending GUI tasks from the hook server, similar to
gui.py. - Sub-task: Add a main loop task to process the GUI task queue.
- Sub-task: Import
- Task: Port the Performance & Diagnostics feature. [merged]
- Sub-task: Import
PerformanceMonitoringui_2.py. - Sub-task: Instantiate
PerformanceMonitorin theAppclass. - Sub-task: Create a new "Diagnostics" window in
gui_2.py. - Sub-task: Add UI elements (plots, labels) to the Diagnostics window to display FPS, CPU, frame time, etc.
- Sub-task: Add a throttled update mechanism in the main loop to refresh diagnostics data.
- Sub-task: Import
- Task: Implement the Prior Session Viewer. [merged]
- Sub-task: Add a "Load Prior Session" button to the UI.
- Sub-task: Implement the file dialog logic to select a
.logfile. - Sub-task: Implement the logic to parse the log file and populate the comms history view.
- Sub-task: Implement the "tinted" theme application when in viewing mode and a way to exit this mode.
- Task: Write tests for major features.
- Sub-task: Create
tests/test_gui2_api_hooks.pyto test the hook server integration. - Sub-task: Create
tests/test_gui2_diagnostics.pyto verify the diagnostics panel displays data.
- Sub-task: Create
- Task: Conductor - User Manual Verification 'Major Feature Implementation' (Protocol in workflow.md)
Phase 3: UI/UX Refinement
- Task: Refactor UI to a "Hub" based layout.
- Sub-task: Analyze the docking layout of
gui.py. - Sub-task: Create wrapper windows for "Context Hub", "AI Settings Hub", "Discussion Hub", and "Operations Hub" in
gui_2.py. - Sub-task: Move existing windows into their respective Hubs using the
imgui-bundledocking API. - Sub-task: Ensure the default layout is saved to and loaded from
manualslop_layout.ini.
- Sub-task: Analyze the docking layout of
- Task: Add Agent Capability Toggles to the UI. [merged]
- Sub-task: In the "Projects" or a new "Agent" panel, add checkboxes for each agent tool (e.g.,
run_powershell,read_file). - Sub-task: Ensure these UI toggles are saved to the project's
.tomlfile. - Sub-task: Ensure
ai_clientrespects these settings when determining which tools are available to the AI.
- Sub-task: In the "Projects" or a new "Agent" panel, add checkboxes for each agent tool (e.g.,
- Task: Full Theme Integration. [merged]
- Sub-task: Review all newly added windows and controls.
- Sub-task: Ensure that colors, fonts, and scaling from
theme_2.pyare correctly applied everywhere. - Sub-task: Test theme switching to confirm all elements update correctly.
- Task: Write tests for UI/UX changes.
- Sub-task: Create
tests/test_gui2_layout.pyto verify the hub structure is created. - Sub-task: Add tests to verify agent capability toggles are respected.
- Sub-task: Create
- Task: Conductor - User Manual Verification 'UI/UX Refinement' (Protocol in workflow.md)
Phase 4: Finalization and Verification
- Task: Conduct full manual testing against
spec.mdAcceptance Criteria.- Sub-task: Verify AC1:
gui_2.pylaunches. - Sub-task: Verify AC2: Hub layout is correct.
- Sub-task: Verify AC3: Diagnostics panel works.
- Sub-task: Verify AC4: API hooks server runs.
- Sub-task: Verify AC5: MCP tools are usable by AI.
- Sub-task: Verify AC6: Prior Session Viewer works.
- Sub-task: Verify AC7: Theming is consistent.
- Sub-task: Verify AC1:
- Task: Run the full project test suite.
- Sub-task: Execute
uv run run_tests.py(or equivalent). - Sub-task: Ensure all existing and new tests pass.
- Sub-task: Execute
- Task: Code Cleanup and Refactoring.
- Sub-task: Remove any dead code or temporary debug statements.
- Sub-task: Ensure code follows project style guides.
- Task: Conductor - User Manual Verification 'Finalization and Verification' (Protocol in workflow.md)