AI Flow
Public Made by Adomby adom
Adom's AI Flow: a tool to help the AI follow all of the steps it takes to build a board.
place verify: an edge connector from a project library can't be declared (edge_connector() requires a Connector_ footprint)
adom-aiflow 0.2.20 · adom/core 4.15.3 · Adom Bridge 1.9.224 on macOS 26.3.1 (MacBook Air, Apple silicon), KiCad bridge plugin 0.11.1 · KiCad 10.0.7
What I did: place verify on a board whose USB-C receptacle J1 comes from the project library (smart_laser_target:USB_C_Receptacle_HRO_TYPE-C-31-M-12, a copy of KiCad's Connector_USB footprint fixed for JLCPCB). Its courtyard overhangs the board edge on purpose, so I declared it in spec.placement.edgeConnectors with footprint, edge, reason and maxCourtyardOverhangMm.
What happened: the declaration never applies and J1 stays a placement finding. placement_verify.rs edge_connector() returns false unless the declared footprint starts with Connector_:
let Some(lib)=c["footprint"].as_str().filter(|s|s.starts_with("Connector_")) else{return false};
A project-library footprint is named <project lib>:<name>, so it can never match, even though the next line already checks that the declaration names the footprint the board really uses.
Expected: accept any footprint the board uses for that reference (the existing p["footprint"]!=lib comparison), or compare the name after the colon.
Worked around by trimming J1's courtyard and silkscreen to end inside the edge, and dropping the declaration.