OrcaFilamentLibrary: give every material family its own filament_id

Phase 1 of the filament_id cleanup (filament_id_plan.md section 5): resolve the
16 library-internal ids that covered several different materials at once and
were visible on every printer of every vendor (empty compatible_printers =
compatible with all).

- 7 existing @base roots get their copy-pasted id replaced with a fresh
  deterministic mint (Elas PLA/ASA copy-pastes of Bambu-mirror ids, eSUN
  copy-pastes incl. the OGFL06 eSUN PLA-Marble / Fiberon PETG-ESD polymer
  mismatch).
- 30 rootless families (23 Elegoo product lines riding the material-class
  E*B00 ids, Generic PETG HF / PETG-CF / PP-CF / PP-GF / PE-CF / PLA Matte
  riding their parent generic's template id, PolyLite Dual PLA) each get a new
  config-equivalent @base root carrying the minted id, inheriting the family's
  previous parent; members re-pointed; index entries inserted before the
  @System entries (loader's filament_id map is built in file order).
- Keepers by precedence stay byte-identical: Bambu-catalog mirrors
  (OGFA00/OGFB01/OGFG00, PolyLite/Overture/Fiberon lines), the OFL generics
  (OGFG99/OGFL99/OGFP97/OGFP99), and the Elegoo root-owning families.

Verified: config-equivalence gate — flattened effective configs of all 5892
instantiated presets are byte-identical to pre-migration except the prescribed
filament_id changes; orca_extra_profile_check.py exit 0;
assign_filament_ids.py --check exit 0; validator -l 2 exit 0 (66 vendors);
extended validator -f -v OrcaFilamentLibrary exit 0 (16 collision ids
resolved) and -f -v BBL exit 0 (all 26 BBL-shared ids are same-material
mirrors, alias-shadowed on every overlapping BBL printer — no BBL file
touched). Snapshot: +37 minted ids, id_overrides +30 (new roots override
their template parents by design).
This commit is contained in:
SoftFever
2026-07-03 00:05:37 +08:00
parent 1482fb81fd
commit ab60229311
69 changed files with 556 additions and 92 deletions

View File

@@ -584,6 +584,10 @@
"name": "Generic PE @System",
"sub_path": "filament/Generic PE @System.json"
},
{
"name": "Generic PE-CF @base",
"sub_path": "filament/Generic PE-CF @base.json"
},
{
"name": "Generic PE-CF @System",
"sub_path": "filament/Generic PE-CF @System.json"
@@ -672,10 +676,18 @@
"name": "Generic PETG @System",
"sub_path": "filament/Generic PETG @System.json"
},
{
"name": "Generic PETG HF @base",
"sub_path": "filament/Generic PETG HF @base.json"
},
{
"name": "Generic PETG HF @System",
"sub_path": "filament/Generic PETG HF @System.json"
},
{
"name": "Generic PETG-CF @base",
"sub_path": "filament/Generic PETG-CF @base.json"
},
{
"name": "Generic PETG-CF @System",
"sub_path": "filament/Generic PETG-CF @System.json"
@@ -864,6 +876,10 @@
"name": "Generic PLA High Speed @System",
"sub_path": "filament/Generic PLA High Speed @System.json"
},
{
"name": "Generic PLA Matte @base",
"sub_path": "filament/Generic PLA Matte @base.json"
},
{
"name": "Generic PLA Matte @System",
"sub_path": "filament/Generic PLA Matte @System.json"
@@ -1072,10 +1088,18 @@
"name": "Generic PP @System",
"sub_path": "filament/Generic PP @System.json"
},
{
"name": "Generic PP-CF @base",
"sub_path": "filament/Generic PP-CF @base.json"
},
{
"name": "Generic PP-CF @System",
"sub_path": "filament/Generic PP-CF @System.json"
},
{
"name": "Generic PP-GF @base",
"sub_path": "filament/Generic PP-GF @base.json"
},
{
"name": "Generic PP-GF @System",
"sub_path": "filament/Generic PP-GF @System.json"
@@ -1264,6 +1288,10 @@
"name": "Elegoo ASA @System",
"sub_path": "filament/Elegoo/Elegoo ASA @System.json"
},
{
"name": "Elegoo ASA-CF @base",
"sub_path": "filament/Elegoo/Elegoo ASA-CF @base.json"
},
{
"name": "Elegoo ASA-CF @System",
"sub_path": "filament/Elegoo/Elegoo ASA-CF @System.json"
@@ -1356,6 +1384,10 @@
"name": "Elegoo PC @System",
"sub_path": "filament/Elegoo/Elegoo PC @System.json"
},
{
"name": "Elegoo PC-FR @base",
"sub_path": "filament/Elegoo/Elegoo PC-FR @base.json"
},
{
"name": "Elegoo PC-FR @System",
"sub_path": "filament/Elegoo/Elegoo PC-FR @System.json"
@@ -1412,6 +1444,10 @@
"name": "Elas PETG Basic @System",
"sub_path": "filament/Elas/Elas PETG Basic @System.json"
},
{
"name": "Elegoo PET-CF @base",
"sub_path": "filament/Elegoo/Elegoo PET-CF @base.json"
},
{
"name": "Elegoo PET-CF @System",
"sub_path": "filament/Elegoo/Elegoo PET-CF @System.json"
@@ -1420,26 +1456,50 @@
"name": "Elegoo PETG @System",
"sub_path": "filament/Elegoo/Elegoo PETG @System.json"
},
{
"name": "Elegoo PETG HF @base",
"sub_path": "filament/Elegoo/Elegoo PETG HF @base.json"
},
{
"name": "Elegoo PETG HF @System",
"sub_path": "filament/Elegoo/Elegoo PETG HF @System.json"
},
{
"name": "Elegoo PETG PRO @base",
"sub_path": "filament/Elegoo/Elegoo PETG PRO @base.json"
},
{
"name": "Elegoo PETG PRO @System",
"sub_path": "filament/Elegoo/Elegoo PETG PRO @System.json"
},
{
"name": "Elegoo PETG Translucent @base",
"sub_path": "filament/Elegoo/Elegoo PETG Translucent @base.json"
},
{
"name": "Elegoo PETG Translucent @System",
"sub_path": "filament/Elegoo/Elegoo PETG Translucent @System.json"
},
{
"name": "Elegoo PETG-CF @base",
"sub_path": "filament/Elegoo/Elegoo PETG-CF @base.json"
},
{
"name": "Elegoo PETG-CF @System",
"sub_path": "filament/Elegoo/Elegoo PETG-CF @System.json"
},
{
"name": "Elegoo PETG-GF @base",
"sub_path": "filament/Elegoo/Elegoo PETG-GF @base.json"
},
{
"name": "Elegoo PETG-GF @System",
"sub_path": "filament/Elegoo/Elegoo PETG-GF @System.json"
},
{
"name": "Elegoo Rapid PETG @base",
"sub_path": "filament/Elegoo/Elegoo Rapid PETG @base.json"
},
{
"name": "Elegoo Rapid PETG @System",
"sub_path": "filament/Elegoo/Elegoo Rapid PETG @System.json"
@@ -1592,54 +1652,106 @@
"name": "Elegoo PLA @System",
"sub_path": "filament/Elegoo/Elegoo PLA @System.json"
},
{
"name": "Elegoo PLA Basic @base",
"sub_path": "filament/Elegoo/Elegoo PLA Basic @base.json"
},
{
"name": "Elegoo PLA Basic @System",
"sub_path": "filament/Elegoo/Elegoo PLA Basic @System.json"
},
{
"name": "Elegoo PLA Galaxy @base",
"sub_path": "filament/Elegoo/Elegoo PLA Galaxy @base.json"
},
{
"name": "Elegoo PLA Galaxy @System",
"sub_path": "filament/Elegoo/Elegoo PLA Galaxy @System.json"
},
{
"name": "Elegoo PLA Glow @base",
"sub_path": "filament/Elegoo/Elegoo PLA Glow @base.json"
},
{
"name": "Elegoo PLA Glow @System",
"sub_path": "filament/Elegoo/Elegoo PLA Glow @System.json"
},
{
"name": "Elegoo PLA Marble @base",
"sub_path": "filament/Elegoo/Elegoo PLA Marble @base.json"
},
{
"name": "Elegoo PLA Marble @System",
"sub_path": "filament/Elegoo/Elegoo PLA Marble @System.json"
},
{
"name": "Elegoo PLA Matte @base",
"sub_path": "filament/Elegoo/Elegoo PLA Matte @base.json"
},
{
"name": "Elegoo PLA Matte @System",
"sub_path": "filament/Elegoo/Elegoo PLA Matte @System.json"
},
{
"name": "Elegoo PLA PRO @base",
"sub_path": "filament/Elegoo/Elegoo PLA PRO @base.json"
},
{
"name": "Elegoo PLA PRO @System",
"sub_path": "filament/Elegoo/Elegoo PLA PRO @System.json"
},
{
"name": "Elegoo PLA Silk @base",
"sub_path": "filament/Elegoo/Elegoo PLA Silk @base.json"
},
{
"name": "Elegoo PLA Silk @System",
"sub_path": "filament/Elegoo/Elegoo PLA Silk @System.json"
},
{
"name": "Elegoo PLA Sparkle @base",
"sub_path": "filament/Elegoo/Elegoo PLA Sparkle @base.json"
},
{
"name": "Elegoo PLA Sparkle @System",
"sub_path": "filament/Elegoo/Elegoo PLA Sparkle @System.json"
},
{
"name": "Elegoo PLA Translucent2 @base",
"sub_path": "filament/Elegoo/Elegoo PLA Translucent2 @base.json"
},
{
"name": "Elegoo PLA Translucent2 @System",
"sub_path": "filament/Elegoo/Elegoo PLA Translucent2 @System.json"
},
{
"name": "Elegoo PLA Wood @base",
"sub_path": "filament/Elegoo/Elegoo PLA Wood @base.json"
},
{
"name": "Elegoo PLA Wood @System",
"sub_path": "filament/Elegoo/Elegoo PLA Wood @System.json"
},
{
"name": "Elegoo PLA+ @base",
"sub_path": "filament/Elegoo/Elegoo PLA+ @base.json"
},
{
"name": "Elegoo PLA+ @System",
"sub_path": "filament/Elegoo/Elegoo PLA+ @System.json"
},
{
"name": "Elegoo PLA-CF @base",
"sub_path": "filament/Elegoo/Elegoo PLA-CF @base.json"
},
{
"name": "Elegoo PLA-CF @System",
"sub_path": "filament/Elegoo/Elegoo PLA-CF @System.json"
},
{
"name": "Elegoo Rapid PLA+ @base",
"sub_path": "filament/Elegoo/Elegoo Rapid PLA+ @base.json"
},
{
"name": "Elegoo Rapid PLA+ @System",
"sub_path": "filament/Elegoo/Elegoo Rapid PLA+ @System.json"
@@ -1760,6 +1872,10 @@
"name": "Panchroma PLA UV Shift @System",
"sub_path": "filament/Polymaker/Panchroma PLA UV Shift @System.json"
},
{
"name": "PolyLite Dual PLA @base",
"sub_path": "filament/Polymaker/PolyLite Dual PLA @base.json"
},
{
"name": "PolyLite Dual PLA @System",
"sub_path": "filament/Polymaker/PolyLite Dual PLA @System.json"
@@ -1904,6 +2020,10 @@
"name": "DREMC TPU 95A @System",
"sub_path": "filament/DREMC/DREMC TPU 95A @System.json"
},
{
"name": "Elegoo Rapid TPU 95A @base",
"sub_path": "filament/Elegoo/Elegoo Rapid TPU 95A @base.json"
},
{
"name": "Elegoo Rapid TPU 95A @System",
"sub_path": "filament/Elegoo/Elegoo Rapid TPU 95A @System.json"