profiles: deterministic setting_id from vendor/type/name (#14432)

* profiles: enforce globally-unique, per-vendor-namespaced setting_id

Many non-Bambu vendors copied Bambu's generic setting_ids (GFSA04 alone
appeared in 1557 files), so setting_id was not globally unique. This
namespaces every vendor's ids and reserves Bambu/OrcaFilamentLibrary space.

- Reserve "G*" (Bambu) and "O*" (OrcaFilamentLibrary) id spaces.
- Assign each other vendor a 2-char prefix (first+last letter, collision
  resolved) and renumber every instantiated preset to <PREFIX><NNNN>.
- Strip setting_id from base profiles (instantiation:false) per Bambu's
  convention; assign one to instantiated presets that lacked it.
- Remove the pre-existing misspelled "settings_id" key (91 files).
- filament_id is left untouched (it is a per-material id).
- Add one-time migration script scripts/assign_vendor_setting_ids.py with a
  persisted registry resources/profiles/vendor_prefixes.json. Re-runs freeze
  existing ids; only new vendors/profiles get new ids.
- Bump version in each changed vendor index file.
- Extend scripts/orca_extra_profile_check.py with a CI guard: global
  uniqueness, in-namespace, no base setting_id, no gaps, no settings_id typo.

7425 profile files changed across 61 vendors; 0 cross-vendor collisions;
validator clean; migration idempotent. BBL and OrcaFilamentLibrary id spaces
untouched.

* profiles: add setting_id authoring guide for new vendors / profiles

* profiles: drop in-repo README; setting_id guide now lives in the wiki

* profiles: derive setting_id deterministically from vendor/type/name

* bump profile version
This commit is contained in:
SoftFever
2026-06-27 20:11:25 +08:00
parent 8ccae50e1b
commit 6d7eeb89dc
7876 changed files with 8152 additions and 6541 deletions

View File

@@ -3,7 +3,7 @@
"name": "Chuanying ABS @Chuanying X1 0.25 Nozzle",
"inherits": "Chuanying Generic ABS",
"from": "system",
"setting_id": "GFSA04_02",
"setting_id": "VkCgo0e4KR24DX28",
"filament_id": "GFB99",
"instantiation": "true",
"compatible_printers": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying ASA @Chuanying X1 0.25 Nozzle",
"inherits": "Chuanying Generic ASA",
"from": "system",
"setting_id": "GFSA04_05",
"setting_id": "px1EPCDgOG8eE81V",
"filament_id": "GFL99",
"instantiation": "true",
"compatible_printers": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic ABS",
"inherits": "fdm_filament_abs",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "XslWGeEo1Okicu28",
"filament_id": "GFB99",
"instantiation": "true",
"filament_flow_ratio": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic ASA",
"inherits": "fdm_filament_asa",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "wBBQiy8JV2LrnIav",
"filament_id": "GFL99",
"instantiation": "true",
"additional_cooling_fan_speed": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic HIPS",
"inherits": "Chuanying Generic ABS",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "bBNozld07rP6mV3d",
"filament_id": "GFB99",
"instantiation": "true",
"activate_air_filtration": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic HS PLA",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "YZT1Uv73b8ArVoX3",
"filament_id": "GFL99",
"instantiation": "true",
"bed_temperature_difference": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic PETG-CF10",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "S2vCGI7sqN8FwodT",
"filament_id": "GFG99",
"instantiation": "true",
"additional_cooling_fan_speed": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic PETG",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "judDupafROrSnVv8",
"filament_id": "GFG99",
"instantiation": "true",
"filament_flow_ratio": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic PLA-CF10",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "EZA59VPwew1cpyUJ",
"filament_id": "GFL99",
"instantiation": "true",
"additional_cooling_fan_speed": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic PLA-Silk",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "M9wzNVOPRQlayQH1",
"filament_id": "GFL99",
"instantiation": "true",
"filament_flow_ratio": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic PLA",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "nnyBm7dlrz3OsVQz",
"filament_id": "GFL99",
"instantiation": "true",
"filament_flow_ratio": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic PVA",
"inherits": "Chuanying Generic PLA",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "ePZFnkgBiyFuKvji",
"filament_id": "GFB99",
"instantiation": "true",
"activate_air_filtration": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying Generic TPU",
"inherits": "fdm_filament_tpu",
"from": "system",
"setting_id": "GFSA04",
"setting_id": "HYciEf4160uMYGnH",
"filament_id": "GFG99",
"instantiation": "true",
"additional_cooling_fan_speed": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying HS PLA @Chuanying X1 0.25 Nozzle",
"inherits": "Chuanying Generic HS PLA",
"from": "system",
"setting_id": "GFSA04_09",
"setting_id": "CAdli5S8JIFafvRG",
"filament_id": "GFL99",
"instantiation": "true",
"compatible_printers": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying PETG @Chuanying X1 0.25 Nozzle",
"inherits": "Chuanying Generic PETG",
"from": "system",
"setting_id": "GFSA04_12",
"setting_id": "9xxP8YWj4hnWQoVZ",
"filament_id": "GFG99",
"instantiation": "true",
"compatible_printers": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying PLA @Chuanying X1 0.25 Nozzle",
"inherits": "Chuanying Generic PLA",
"from": "system",
"setting_id": "GFSA04_19",
"setting_id": "3WDFe1uKTOTiRtPE",
"instantiation": "true",
"compatible_printers": [
"Chuanying X1 0.25 Nozzle"

View File

@@ -3,7 +3,7 @@
"name": "Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle",
"inherits": "Chuanying Generic PLA-Silk",
"from": "system",
"setting_id": "GFSA04_25",
"setting_id": "kph5feBjhPi0oo0G",
"filament_id": "GFL99",
"instantiation": "true",
"compatible_printers": [

View File

@@ -3,7 +3,7 @@
"name": "Chuanying X1 0.25 Nozzle",
"inherits": "fdm_x1_common",
"from": "system",
"setting_id": "GM006",
"setting_id": "RxJHQLLqwjINiocE",
"instantiation": "true",
"printer_model": "Chuanying X1",
"default_print_profile": "0.12mm Standard @Chuanying X1 0.25 Nozzle",

View File

@@ -3,7 +3,7 @@
"name": "Chuanying X1 0.4 Nozzle",
"inherits": "fdm_x1_common",
"from": "system",
"setting_id": "GM001",
"setting_id": "MdkHtxEtjSp0i3cp",
"instantiation": "true",
"printer_model": "Chuanying X1",
"default_print_profile": "0.20mm Standard @Chuanying X1 0.4 Nozzle",

View File

@@ -3,7 +3,7 @@
"name": "Chuanying X1 0.6 Nozzle",
"inherits": "fdm_x1_common",
"from": "system",
"setting_id": "GM001",
"setting_id": "rcPR6jw2DL6DG6PY",
"instantiation": "true",
"printer_model": "Chuanying X1",
"default_print_profile": "0.30mm Standard @Chuanying X1 0.6 Nozzle",

View File

@@ -3,7 +3,7 @@
"name": "Chuanying X1 0.8 Nozzle",
"inherits": "fdm_x1_common",
"from": "system",
"setting_id": "GM005",
"setting_id": "vxPv0a5ffOLHbTSS",
"instantiation": "true",
"printer_model": "Chuanying X1",
"default_print_profile": "0.40mm Standard @Chuanying X1 0.8 Nozzle",

View File

@@ -3,7 +3,7 @@
"name": "0.12mm Standard @Chuanying X1 0.25 Nozzle",
"inherits": "0.20mm Standard @Chuanying X1 0.4 Nozzle",
"from": "system",
"setting_id": "GP012",
"setting_id": "QK0Ww8yUHnqJB21D",
"instantiation": "true",
"compatible_printers": [
"Chuanying X1 0.25 Nozzle"

View File

@@ -3,7 +3,7 @@
"name": "0.20mm Standard @Chuanying X1 0.4 Nozzle",
"inherits": "fdm_process_chuanying_0.20",
"from": "system",
"setting_id": "GP001",
"setting_id": "Cs23wwLYd7a1xJlN",
"instantiation": "true",
"compatible_printers": [
"Chuanying X1 0.4 Nozzle"

View File

@@ -3,7 +3,7 @@
"name": "0.30mm Standard @Chuanying X1 0.6 Nozzle",
"inherits": "fdm_process_chuanying_0.30",
"from": "system",
"setting_id": "GP003",
"setting_id": "pk0f171o2vhWhbzg",
"instantiation": "true",
"compatible_printers": [
"Chuanying X1 0.6 Nozzle"

View File

@@ -3,7 +3,7 @@
"name": "0.40mm Standard @Chuanying X1 0.8 Nozzle",
"inherits": "0.30mm Standard @Chuanying X1 0.6 Nozzle",
"from": "system",
"setting_id": "GP002",
"setting_id": "5jFsal1GjrKej065",
"instantiation": "true",
"compatible_printers": [
"Chuanying X1 0.8 Nozzle"