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

@@ -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",