diff --git a/api_hooks.py b/api_hooks.py index 7ddde78..5ee9ff5 100644 --- a/api_hooks.py +++ b/api_hooks.py @@ -130,6 +130,7 @@ class HookHandler(BaseHTTPRequestHandler): result["active_tickets"] = getattr(app, "active_tickets", []) result["mma_step_mode"] = getattr(app, "mma_step_mode", False) result["pending_tool_approval"] = getattr(app, "_pending_ask_dialog", False) + result["pending_script_approval"] = getattr(app, "_pending_dialog", None) is not None result["pending_mma_step_approval"] = getattr(app, "_pending_mma_approval", None) is not None result["pending_mma_spawn_approval"] = getattr(app, "_pending_mma_spawn", None) is not None # Keep old fields for backward compatibility but add specific ones above diff --git a/gui_2.py b/gui_2.py index fecdda8..0019d53 100644 --- a/gui_2.py +++ b/gui_2.py @@ -388,6 +388,7 @@ class App: 'btn_mma_accept_tracks': self._cb_accept_tracks, 'btn_mma_start_track': self._cb_start_track, 'btn_approve_tool': self._handle_approve_tool, + 'btn_approve_script': self._handle_approve_script, 'btn_approve_mma_step': self._handle_approve_mma_step, 'btn_approve_spawn': self._handle_approve_spawn, } diff --git a/tests/visual_sim_mma_v2.py b/tests/visual_sim_mma_v2.py index b19634c..4960517 100644 --- a/tests/visual_sim_mma_v2.py +++ b/tests/visual_sim_mma_v2.py @@ -25,6 +25,10 @@ def _drain_approvals(client: ApiHookClient, status: dict) -> None: print('[SIM] Approving pending tool...') client.click('btn_approve_tool') time.sleep(0.5) + elif status.get('pending_script_approval'): + print('[SIM] Approving pending PowerShell script...') + client.click('btn_approve_script') + time.sleep(0.5) def _poll(client: ApiHookClient, timeout: int, condition, label: str) -> tuple[bool, dict]: