From 7a614cbe8c2b8dcd4759980af2f2e31a99e5673e Mon Sep 17 00:00:00 2001 From: Ed_ Date: Fri, 27 Feb 2026 18:35:11 -0500 Subject: [PATCH] checkpoint --- config.toml | 6 +- manual_slop.toml | 8 +++ manual_slop_history.toml | 2 +- manualslop_layout.ini | 71 +++++++++++++-------- project.toml | 5 ++ project_history.toml | 2 +- tests/temp_liveaisettingssim.toml | 5 ++ tests/temp_liveaisettingssim_history.toml | 2 +- tests/temp_livecontextsim.toml | 3 + tests/temp_livecontextsim_history.toml | 6 +- tests/temp_liveexecutionsim.toml | 7 ++- tests/temp_liveexecutionsim_history.toml | 2 +- tests/temp_livetoolssim.toml | 5 ++ tests/temp_livetoolssim_history.toml | 2 +- tests/temp_project.toml | 7 ++- tests/temp_project_history.toml | 15 +++-- tests/visual_mma_verification.py | 75 +++++------------------ 17 files changed, 119 insertions(+), 104 deletions(-) diff --git a/config.toml b/config.toml index 397f206..9002bf9 100644 --- a/config.toml +++ b/config.toml @@ -1,5 +1,5 @@ [ai] -provider = "gemini" +provider = "gemini_cli" model = "gemini-2.5-flash-lite" temperature = 0.0 max_tokens = 8192 @@ -9,7 +9,7 @@ system_prompt = "" [theme] palette = "ImGui Dark" font_size = 16.0 -scale = 1.0 +scale = 1.2999999523162842 font_path = "" [projects] @@ -32,7 +32,7 @@ active = "C:\\projects\\manual_slop\\tests\\temp_project.toml" "Discussion Hub" = true "Operations Hub" = true Theme = true -"Log Management" = false +"Log Management" = true Diagnostics = true [headless] diff --git a/manual_slop.toml b/manual_slop.toml index ea29c4c..404bc04 100644 --- a/manual_slop.toml +++ b/manual_slop.toml @@ -5,6 +5,8 @@ main_context = "MainContext.md" system_prompt = "" word_wrap = true summary_only = false +auto_scroll_comms = true +auto_scroll_tool_calls = true [output] output_dir = "./md_gen" @@ -42,3 +44,9 @@ search_files = true get_file_summary = true web_search = true fetch_url = true + +[gemini_cli] +binary_path = "gemini" + +[mma] +epic = "" diff --git a/manual_slop_history.toml b/manual_slop_history.toml index 74b8bf1..137687f 100644 --- a/manual_slop_history.toml +++ b/manual_slop_history.toml @@ -85,5 +85,5 @@ history = [ [discussions."test gemini mock interaction"] git_commit = "" -last_updated = "2026-02-24T22:12:47" +last_updated = "2026-02-27T11:50:13" history = [] diff --git a/manualslop_layout.ini b/manualslop_layout.ini index 55f49fb..69e4772 100644 --- a/manualslop_layout.ini +++ b/manualslop_layout.ini @@ -78,8 +78,8 @@ Collapsed=0 DockId=0x0000000F,2 [Window][Theme] -Pos=0,17 -Size=588,545 +Pos=0,20 +Size=832,824 Collapsed=0 DockId=0x00000005,1 @@ -89,14 +89,14 @@ Size=900,700 Collapsed=0 [Window][Diagnostics] -Pos=590,17 -Size=530,1228 +Pos=834,20 +Size=1343,935 Collapsed=0 -DockId=0x0000000E,0 +DockId=0x00000010,0 [Window][Context Hub] -Pos=0,17 -Size=588,545 +Pos=0,20 +Size=832,824 Collapsed=0 DockId=0x00000005,0 @@ -107,26 +107,26 @@ Collapsed=0 DockId=0x0000000D,0 [Window][Discussion Hub] -Pos=1122,17 -Size=558,1228 +Pos=2179,20 +Size=1262,1634 Collapsed=0 DockId=0x00000004,0 [Window][Operations Hub] -Pos=590,17 -Size=530,1228 +Pos=834,20 +Size=1343,935 Collapsed=0 -DockId=0x0000000E,1 +DockId=0x00000010,1 [Window][Files & Media] -Pos=0,564 -Size=588,681 +Pos=0,846 +Size=832,808 Collapsed=0 DockId=0x00000006,1 [Window][AI Settings] -Pos=0,564 -Size=588,681 +Pos=0,846 +Size=832,808 Collapsed=0 DockId=0x00000006,0 @@ -136,32 +136,51 @@ Size=416,325 Collapsed=0 [Window][MMA Dashboard] -Pos=157,466 -Size=676,653 +Pos=834,957 +Size=1343,697 Collapsed=0 +DockId=0x00000011,0 -[Table][0xFB6E3870,3] +[Window][Log Management] +Pos=2179,20 +Size=1262,1634 +Collapsed=0 +DockId=0x00000004,1 + +[Table][0xFB6E3870,4] RefScale=13 Column 0 Width=80 Column 1 Weight=1.0000 Column 2 Width=100 +Column 3 Width=120 + +[Table][0xFC15AE63,7] +Column 0 Weight=1.4012 +Column 1 Weight=0.5285 +Column 2 Weight=0.5347 +Column 3 Weight=2.4767 +Column 4 Weight=0.6084 +Column 5 Weight=0.4425 +Column 6 Weight=1.0079 [Docking][Data] DockNode ID=0x00000008 Pos=3125,170 Size=593,1157 Split=Y DockNode ID=0x00000009 Parent=0x00000008 SizeRef=1029,147 Selected=0x0469CA7A DockNode ID=0x0000000A Parent=0x00000008 SizeRef=1029,145 Selected=0xDF822E02 -DockSpace ID=0xAFC85805 Window=0x079D3A04 Pos=0,17 Size=1680,1228 Split=Y +DockSpace ID=0xAFC85805 Window=0x079D3A04 Pos=0,20 Size=3441,1634 Split=Y DockNode ID=0x0000000C Parent=0xAFC85805 SizeRef=1362,1041 Split=X Selected=0x5D11106F - DockNode ID=0x00000003 Parent=0x0000000C SizeRef=1120,1183 Split=X + DockNode ID=0x00000003 Parent=0x0000000C SizeRef=2177,1183 Split=X DockNode ID=0x0000000B Parent=0x00000003 SizeRef=404,1186 Split=Y Selected=0xF4139CA2 DockNode ID=0x00000002 Parent=0x0000000B SizeRef=1029,1119 Split=X Selected=0xF4139CA2 - DockNode ID=0x00000007 Parent=0x00000002 SizeRef=588,858 Split=Y Selected=0x8CA2375C - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=295,545 Selected=0xF4139CA2 - DockNode ID=0x00000006 Parent=0x00000007 SizeRef=295,636 CentralNode=1 Selected=0x7BD57D6A - DockNode ID=0x0000000E Parent=0x00000002 SizeRef=530,858 Selected=0x418C7449 + DockNode ID=0x00000007 Parent=0x00000002 SizeRef=832,858 Split=Y Selected=0x8CA2375C + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=295,824 Selected=0xF4139CA2 + DockNode ID=0x00000006 Parent=0x00000007 SizeRef=295,724 CentralNode=1 Selected=0x7BD57D6A + DockNode ID=0x0000000E Parent=0x00000002 SizeRef=1343,858 Split=Y Selected=0x418C7449 + DockNode ID=0x00000010 Parent=0x0000000E SizeRef=868,887 Selected=0x418C7449 + DockNode ID=0x00000011 Parent=0x0000000E SizeRef=868,661 Selected=0x3AEC3498 DockNode ID=0x00000001 Parent=0x0000000B SizeRef=1029,775 Selected=0x8B4EBFA6 DockNode ID=0x0000000D Parent=0x00000003 SizeRef=435,1186 Selected=0x363E93D6 - DockNode ID=0x00000004 Parent=0x0000000C SizeRef=558,1183 Selected=0x6F2B5B04 + DockNode ID=0x00000004 Parent=0x0000000C SizeRef=1262,1183 Selected=0x6F2B5B04 DockNode ID=0x0000000F Parent=0xAFC85805 SizeRef=1362,451 Selected=0xDD6419BC ;;;<<>>;;; diff --git a/project.toml b/project.toml index 2d9b669..d5feca4 100644 --- a/project.toml +++ b/project.toml @@ -29,3 +29,8 @@ search_files = true get_file_summary = true web_search = true fetch_url = true + +[mma] +epic = "" +active_track_id = "" +tracks = [] diff --git a/project_history.toml b/project_history.toml index c8e8311..37ff6a6 100644 --- a/project_history.toml +++ b/project_history.toml @@ -8,5 +8,5 @@ active = "main" [discussions.main] git_commit = "" -last_updated = "2026-02-26T21:32:42" +last_updated = "2026-02-27T13:51:45" history = [] diff --git a/tests/temp_liveaisettingssim.toml b/tests/temp_liveaisettingssim.toml index a79cd08..58ff4bf 100644 --- a/tests/temp_liveaisettingssim.toml +++ b/tests/temp_liveaisettingssim.toml @@ -33,3 +33,8 @@ search_files = true get_file_summary = true web_search = true fetch_url = true + +[mma] +epic = "" +active_track_id = "" +tracks = [] diff --git a/tests/temp_liveaisettingssim_history.toml b/tests/temp_liveaisettingssim_history.toml index bf4a4d8..ebed681 100644 --- a/tests/temp_liveaisettingssim_history.toml +++ b/tests/temp_liveaisettingssim_history.toml @@ -10,5 +10,5 @@ auto_add = true [discussions.main] git_commit = "" -last_updated = "2026-02-26T21:33:34" +last_updated = "2026-02-27T13:50:46" history = [] diff --git a/tests/temp_livecontextsim.toml b/tests/temp_livecontextsim.toml index 7f4b263..e416ff1 100644 --- a/tests/temp_livecontextsim.toml +++ b/tests/temp_livecontextsim.toml @@ -30,3 +30,6 @@ search_files = true get_file_summary = true web_search = true fetch_url = true + +[mma] +epic = "" diff --git a/tests/temp_livecontextsim_history.toml b/tests/temp_livecontextsim_history.toml index 1a70e9e..66487d8 100644 --- a/tests/temp_livecontextsim_history.toml +++ b/tests/temp_livecontextsim_history.toml @@ -6,10 +6,10 @@ roles = [ "Reasoning", ] history = [] -active = "TestDisc_1772159592" +active = "TestDisc_1772218225" auto_add = true -[discussions.TestDisc_1772159592] +[discussions.TestDisc_1772218225] git_commit = "" -last_updated = "2026-02-26T21:33:27" +last_updated = "2026-02-27T13:50:39" history = [] diff --git a/tests/temp_liveexecutionsim.toml b/tests/temp_liveexecutionsim.toml index 7255da2..05dbbe3 100644 --- a/tests/temp_liveexecutionsim.toml +++ b/tests/temp_liveexecutionsim.toml @@ -20,7 +20,7 @@ base_dir = "." paths = [] [gemini_cli] -binary_path = "gemini" +binary_path = "\"C:\\projects\\manual_slop\\.venv\\Scripts\\python.exe\" \"C:\\projects\\manual_slop\\tests\\mock_gemini_cli.py\"" [deepseek] reasoning_effort = "medium" @@ -33,3 +33,8 @@ search_files = true get_file_summary = true web_search = true fetch_url = true + +[mma] +epic = "" +active_track_id = "" +tracks = [] diff --git a/tests/temp_liveexecutionsim_history.toml b/tests/temp_liveexecutionsim_history.toml index e630ea5..9f91f28 100644 --- a/tests/temp_liveexecutionsim_history.toml +++ b/tests/temp_liveexecutionsim_history.toml @@ -10,5 +10,5 @@ auto_add = true [discussions.main] git_commit = "" -last_updated = "2026-02-26T21:34:05" +last_updated = "2026-02-27T13:51:49" history = [] diff --git a/tests/temp_livetoolssim.toml b/tests/temp_livetoolssim.toml index 2b21302..9e36480 100644 --- a/tests/temp_livetoolssim.toml +++ b/tests/temp_livetoolssim.toml @@ -33,3 +33,8 @@ search_files = true get_file_summary = true web_search = true fetch_url = true + +[mma] +epic = "" +active_track_id = "" +tracks = [] diff --git a/tests/temp_livetoolssim_history.toml b/tests/temp_livetoolssim_history.toml index 4471b07..7db1ec6 100644 --- a/tests/temp_livetoolssim_history.toml +++ b/tests/temp_livetoolssim_history.toml @@ -10,5 +10,5 @@ auto_add = true [discussions.main] git_commit = "" -last_updated = "2026-02-26T21:33:51" +last_updated = "2026-02-27T13:51:03" history = [] diff --git a/tests/temp_project.toml b/tests/temp_project.toml index 53bd8d3..448a54f 100644 --- a/tests/temp_project.toml +++ b/tests/temp_project.toml @@ -6,7 +6,7 @@ main_context = "" word_wrap = true summary_only = false auto_scroll_comms = true -auto_scroll_tool_calls = true +auto_scroll_tool_calls = false [output] output_dir = "./md_gen" @@ -33,3 +33,8 @@ search_files = true get_file_summary = true web_search = true fetch_url = true + +[mma] +epic = "" +active_track_id = "" +tracks = [] diff --git a/tests/temp_project_history.toml b/tests/temp_project_history.toml index b020e92..4b83b50 100644 --- a/tests/temp_project_history.toml +++ b/tests/temp_project_history.toml @@ -5,17 +5,20 @@ roles = [ "System", "Reasoning", ] -active = "mma_human veriffication" +active = "AutoDisc" auto_add = true [discussions.main] git_commit = "" -last_updated = "2026-02-26T22:00:42" +last_updated = "2026-02-27T13:51:58" history = [ - "@2026-02-26T22:00:02\nSystem:\n[PERFORMANCE ALERT] CPU usage high: 92.2%. Please consider optimizing recent changes or reducing load.", + "@2026-02-27T13:51:51\nUser:\nHello! This is an automated test. Just say 'Acknowledged'.", + "@2026-02-27T13:51:58\nAI:\nAcknowledged.", ] -[discussions."mma_human veriffication"] +[discussions.AutoDisc] git_commit = "" -last_updated = "2026-02-26T22:07:06" -history = [] +last_updated = "2026-02-27T18:34:58" +history = [ + "@2026-02-27T18:18:46\nSystem:\n[PERFORMANCE ALERT] Frame time high: 61.9ms. Please consider optimizing recent changes or reducing load.", +] diff --git a/tests/visual_mma_verification.py b/tests/visual_mma_verification.py index 124f308..330ee0e 100644 --- a/tests/visual_mma_verification.py +++ b/tests/visual_mma_verification.py @@ -1,15 +1,14 @@ - import subprocess import time import sys import os -import glob # Will be used to find api_hook_client.py path if needed, though sys.path modification is better. +import glob # --- Configuration --- GUI_SCRIPT = 'gui_2.py' TEST_HOOKS_FLAG = '--enable-test-hooks' API_HOOK_CLIENT_MODULE = 'api_hook_client' -PROJECT_ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) # Calculate project root +PROJECT_ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) # Ensure project root is in sys.path to import modules like api_hook_client if PROJECT_ROOT not in sys.path: @@ -27,7 +26,7 @@ except ImportError as e: def run_visual_mma_verification(): print("Starting visual MMA verification test...") - # Change current directory to project root to ensure relative paths are correct for gui_2.py + # Change current directory to project root original_dir = os.getcwd() if original_dir != PROJECT_ROOT: try: @@ -47,7 +46,7 @@ def run_visual_mma_verification(): stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True, - cwd=PROJECT_ROOT # Explicitly set working directory + cwd=PROJECT_ROOT ) print(f"GUI process started with PID: {gui_process.pid}") except FileNotFoundError: @@ -57,32 +56,25 @@ def run_visual_mma_verification(): print(f"Error starting GUI process: {e}") return - # Give the GUI a moment to start and open the hook server. + # Wait for GUI to start print("Waiting for GUI to initialize and hook server to start (5 seconds)...") time.sleep(5) - # Check if the GUI process exited prematurely if gui_process.poll() is not None: print(f"Error: GUI process exited prematurely with return code {gui_process.returncode}.") - stderr_output = gui_process.stderr.read() - if stderr_output: - print("--- GUI Stderr ---") - print(stderr_output) - print("------------------") return - # 2. Use api_hook_client.ApiHookClient to push events + # 2. Use ApiHookClient try: client = ApiHookClient() print("ApiHookClient initialized successfully.") except Exception as e: - print(f"Failed to initialize ApiHookClient. Ensure the hook server is running on port 8999. Error: {e}") + print(f"Failed to initialize ApiHookClient. Error: {e}") if gui_process: gui_process.terminate() - gui_process.wait() return - # 3. Include at least 5 tickets in different states + # 3. Setup MMA data track_data = { "id": "visual_test_track", "title": "Visual Verification Track", @@ -109,8 +101,6 @@ def run_visual_mma_verification(): except Exception as e: print(f" - Warning: Failed to push mma_state_update: {e}") - # 4. After a short delay, push an 'mma_step_approval' event - print("\nWaiting for GUI to render ticket queue and progress bar (3 seconds)...") time.sleep(3) print("Pushing 'mma_step_approval' event to trigger HITL modal...") @@ -125,60 +115,27 @@ def run_visual_mma_verification(): print(f"Error pushing mma_step_approval event: {e}") # 5. Provide clear print statements for manual verification - print(" ---- Manual Verification Instructions ---") + print("\n--- Manual Verification Instructions ---") print("Please visually inspect the running GUI application:") print("1. MMA Dashboard: Ensure the 'MMA Dashboard' panel is visible and active.") - print("2. Ticket Queue: Verify the 'Ticket Queue' section displays all 5 tickets with correct statuses:") - print(" - TICKET-001: Should be 'todo'") - print(" - TICKET-002: Should be 'running'") - print(" - TICKET-003: Should be 'complete'") - print(" - TICKET-004: Should be 'blocked'") - print(" - TICKET-005: Should be 'paused'") - print(" Observe the distinct status colors for each ticket.") - print("3. Progress Bar: Check that the progress bar correctly reflects the completed/total tickets (e.g., 1/5).") + print("2. Ticket Queue: Verify the 'Ticket Queue' section displays all 5 tickets with correct statuses.") + print("3. Progress Bar: Check that the progress bar correctly reflects the completed/total tickets.") print("4. Approval Modal: Confirm that an 'MMA Step Approval' modal has appeared.") - print(" - Verify it contains a 'Proposed Tool Call' section (e.g., showing 'powershell -Command...').") - print(" - Ensure there is an option/button to 'Edit Payload'.") - print(" ---------------------------------------") + print("\n--------------------------------------") print("The test script has finished its automated actions.") - print("The GUI application is still running. Please perform manual verification.") - print("Press Enter in this terminal to stop the GUI process and exit the test script.") + print("The GUI application is still running. Press Enter to exit.") try: input() except EOFError: - print("EOF received, exiting.") pass - print(" -Stopping GUI process...") + print("\nStopping GUI process...") if gui_process: - try: - gui_process.terminate() - gui_process.wait(timeout=10) - print("GUI process terminated gracefully.") - except subprocess.TimeoutExpired: - print("GUI process did not terminate within the timeout. Killing it forcefully.") - gui_process.kill() - gui_process.wait() - except Exception as e: - print(f"Error during GUI process termination: {e}") - else: - print("GUI process was not started or already terminated.") + gui_process.terminate() + gui_process.wait(timeout=5) print("Visual MMA verification test script finished.") - # Restore original directory - if original_dir != PROJECT_ROOT: - try: - os.chdir(original_dir) - print(f"Restored original working directory: {original_dir}") - except FileNotFoundError: - print(f"Warning: Could not restore original working directory '{original_dir}'.") - -# --- Main execution --- if __name__ == "__main__": - # When the script is executed directly, ensure it runs from the correct context. run_visual_mma_verification()