validate_anlage, stabiler TRO-Schluessel, Verbindungen aus BricsCAD, Zeichnung aus der Anlagen-JSON
- validate_anlage.py (+ bin-Wrapper): Pruefung vor der SCL fuer beide Wege (Struktur, Zuordnungen, Aktualitaet der JSON, Korrekturen ohne Ziel); scl_skeleton ruft sie auf (Warnung, --strict bricht ab) - DerivedTro.key: stabiler Schluessel (ID der ID-Datei); hw_overrides.ini, <csv>_jam_names.ini und tro_overrides.ini greifen ueber ID oder Schluessel, eine Umbenennung in TRO_EDIT laesst sie bestehen; JAM_AREA traegt KEY - --read-tros liest die CONNECTION_ARROW-Bloecke mit -> [<csv>.edit_connections]; tro_flow.apply_connection_edits wendet sie nach link_tros an - tro_annotate --anlage zeichnet Marker/Verbindungen aus der Anlagen-JSON - INI-Korrekturen auch mit BOM lesbar (utf-8-sig) - Ablauf CSV/DXF+TIA -> Anlagen-JSON -> (BricsCAD) -> SCL in doc/Python_Scripts.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -212,7 +212,9 @@ byte — rewrite them (`SKEL_UPDATE_GOLDEN=1`) only for a reviewed, intended cha
|
||||
types, rows from `*TRO-SLOTS*`, pick-in-drawing from the XRECORD `SPS_SKEL_PARTS`) edits
|
||||
them, and `--read-tros` writes the differences as `edit`/`edit_add` sections into
|
||||
`cfg/tro_overrides.ini` — the only kinds of that file `tro_flow` applies
|
||||
(`tro_flow.apply_edits`, keyed on the stable ID-file IDs).
|
||||
(`tro_flow.apply_edits`, keyed on the stable ID-file IDs); since 2026-10-27 also the
|
||||
connection blocks (`edit_connections`, `tro_flow.apply_connection_edits`). With
|
||||
`--anlage` the markers/connections are drawn from the plant JSON itself.
|
||||
4. **`lib/tro_extract.py`** — **parked**: reads the annotated DXF back into the old
|
||||
`sps_skel-tro-extract-v1` JSON, which `scl_skeleton.py` no longer accepts. Not deleted, not
|
||||
extended; if drawing edits (`TRO_INSERT`/`TRO_EDIT`) are ever needed again, it should
|
||||
@@ -248,6 +250,16 @@ byte — rewrite them (`SKEL_UPDATE_GOLDEN=1`) only for a reviewed, intended cha
|
||||
open/contradicting bindings stay `TODO(E-Planung)`;
|
||||
inserted names are checked against `<projekt>_hw.json` (`--strict` aborts). Templates are
|
||||
unchanged. See `doc/Python_Scripts.md` §5b.
|
||||
9. **`lib/validate_anlage.py`** (implemented 2026-10-27) — the gate before SCL for both paths
|
||||
(no changes / after BricsCAD edits): structure, bindings, freshness (plant JSON older than
|
||||
TRO-JSON/hw.json/hw_overrides → rerun merge), corrections that match nothing. Exit 5 = not
|
||||
ready; `scl_skeleton` calls it (warns, `--strict` aborts). The ordered command list for
|
||||
both paths is in `doc/Python_Scripts.md` §1 "The workflow, step by step".
|
||||
|
||||
Since 2026-10-27 every TRO carries a stable `key` (ID-file ID) next to its display `id`;
|
||||
all corrections (`hw_overrides.ini`, `<csv>_jam_names.ini`, `tro_overrides.ini`) resolve by
|
||||
ID **or** key, so a rename in `TRO_EDIT` keeps them. The plant JSON is never hand-patched —
|
||||
it is regenerated from inputs + these overlays.
|
||||
|
||||
What is **not** built out yet, relative to the original two-tool design:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user