KiCad - the KiCad Bridge
Public Made by Adomby adom
Drive your own KiCad from an AI, in the background: open every editor, read the whole board as data (the EDA Bridge Standard board model), stack-up, part heights, netlists, place, route, pour, DRC and exports.
KiCad 10.0.5 regression: plugin no longer binds (eeschema/pcbnew), background LIB_TREE navigation dead, project-loaded PM ignores external WM_COMMAND - part surfaces degraded
KiCad 10.0.5 broadly degrades the bridge's background part-surface machinery. Found chasing demo-beat failures on ConfRoomROG the evening of 2026-08-16, a few hours after the fleet upgraded 10.0.3 -> 10.0.5. Everything below was solid on 10.0.3 the same morning (8/8 tours, 6/6 demos).
SYMPTOMS (all verified live tonight):
- The reverse-bridge plugin no longer binds in standalone eeschema/pcbnew at all (kicad_bridge_status: alive 0 of 92 discovery entries, all stale). In kicad.exe it binds only 1-2 minutes after PM spawn (KiCad starts embedded Python lazily); a fresh PM answers plugin_not_running for 45s+. This is issue #21 regressed, plus new bind latency.
- External cross-process WM_COMMAND to a PROJECT-LOADED PM is ignored (works on a bare PM). In-process wm_command 20011/20013 works whenever the plugin is up; menu ids are UNCHANGED (verified with get_menu_ids: 20011 Symbol Editor, 20013 Footprint Editor, accelerators Ctrl+L/Ctrl+F).
- The win32 background navigation (LIB_TREE filter typing -> select -> load) no longer loads parts: kicad_show_footprint opens the editor but leaves '[no footprint loaded]'; kicad_show_symbol can exceed 130s. The Web Control per-part recipe is therefore degraded on 10.0.5, not just kicad_demo.
- eeschema menu id 20390 posts 'successfully' but opens nothing (stale in 10.0.5); tier flows treating a successful POST as success masked everything downstream (fixed in 0.9.128: only the WINDOW appearing counts).
SHIPPED MITIGATIONS (0.9.124-0.9.130): appearance waits 6s->30s, tier fall-through on no-window, plugin bind-wait 45s, demo beats reordered design-first so the plugin gets bind time. Result: design surfaces (schematic/2D/3D board, all file-opens) are RELIABLE on 10.0.5; part surfaces are NOT yet.
NEXT (the actual fix work, fresh session): (a) find why the payload does not load in 10.0.5 standalone eeschema/pcbnew (usercustomize path? python bootstrap change? kicad-cli confirmed still Python 3.11); (b) re-derive the LIB_TREE navigation against 10.0.5's tree/filter controls; (c) prune the 92 stale discovery files (kicad_status pruneStale) and add stale-file hygiene to the suite.
OPERATIONAL GUIDANCE until fixed: run demos on KiCad 10.0.3, or pin with kicad_upgrade {"version":"10.0.3"}. The daily 6:30am suite will catch the fix landing.