168168 "116" : ("SIM_TEST_ARCHIVES_AND_BASELINES_FROZEN_CAMPAIGNS" , "Sim/Test Archives & Baselines (Frozen Campaigns)" ),
169169}
170170
171+ # NOT ASSIGNED / RESERVED systems (reserved for future Space-T tailoring)
172+ RESERVED_SYSTEMS = {
173+ "13" : ("NOT_ASSIGNED_RESERVED" , "Not Assigned / Reserved" ),
174+ "14" : ("NOT_ASSIGNED_RESERVED" , "Not Assigned / Reserved" ),
175+ "15" : ("NOT_ASSIGNED_RESERVED" , "Not Assigned / Reserved" ),
176+ "16" : ("NOT_ASSIGNED_RESERVED" , "Not Assigned / Reserved" ),
177+ "17" : ("NOT_ASSIGNED_RESERVED" , "Not Assigned / Reserved" ),
178+ "19" : ("NOT_ASSIGNED_RESERVED" , "Not Assigned / Reserved" ),
179+ }
180+
171181# Default subsystems for key chapters (expandable)
172182DEFAULT_SUBSYSTEMS = {
173183 "21" : [("10" , "Cabin_Atmosphere" ), ("20" , "Thermal_Control" ), ("30" , "Humidity_Contamination" )],
@@ -566,6 +576,7 @@ def generate_opt_in_structure(root_path: Path) -> None:
566576 ("I-INFRASTRUCTURES" , "Ground systems, launch, H₂ value chains, facilities" ),
567577 ("N-NEURAL_NETWORKS_DPP_TRACEABILITY" , "AI ops, Digital Product Passport, neural governance" ),
568578 ("SIMTEST" , "Simulation and test governance, VV evidence, qualification" ),
579+ ("RESERVED" , "Reserved ATA codes for future Space-T tailoring and allocation" ),
569580 ]
570581
571582 for axis_name , axis_desc in axes :
@@ -621,7 +632,7 @@ def main():
621632 if args .dry_run :
622633 print ("DRY RUN - No files will be created\n " )
623634 print ("Would generate:" )
624- print (f" - OPT-IN axis structure (6 axes)" )
635+ print (f" - OPT-IN axis structure (7 axes)" )
625636 print (f" - { len (system_codes )} ATA chapters" )
626637 print (f" - 14 lifecycle folders per chapter" )
627638 print (f" - 9 cross-ATA buckets per chapter" )
@@ -677,8 +688,14 @@ def main():
677688 for code , (name , desc ) in SIMTEST_SYSTEMS .items ():
678689 generate_system (simtest_path , code , name , desc )
679690
691+ # RESERVED axis (not assigned / reserved for future allocation)
692+ reserved_path = root_path / "RESERVED"
693+ print ("\n RESERVED:" )
694+ for code , (name , desc ) in RESERVED_SYSTEMS .items ():
695+ generate_system (reserved_path , code , name , desc )
696+
680697 # Summary
681- total_systems = len (system_codes ) + len (O_SYSTEMS ) + len (P_SYSTEMS ) + len (I_SYSTEMS ) + len (N_SYSTEMS ) + len (SIMTEST_SYSTEMS )
698+ total_systems = len (system_codes ) + len (O_SYSTEMS ) + len (P_SYSTEMS ) + len (I_SYSTEMS ) + len (N_SYSTEMS ) + len (SIMTEST_SYSTEMS ) + len ( RESERVED_SYSTEMS )
682699 print (f"\n { '=' * 60 } " )
683700 print ("GENERATION COMPLETE" )
684701 print (f"{ '=' * 60 } " )
@@ -689,6 +706,7 @@ def main():
689706 print (f"I-INFRASTRUCTURES chapters: { len (I_SYSTEMS )} " )
690707 print (f"N-NEURAL chapters: { len (N_SYSTEMS )} " )
691708 print (f"SIMTEST chapters: { len (SIMTEST_SYSTEMS )} " )
709+ print (f"RESERVED chapters: { len (RESERVED_SYSTEMS )} " )
692710 print (f"Total chapters: { total_systems } " )
693711 print (f"\n Next steps:" )
694712 print (" 1. Review generated structure" )
0 commit comments