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.
outline check counts footprint graphics (local coordinates, any layer) as sharp outline corners on a KiCad board
adom-aiflow 0.2.1, KiCad 10.0.3 board (from scratch), outline check / finish.
outline check reports tens of thousands of "sharp outline corners" on a board whose Edge.Cuts outline is already rounded, so finish refuses with outline: 67658 sharp corner(s) (outline round).
The board's Edge.Cuts layer holds exactly 8 items: 4 gr_line edges and 4 gr_arc R4 corners (for example (gr_arc (start 96 24) (mid 97.171573 21.171573) (end 100 20) ... (layer "Edge.Cuts"))). No footprint has anything on Edge.Cuts.
The output:
ERROR: 67658 sharp outline corner(s): (-0.17, -0.75), (-0.17, -0.76), (-0.17, -0.78), (-0.16, -0.79), ... (-9.25, -6.40), (-9.00, -6.90), (-9.50, -6.90), (-0.62, -1.41), (-0.90, -1.41), (-0.62, -1.69), (-5.60, 2.55), (-5.00, 2.55), (-5.30, 2.05), ...
Hint: `outline round` turns each into an arc (spec outline.cornerRadius, default 1.0 mm).
The reported points are small coordinates around (0, 0), and several form triangles such as (-9.25, -6.40), (-9.00, -6.90), (-9.50, -6.90): they look like footprint-local graphics (pin-1 markers, fab or silk polygons, pad shapes) read without the footprint's position and rotation, and without filtering on the Edge.Cuts layer. A KiCad board whose footprints carry many polygons on other layers is therefore always refused.
Ask: count only board-level Edge.Cuts items (and footprint items on Edge.Cuts, transformed to board coordinates), and report a corner only where two outline segments meet at an angle without an arc. On this board the expected answer is 0 sharp corners.