Skip to content

Commit 3b029e2

Browse files
committed
fix(cli): router prog-engine vers la GUI dédiée dans tous les cas
1 parent 824c681 commit 3b029e2

3 files changed

Lines changed: 17 additions & 7 deletions

File tree

cli/fallback.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
python -m pycompiler_ark bcasl /path/to/ws # Launch BCASL with workspace
5050
python -m pycompiler_ark engines # Launch Engines standalone GUI
5151
python -m pycompiler_ark engines --dry-run # List available engines
52-
python -m pycompiler_ark prog-engine <engine_id> [workspace] # Launch focused engine GUI
52+
python -m pycompiler_ark prog-engine [engine_id] <workspace> # Launch focused engine GUI
5353
python -m pycompiler_ark unload # Unload all engines
5454
python -m pycompiler_ark check [workspace] # CI/CD strict checks
5555
python -m pycompiler_ark init [workspace] # Init workspace config
@@ -143,10 +143,18 @@ def run(argv: list[str] | None, app_version: str) -> int:
143143
return _run_engines(rest)
144144
if cmd == "prog-engine":
145145
if not rest:
146-
error("Usage: prog-engine <engine_id> [workspace]")
146+
error("Usage: prog-engine [engine_id] <workspace>")
147+
return EXIT_USAGE_ERROR
148+
engine_id = None
149+
workspace = None
150+
if len(rest) == 1:
151+
workspace = normalize_path(rest[0])
152+
else:
153+
engine_id = rest[0]
154+
workspace = normalize_path(first_positional(rest[1:]))
155+
if not workspace:
156+
error("Workspace is required. Usage: prog-engine [engine_id] <workspace>")
147157
return EXIT_USAGE_ERROR
148-
engine_id = rest[0]
149-
workspace = normalize_path(first_positional(rest[1:]))
150158
return launch_prog_engine_gui(engine_id=engine_id, workspace_dir=workspace)
151159
if cmd == "check":
152160
return run_check(rest)

cli/launchers.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ def launch_engines_only_standalone(workspace_dir: Optional[str] = None) -> int:
112112

113113

114114
def launch_prog_engine_standalone(
115-
engine_id: str, workspace_dir: Optional[str] = None
115+
engine_id: Optional[str], workspace_dir: Optional[str] = None
116116
) -> int:
117117
try:
118118
from OnlyMod.EngineOnlyMod.gui import launch_prog_engine_gui
@@ -124,7 +124,7 @@ def launch_prog_engine_standalone(
124124
pass
125125

126126
return launch_prog_engine_gui(
127-
engine_id=str(engine_id),
127+
engine_id=str(engine_id) if engine_id else None,
128128
workspace_dir=workspace_dir,
129129
)
130130
except ImportError as exc:

cli/lazy_ops.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,9 @@ def launch_engines_gui(workspace_dir: str | None = None) -> int:
2828
return launch_engines_only_standalone(workspace_dir)
2929

3030

31-
def launch_prog_engine_gui(engine_id: str, workspace_dir: str | None = None) -> int:
31+
def launch_prog_engine_gui(
32+
engine_id: str | None, workspace_dir: str | None = None
33+
) -> int:
3234
from .launchers import launch_prog_engine_standalone
3335

3436
return launch_prog_engine_standalone(engine_id, workspace_dir)

0 commit comments

Comments
 (0)