From b222bd4586a1b1ff99591c232b36a732364215dc Mon Sep 17 00:00:00 2001 From: Jeremy Shen Date: Wed, 10 Jun 2026 10:00:28 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(gui):=20allow=20all=20steps?= =?UTF-8?q?=20to=20be=20runnable=20independently?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove dependency chain that prevented steps 2,3,4 from running - All steps now have can_run=True - Steps can be executed individually without running previous steps --- src/gui/main_window.py | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/src/gui/main_window.py b/src/gui/main_window.py index 940a146..e1db703 100644 --- a/src/gui/main_window.py +++ b/src/gui/main_window.py @@ -746,23 +746,17 @@ class MainWindow(ctk.CTk): def _update_step_dependencies(self) -> None: """Update step run-ability based on dependency status. - Step 0 (env) is always runnable. - Step N is runnable only if all steps before it have completed. + All steps are runnable independently. """ for i, step in enumerate(self._steps): - if i == 0: - step.set_can_run(True) - if self._step_statuses.get(i) == "pending": - step.set_status("pending") - else: - prev_completed = all( - self._step_statuses.get(j) == "complete" - for j in range(i) - ) - step.set_can_run(prev_completed) - status = self._step_statuses.get(i, "pending") - if not prev_completed and status == "pending": - step.set_status("disabled") + step.set_can_run(True) + status = self._step_statuses.get(i, "pending") + if status == "pending": + step.set_status("pending") + elif status == "complete": + step.set_status("complete") + elif status == "error": + step.set_status("error") def _execute_step(self, index: int) -> None: """Execute a single step independently.