Cubicon: keep @base presets selectable; mint the variant tier instead

The custom-preset fixture validation (check_profiles.yml step 5, run locally
against the v2.3.2/v2.4.0/v2.4.1 archives) caught a real regression in the
previous Cubicon fix: those archives contain user presets whose inherits
names the @base presets directly ("can not find parent Cubicon ABS @base").
A system preset with instantiation:false is not added to the preset
collection, so flipping the nine @bases was equivalent to deleting their
names - exactly the user-preset drop hazard the migration rules forbid.

Repair: restore all nine @bases byte-identically to their pre-flip state
(instantiated, setting_id, original P510cf* ids; Cubicon PC @base keeps its
minted OFnLnZQo from the copy-paste fix). The AMS ambiguity is instead
resolved Dremel-style: each family's three passthrough variants share one
fresh variant-tier mint as own keys, so on every printer the base and the
variant carry different ids. Zero preset-set change, zero config change,
user presets and fixtures resolve exactly as before the migration.

Verified: fixture archives v2.3.2/v2.4.0/v2.4.1 no longer report missing
parents; config-equivalence holds; orca_extra_profile_check.py exit 0;
assign_filament_ids.py --check exit 0; validator -l 2 exit 0; tree-wide
extended -f still exit 0.
This commit is contained in:
SoftFever
2026-07-03 00:51:29 +08:00
parent 55a3114ec9
commit 33923464ae
37 changed files with 135 additions and 9 deletions

View File

@@ -3,6 +3,7 @@
"name": "Cubicon ABS @Cubicon xCeler-I 0.4 nozzle",
"inherits": "Cubicon ABS @base",
"setting_id": "VJEyK87ZYvHmamB9",
"filament_id": "OF6XuVQE",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon ABS @base",
"from": "system",
"setting_id": "Kz41mb2M9xLbEJ97",
"filament_id": "OF6XuVQE",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon ABS @Cubicon xCeler-Plus 0.4 nozzle",
"inherits": "Cubicon ABS @base",
"setting_id": "A5FQdwh0Xo7aTRpq",
"filament_id": "OF6XuVQE",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon ABS @base",
"inherits": "fdm_filament_abs",
"setting_id": "aZRVIlDze62Bbw81",
"filament_id": "P510cfb0",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon ABS-A100 @Cubicon xCeler-I 0.4 nozzle",
"inherits": "Cubicon ABS-A100 @base",
"setting_id": "OfiOryklf7FDVCz8",
"filament_id": "OFcZZWnB",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon ABS-A100 @base",
"from": "system",
"setting_id": "pIyU9uXQ5V3hsg5F",
"filament_id": "OFcZZWnB",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon ABS-A100 @Cubicon xCeler-Plus 0.4 nozzle",
"inherits": "Cubicon ABS-A100 @base",
"setting_id": "xhYh9x1vescinfbF",
"filament_id": "OFcZZWnB",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon ABS-A100 @base",
"inherits": "Cubicon ABS @base",
"setting_id": "vGIT4KZvqojIh2up",
"filament_id": "P510cfb1",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon ABSk @Cubicon xCeler-I 0.4 nozzle",
"inherits": "Cubicon ABSk @base",
"setting_id": "TXcodZkab4fofnEn",
"filament_id": "OFNQHqAV",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon ABSk @base",
"from": "system",
"setting_id": "CsthNnKn8WlBbkP4",
"filament_id": "OFNQHqAV",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon ABSk @Cubicon xCeler-Plus 0.4 nozzle",
"inherits": "Cubicon ABSk @base",
"setting_id": "UVitMFMxvdf34qZw",
"filament_id": "OFNQHqAV",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon ABSk @base",
"inherits": "Cubicon ABS @base",
"setting_id": "UbOUO0K3Y2iRPBtf",
"filament_id": "P510cfb2",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon PA-CF @Cubicon xCeler-I 0.4 nozzle",
"inherits": "Cubicon PA-CF @base",
"setting_id": "nupuIJggdc1EKDqG",
"filament_id": "OFOJUJAS",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PA-CF @base",
"from": "system",
"setting_id": "NPjuy4deP6Ly7u9s",
"filament_id": "OFOJUJAS",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon PA-CF @Cubicon xCeler-Plus 0.4 nozzle",
"inherits": "Cubicon PA-CF @base",
"setting_id": "ygB1Uf9Vbw9LJZc8",
"filament_id": "OFOJUJAS",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon PA-CF @base",
"inherits": "fdm_filament_pa",
"setting_id": "55cJDyCoEudfOePY",
"filament_id": "P510cfd0",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon PC @Cubicon xCeler-I 0.4 nozzle",
"inherits": "Cubicon PC @base",
"setting_id": "c0sUPS0SRYUNjEpB",
"filament_id": "OFaxQnfz",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PC @base",
"from": "system",
"setting_id": "XGXjHwuHUjtAJGl1",
"filament_id": "OFaxQnfz",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon PC @Cubicon xCeler-Plus 0.4 nozzle",
"inherits": "Cubicon PC @base",
"setting_id": "jbYKOK1A0Oxm9t0f",
"filament_id": "OFaxQnfz",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon PC @base",
"inherits": "fdm_filament_pc",
"setting_id": "Mzg6jfwb2nqfGkdV",
"filament_id": "OFnLnZQo",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon PETG @Cubicon xCeler-I 0.4 nozzle",
"inherits": "Cubicon PETG @base",
"setting_id": "dsX01tCkd2Usk104",
"filament_id": "OF0VEdLB",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PETG @base",
"from": "system",
"setting_id": "2hYoCR5qUXCWIAxZ",
"filament_id": "OF0VEdLB",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -3,6 +3,7 @@
"name": "Cubicon PETG @Cubicon xCeler-Plus 0.4 nozzle",
"inherits": "Cubicon PETG @base",
"setting_id": "5pfiRdyNz9dvT4Q6",
"filament_id": "OF0VEdLB",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon PETG @base",
"inherits": "fdm_filament_pet",
"setting_id": "bGfz4phwIdqSz0Hx",
"filament_id": "P510cfc0",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLA @base",
"from": "system",
"setting_id": "xXJgHAeNf1JdCitr",
"filament_id": "OFq6IhFg",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLA @base",
"from": "system",
"setting_id": "o2BQL6OKtxDmBkWV",
"filament_id": "OFq6IhFg",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLA @base",
"from": "system",
"setting_id": "WkZrzDlGvb25OtrF",
"filament_id": "OFq6IhFg",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -3,8 +3,9 @@
"name": "Cubicon PLA @base",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "ypwdJAu0NlEsWpf4",
"filament_id": "P510cfa0",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLA+ @base",
"from": "system",
"setting_id": "fNR2Bw3e4TGcWhq0",
"filament_id": "OF2HQqTC",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLA+ @base",
"from": "system",
"setting_id": "wukhnaCJaOLUUdiU",
"filament_id": "OF2HQqTC",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLA+ @base",
"from": "system",
"setting_id": "JVShu8DKQ3euGHec",
"filament_id": "OF2HQqTC",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon PLA+ @base",
"inherits": "Cubicon PLA @base",
"setting_id": "ETnuhiOZRh1jxrVk",
"filament_id": "P510cfa1",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLAi21 @base",
"from": "system",
"setting_id": "vcLVF3cglagBfVAF",
"filament_id": "OFti31HS",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLAi21 @base",
"from": "system",
"setting_id": "3TbOucKB5TGk8sXG",
"filament_id": "OFti31HS",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Mini 0.4 nozzle"

View File

@@ -4,6 +4,7 @@
"inherits": "Cubicon PLAi21 @base",
"from": "system",
"setting_id": "Vm1oDASHoFUfDrzQ",
"filament_id": "OFti31HS",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -2,8 +2,9 @@
"type": "filament",
"name": "Cubicon PLAi21 @base",
"inherits": "Cubicon PLA @base",
"setting_id": "mnwC7ijXXV72lBOt",
"filament_id": "P510cfa2",
"instantiation": "false",
"instantiation": "true",
"compatible_printers": [
"Cubicon xCeler-I 0.4 nozzle",
"Cubicon xCeler-Plus 0.4 nozzle"

View File

@@ -643,13 +643,40 @@
"Creality/eSUN PLA-Lite @K2 Plus-all",
"Creality/eSUN PLA-Matte @K2 Plus-all",
"Creality/eSUN PLA-Silk @K2 Plus-all",
"Cubicon/Cubicon ABS @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon ABS @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon ABS @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon ABS-A100 @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon ABS-A100 @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon ABS-A100 @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon ABS-A100 @base",
"Cubicon/Cubicon ABSk @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon ABSk @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon ABSk @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon ABSk @base",
"Cubicon/Cubicon PA-CF @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PA-CF @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PA-CF @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PA-CF @base",
"Cubicon/Cubicon PC @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PC @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PC @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PC @base",
"Cubicon/Cubicon PETG @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PETG @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PETG @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PETG @base",
"Cubicon/Cubicon PLA @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PLA @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PLA @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PLA @base",
"Cubicon/Cubicon PLA+ @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PLA+ @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PLA+ @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PLA+ @base",
"Cubicon/Cubicon PLAi21 @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PLAi21 @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PLAi21 @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PLAi21 @base",
"Custom/Generic PC @MyToolChanger",
"Custom/Generic PETG @MyToolChanger",
@@ -4569,6 +4596,9 @@
"OF0UbONm": [
"Flashforge/FusRock S-PAHT"
],
"OF0VEdLB": [
"Cubicon/Cubicon PETG"
],
"OF0Y5MLd": [
"Qidi/QIDI PETG-GF"
],
@@ -4590,6 +4620,9 @@
"OF22AxCm": [
"Sovol/Polymaker PETG"
],
"OF2HQqTC": [
"Cubicon/Cubicon PLA+"
],
"OF2Psxdc": [
"Co Print/CoPrint Generic TPU"
],
@@ -4680,6 +4713,9 @@
"OF6XIeUW": [
"Flashforge/Generic PLA-CF10"
],
"OF6XuVQE": [
"Cubicon/Cubicon ABS"
],
"OF70DKqH": [
"Snapmaker/Snapmaker TPE"
],
@@ -4945,6 +4981,9 @@
"OFN0pBpo": [
"Qidi/Qidi Generic TPU 95A"
],
"OFNQHqAV": [
"Cubicon/Cubicon ABSk"
],
"OFNRgSch": [
"Artillery/Artillery PC"
],
@@ -4966,6 +5005,9 @@
"OFO5R9KJ": [
"Sovol/Sovol Zero TPU"
],
"OFOJUJAS": [
"Cubicon/Cubicon PA-CF"
],
"OFOSzSuh": [
"Flashforge/Flashforge PA-CF"
],
@@ -5200,6 +5242,9 @@
"OFaKZ6JI": [
"Anycubic/Generic PETG Basic"
],
"OFaxQnfz": [
"Cubicon/Cubicon PC"
],
"OFb3UzMZ": [
"InfiMech/InfiMech PA-CF"
],
@@ -5218,6 +5263,9 @@
"OFc2SnEp": [
"Artillery/Artillery PVA"
],
"OFcZZWnB": [
"Cubicon/Cubicon ABS-A100"
],
"OFceJcLf": [
"Qidi/PolyLite PLA"
],
@@ -5478,6 +5526,9 @@
"OFpwg2Qh": [
"OrcaFilamentLibrary/Elegoo ASA-CF"
],
"OFq6IhFg": [
"Cubicon/Cubicon PLA"
],
"OFqPp2yL": [
"Qidi/QIDI PETG Tough 0.6 nozzle"
],
@@ -5556,6 +5607,9 @@
"OFtet8ui": [
"Snapmaker/Snapmaker TPU High-Flow"
],
"OFti31HS": [
"Cubicon/Cubicon PLAi21"
],
"OFtmT4Nd": [
"Artillery/Artillery ASA"
],
@@ -7620,6 +7674,42 @@
"Creality/eSUN PLA-Lite @K2 Plus-all",
"Creality/eSUN PLA-Matte @K2 Plus-all",
"Creality/eSUN PLA-Silk @K2 Plus-all",
"Cubicon/Cubicon ABS @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon ABS @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon ABS @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon ABS @base",
"Cubicon/Cubicon ABS-A100 @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon ABS-A100 @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon ABS-A100 @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon ABS-A100 @base",
"Cubicon/Cubicon ABSk @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon ABSk @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon ABSk @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon ABSk @base",
"Cubicon/Cubicon PA-CF @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PA-CF @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PA-CF @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PA-CF @base",
"Cubicon/Cubicon PC @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PC @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PC @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PC @base",
"Cubicon/Cubicon PETG @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PETG @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PETG @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PETG @base",
"Cubicon/Cubicon PLA @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PLA @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PLA @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PLA @base",
"Cubicon/Cubicon PLA+ @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PLA+ @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PLA+ @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PLA+ @base",
"Cubicon/Cubicon PLAi21 @Cubicon xCeler-I 0.4 nozzle",
"Cubicon/Cubicon PLAi21 @Cubicon xCeler-Mini 0.4 nozzle",
"Cubicon/Cubicon PLAi21 @Cubicon xCeler-Plus 0.4 nozzle",
"Cubicon/Cubicon PLAi21 @base",
"Custom/Generic PC @MyToolChanger",
"Custom/Generic PETG @MyToolChanger",
"Custom/Generic PLA @MyToolChanger",