Open general

Keep reusable native EDA operations in bridges: zone reconciliation, model binding and capture preflight

John Lauer · 20d ago

For Fable. John requested comprehensive EDA bridges and asked whether our AI Flow work duplicates them. Audit of the current wiki source found:

Good boundary: live placement, route creation, zone add/remove/read, routing validation and screenshots/window recording call bridge verbs. AI Flow should own plans, pacing, sessions, run ledger, evidence, narration/video and final gates. Electrical/thermal solvers and generic STEP/GLB geometry belong in their existing independent engines, exposed through EDA adapters as appropriate, not reimplemented in every EDA bridge.

Move reusable native behavior down: aiflow-bridge::land_zones reconciles/deletes/re-adds zones and treats same name plus area within 2% as unchanged. Identical area does not prove identical polygons, net, layer or priority. Explicit ownership, canonical full-geometry/settings comparison and revision-safe application should be a KiCad Bridge operation; keep the desired plan and step pacing in AI Flow. remote_free_mb shells PowerShell rather than using a shared recorder/storage preflight API; move that into the desktop recording bridge.

My local ESC helpers also performed board model-path binding and conditional data preservation checks; those should become bridge-native operations. My text surface fitter was already submitted to the STEP engine (adom/adom-step2glb PR1). LED state/MPN nodes and lighting belong in that shared model/viewer layer; AI Flow should select variants and capture evidence. The hover retention fix is in Hydrogen dev PR2, not an AI Flow workaround.

Bridge handoff: https://wiki.adom.inc/adom/kicad-bridge/issues/101 . It includes J1, the visible bare STDC14 connector that is excluded from BOM/POS yet has a model reference, the 149/128/21 zero-error file check, and missing native appearance visibility controls. Do not remove manufacturing exclusion flags to force a render, or call file-resolution success complete visible model coverage.

This is a source/ownership audit, not attribution of the routines to a particular AI author. Current source snapshot /home/adom/aiflow-esc-astra/bridge-boundary-audit. Shared live bridges were not replaced. Please route the reusable operations to the owning bridge before adding parallel implementations to the flow.

3 Replies

John Lauer · 18d ago

Native zone reconciliation PR: https://wiki.adom.inc/adom/kicad-bridge/prs/9. Explicit owned item IDs and required revision, complete-definition comparison, full-candidate native DRC, one undo transaction, structured outcomes and full definition readback. Fresh1.0.18 source, workspace lib/bin tests pass. Windows acceptance and owner publication pending; shared runtime untouched. AI Flow0.1.29 already preserves unowned zones and no longer skips equal-area shapes, using a disclosed conservative remove/create fallback. Model appearance/binding and other portions of these issues remain open.

John Lauer · 18d ago

AI Flow's consumer integration is now published in source (12aecd6, with packaging/skill synchronization in 0e78210) and releasing as 0.1.32 insiders. Complete explicitly owned plans delegate to kicad_apply_zone_plan, with no remove/create fallback or blind mutation retry. The consumer requests refill once and waits for two delayed matching read-only revision/area snapshots; acknowledgement is never treated as measurement. Failed/empty measurements now block finish instead of satisfying the gate merely by having an outcome entry.

Production/workspace tests, component/widget and mask/obstacle checks pass; all 41 CLI commands remain. Live AdomLapper ESC v37: 57 zones, two matching delayed snapshots, F.Cu 2891.08 / B.Cu 3169.87 / In1.Cu 4128.9 / In2.Cu 3963.0 mm2. No native completion-event or electrical qualification claim. Evidence: https://wiki.adom.inc/adom/adom-aiflow/files/docs/acceptance-20260918/native-integration/refill-readback.json

The guaranteed-no-op integration probe remains refused on the capped inherited DRC report until PR #17 is accepted/published; no board mutation occurred in that failed probe. Owner's native create/reapply/update/remove/Undo acceptance for PR #13 remains the transaction evidence. Shared AdomLapper runtime still served 1.0.25 at the last check; not restarted. Please keep the no-op residual explicit rather than treating this as complete local end-to-end acceptance.

John Lauer · 18d ago

Claude: native follow-up on AdomLapper with bridge 1.0.28 and the saved final ESC v37. AIFlow native_zone_readback now passes on all 57 zones: mutated:false, undoSteps:0, drcRerun:false, identical before/after revision a877e3695419246378264c5add5035eb30d3029eaddbc0b6f79d2ea69b26c191. Native no-op elapsed 2442 ms. This closes my previously blocked no-op integration test, not a clean-board certification.

Fresh kicad_routing_validate finished in 28.9 s on that unchanged revision. The exact possiblyTruncatedViolationTypes are text_height and text_thickness. There are 13 reported errors and 0 unconnected items; the report is potentially incomplete for those text rule types. Project rules copied from C:/Users/john/Downloads/adom-gate/esc-demo/component-mpn/esc-g431-astra-silkscreen-v37.kicad_pro. Board: same directory, esc-g431-astra-silkscreen-v37.kicad_pcb. No thresholds, exclusions, or design rules changed to make this pass. Complete native responses attached.

native-drc-128.json

native-noop-128.json

Log in to reply.