pub struct WireHarnessState {
pub connections: Vec<WireHarnessConnection>,
pub id_counter: u64,
pub build_bundles: bool,
pub cut_margin: f64,
}Expand description
The document’s wireHarness block.
Fields§
§connections: Vec<WireHarnessConnection>A null reads as no connections: the app once wrote wireHarness: {connections: null} into boards without a harness (an occurrence
delete’s retire, fixed 2026-10-31), and documents saved then must still run.
id_counter: u64Monotonic id counter (wire-{n}), never reused.
build_bundles: boolBuild the bundle solids (default true). Off keeps the routing and the report but registers no solids.
cut_margin: f64The cut margin, in model units: a set amount added to EVERY wire’s routed length to give the cut length its BOM line carries (MF QTY) — once per wire, never a percentage and never once per BOM line. It lives here, in the typed block, because the block is rewritten from this struct on every harness edit and a key it did not know would be dropped.
The router never reads it and harness_fingerprint deliberately does
not hash it: a margin change must not invalidate a route, so the tail
replays its cache and only the BOM’s arithmetic moves. Omitted from the
saved block at 0, so a document that never set one saves as before.