@@ -184,7 +184,6 @@ def generate_minimal_sbatch_script(
184184 setup_script : str | None = None ,
185185 output_dir : Path | None = None ,
186186 runtime_config_filename : str = "config.yaml" ,
187- run_name_suffix : str | None = None ,
188187) -> str :
189188 """Generate minimal sbatch script that calls the Python orchestrator.
190189
@@ -235,7 +234,6 @@ def generate_minimal_sbatch_script(
235234 container_image = os .path .expandvars (config .model .container )
236235
237236 job_name = get_job_name (config )
238- run_suffix = run_name_suffix or get_srtslurm_setting ("run_name_suffix" ) or ""
239237
240238 rendered = template .render (
241239 job_name = job_name ,
@@ -256,7 +254,6 @@ def generate_minimal_sbatch_script(
256254 srtctl_source = str (srtctl_source .resolve ()),
257255 output_base = output_base ,
258256 setup_script = setup_script ,
259- run_name_suffix = run_suffix ,
260257 )
261258
262259 return rendered
@@ -269,7 +266,7 @@ def submit_with_orchestrator(
269266 tags : list [str ] | None = None ,
270267 setup_script : str | None = None ,
271268 output_dir : Path | None = None ,
272- run_name_suffix : str | None = None ,
269+ variant_suffix : str | None = None ,
273270 source_config_path : Path | None = None ,
274271 runtime_config_text : str | None = None ,
275272) -> str | None :
@@ -284,8 +281,8 @@ def submit_with_orchestrator(
284281 tags: Optional tags for the run
285282 setup_script: Optional custom setup script name (overrides config)
286283 output_dir: Custom output directory (CLI flag, highest priority)
287- run_name_suffix : If set (e.g. "base", "lowmem"), also save config_path
288- as config_{run_name_suffix }.yaml in the job output dir.
284+ variant_suffix : If set (e.g. "base", "lowmem"), also save config_path
285+ as config_{variant_suffix }.yaml in the job output dir.
289286 source_config_path: If set, save the original source YAML as config.yaml
290287 while the job executes a resolved variant config.
291288 runtime_config_text: Resolved runtime YAML written under OUTPUT_DIR when
@@ -295,8 +292,6 @@ def submit_with_orchestrator(
295292 job_id string on success, None for dry_run.
296293 """
297294
298- run_suffix = run_name_suffix if run_name_suffix is not None else (get_srtslurm_setting ("run_name_suffix" ) or "" )
299-
300295 if config is None :
301296 config = load_config (config_path )
302297
@@ -306,15 +301,14 @@ def submit_with_orchestrator(
306301 if runtime_config_text is None :
307302 raise ValueError ("runtime_config_text is required when source_config_path is set" )
308303 resolved_runtime_config_text = runtime_config_text
309- runtime_config_filename = f"config_{ run_name_suffix } .yaml" if run_name_suffix else "config_resolved.yaml"
304+ runtime_config_filename = f"config_{ variant_suffix } .yaml" if variant_suffix else "config_resolved.yaml"
310305
311306 script_content = generate_minimal_sbatch_script (
312307 config = config ,
313308 config_path = config_path ,
314309 setup_script = setup_script ,
315310 output_dir = output_dir ,
316311 runtime_config_filename = runtime_config_filename ,
317- run_name_suffix = run_suffix or None ,
318312 )
319313
320314 if dry_run :
@@ -357,20 +351,19 @@ def submit_with_orchestrator(
357351 )
358352
359353 job_id = result .stdout .strip ().split ()[- 1 ]
360- job_dir_name = f"{ job_id } { run_suffix } "
361354
362355 # Determine output directory
363356 # Priority: CLI -o flag > srtslurm.yaml output_dir > srtctl_root/outputs
364357 if output_dir :
365- job_output_dir = output_dir / job_dir_name
358+ job_output_dir = output_dir / job_id
366359 else :
367360 custom_output_dir = get_srtslurm_setting ("output_dir" )
368361 if custom_output_dir :
369- job_output_dir = Path (os .path .expandvars (custom_output_dir )) / job_dir_name
362+ job_output_dir = Path (os .path .expandvars (custom_output_dir )) / job_id
370363 else :
371364 srtctl_root = get_srtslurm_setting ("srtctl_root" )
372365 srtctl_source = Path (srtctl_root ) if srtctl_root else Path (__file__ ).parent .parent .parent .parent
373- job_output_dir = srtctl_source / "outputs" / job_dir_name
366+ job_output_dir = srtctl_source / "outputs" / job_id
374367 job_output_dir .mkdir (parents = True , exist_ok = True )
375368
376369 shutil .copy (source_config_path or config_path , job_output_dir / "config.yaml" )
@@ -458,7 +451,7 @@ def submit_single(
458451 setup_script : str | None = None ,
459452 tags : list [str ] | None = None ,
460453 output_dir : Path | None = None ,
461- run_name_suffix : str | None = None ,
454+ variant_suffix : str | None = None ,
462455 source_config_path : Path | None = None ,
463456 runtime_config_text : str | None = None ,
464457) -> str | None :
@@ -473,7 +466,7 @@ def submit_single(
473466 setup_script: Optional custom setup script name
474467 tags: Optional list of tags
475468 output_dir: Custom output directory (CLI flag, highest priority)
476- run_name_suffix : If set, also save config as config_{suffix}.yaml in job output dir.
469+ variant_suffix : If set, also save config as config_{suffix}.yaml in job output dir.
477470 source_config_path: If set, saved as config.yaml while execution uses the
478471 resolved variant config.
479472 runtime_config_text: Resolved runtime YAML written under OUTPUT_DIR for
@@ -496,7 +489,7 @@ def submit_single(
496489 tags = tags ,
497490 setup_script = setup_script ,
498491 output_dir = output_dir ,
499- run_name_suffix = run_name_suffix ,
492+ variant_suffix = variant_suffix ,
500493 source_config_path = source_config_path ,
501494 runtime_config_text = runtime_config_text ,
502495 )
@@ -518,7 +511,6 @@ def submit_sweep(
518511 setup_script : str | None = None ,
519512 tags : list [str ] | None = None ,
520513 output_dir : Path | None = None ,
521- run_name_suffix : str | None = None ,
522514):
523515 """Submit parameter sweep.
524516
@@ -528,7 +520,6 @@ def submit_sweep(
528520 setup_script: Optional custom setup script name
529521 tags: Optional list of tags
530522 output_dir: Custom output directory (CLI flag, highest priority)
531- run_name_suffix: Optional suffix appended to each job's output dir name
532523 """
533524 from srtctl .core .sweep import generate_sweep_configs
534525
@@ -603,7 +594,6 @@ def submit_sweep(
603594 setup_script = setup_script ,
604595 tags = tags ,
605596 output_dir = output_dir ,
606- run_name_suffix = run_name_suffix ,
607597 )
608598 finally :
609599 with contextlib .suppress (OSError ):
@@ -634,7 +624,6 @@ def submit_directory(
634624 tags : list [str ] | None = None ,
635625 force_sweep : bool = False ,
636626 output_dir : Path | None = None ,
637- run_name_suffix : str | None = None ,
638627) -> None :
639628 """Submit all YAML configs in a directory recursively.
640629
@@ -645,7 +634,6 @@ def submit_directory(
645634 tags: Optional list of tags
646635 force_sweep: If True, treat all configs as sweeps
647636 output_dir: Custom output directory (CLI flag, highest priority)
648- run_name_suffix: Optional suffix for output dir name
649637 """
650638 yaml_files = find_yaml_files (directory )
651639
@@ -685,31 +673,12 @@ def submit_directory(
685673
686674 try :
687675 if is_override_config (yaml_file ):
688- submit_override (
689- yaml_file ,
690- dry_run = dry_run ,
691- setup_script = setup_script ,
692- tags = tags ,
693- output_dir = output_dir ,
694- run_name_suffix = run_name_suffix ,
695- )
676+ submit_override (yaml_file , dry_run = dry_run , setup_script = setup_script , tags = tags , output_dir = output_dir )
696677 elif force_sweep or is_sweep_config (yaml_file ):
697- submit_sweep (
698- yaml_file ,
699- dry_run = dry_run ,
700- setup_script = setup_script ,
701- tags = tags ,
702- output_dir = output_dir ,
703- run_name_suffix = run_name_suffix ,
704- )
678+ submit_sweep (yaml_file , dry_run = dry_run , setup_script = setup_script , tags = tags , output_dir = output_dir )
705679 else :
706680 submit_single (
707- config_path = yaml_file ,
708- dry_run = dry_run ,
709- setup_script = setup_script ,
710- tags = tags ,
711- output_dir = output_dir ,
712- run_name_suffix = run_name_suffix ,
681+ config_path = yaml_file , dry_run = dry_run , setup_script = setup_script , tags = tags , output_dir = output_dir
713682 )
714683 success_count += 1
715684 except Exception as e :
@@ -787,7 +756,6 @@ def submit_override(
787756 setup_script : str | None = None ,
788757 tags : list [str ] | None = None ,
789758 output_dir : Path | None = None ,
790- run_name_suffix : str | None = None ,
791759) -> None :
792760 """Expand an override config file and submit each variant.
793761
@@ -801,7 +769,6 @@ def submit_override(
801769 setup_script: Optional custom setup script name
802770 tags: Optional list of tags
803771 output_dir: Custom output directory
804- run_name_suffix: Optional suffix for output dir name
805772 """
806773 with open (config_path ) as f :
807774 raw_config = yaml .safe_load (f )
@@ -851,7 +818,6 @@ def submit_override(
851818 setup_script = setup_script ,
852819 tags = tags ,
853820 output_dir = output_dir ,
854- run_name_suffix = suffix ,
855821 )
856822 finally :
857823 with contextlib .suppress (OSError ):
@@ -864,7 +830,7 @@ def submit_override(
864830 setup_script = setup_script ,
865831 tags = tags ,
866832 output_dir = output_dir ,
867- run_name_suffix = suffix ,
833+ variant_suffix = suffix ,
868834 source_config_path = config_path ,
869835 runtime_config_text = runtime_config_text ,
870836 )
@@ -948,13 +914,6 @@ def add_common_args(p):
948914 help = "YAML config file, directory, or file:selector for overrides" ,
949915 )
950916 p .add_argument ("-o" , "--output" , type = Path , dest = "output_dir" , help = "Custom output directory for job logs" )
951- p .add_argument (
952- "--run-name-suffix" ,
953- type = str ,
954- dest = "run_name_suffix" ,
955- default = None ,
956- help = "Suffix for output dir name (e.g. _myrun -> outputs/12345_myrun)" ,
957- )
958917 p .add_argument ("--sweep" , action = "store_true" , help = "Force sweep mode" )
959918 p .add_argument ("-y" , "--yes" , action = "store_true" , help = "Skip confirmation prompts" )
960919
@@ -1007,11 +966,6 @@ def add_common_args(p):
1007966
1008967 setup_script = getattr (args , "setup_script" , None )
1009968 output_dir = getattr (args , "output_dir" , None )
1010- run_name_suffix = getattr (args , "run_name_suffix" , None )
1011-
1012- if run_name_suffix is None and not is_dry_run and not getattr (args , "yes" , False ):
1013- raw = console .input ("[bold cyan]Run name suffix[/] (leave empty to skip): " ).strip ()
1014- run_name_suffix = raw or None
1015969
1016970 # Handle directory input
1017971 if config_path .is_dir ():
@@ -1024,7 +978,6 @@ def add_common_args(p):
1024978 tags = tags ,
1025979 force_sweep = args .sweep ,
1026980 output_dir = output_dir ,
1027- run_name_suffix = run_name_suffix ,
1028981 )
1029982 elif is_override_config (config_path ):
1030983 submit_override (
@@ -1034,7 +987,6 @@ def add_common_args(p):
1034987 setup_script = setup_script ,
1035988 tags = tags ,
1036989 output_dir = output_dir ,
1037- run_name_suffix = run_name_suffix ,
1038990 )
1039991 else :
1040992 if selector :
@@ -1047,7 +999,6 @@ def add_common_args(p):
1047999 setup_script = setup_script ,
10481000 tags = tags ,
10491001 output_dir = output_dir ,
1050- run_name_suffix = run_name_suffix ,
10511002 )
10521003 else :
10531004 submit_single (
@@ -1056,7 +1007,6 @@ def add_common_args(p):
10561007 setup_script = setup_script ,
10571008 tags = tags ,
10581009 output_dir = output_dir ,
1059- run_name_suffix = run_name_suffix ,
10601010 )
10611011 except Exception as e :
10621012 console .print (f"[bold red]Error:[/] { e } " )
0 commit comments