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.
project-page: 'no Footprint property' on wiki symbols with unquoted property atoms (sym_property regex)
adom-aiflow project-page (0.2.64) refuses to build the PCM library when a wiki component page's .kicad_sym writes its property names and values as unquoted atoms, which KiCad itself reads without complaint.
Seen on adom/cl05b104kb54pnc and adom/cl10a105kb8nnnc (both generic Samsung MLCC pages). Their symbol files read:
(symbol cl05b104kb54pnc ... (property Reference C ...) (property Value CL05B104KB54PNC ...) (property Footprint cl05b104kb54pnc:cl05b104kb54pnc ...)
Error from project-page --no-push:
the KiCad library is incomplete: parts whose footprint does not resolve: CL05B104KB54PNC (...): symbol cl05b104kb54pnc -> no Footprint property; CL10A105KB8NNNC (...): symbol cl10a105kb8nnnc -> no Footprint property
Cause: sym_property() in tools/project-page.py (around line 534) matches only the quoted form:
m = re.search(r'\(property\s+"' + re.escape(prop) + r'"\s+"([^"]*)"', block)
so (property Footprint lib:name ...) is reported as having no Footprint property. The same quoted-only assumption is in the (extends "parent") lookup just below it.
Suggested fix: accept both forms, e.g. \(property\s+"?Footprint"?\s+(?:"([^"]*)"|([^\s()]+)), and the same for extends. Alternatively (or as well) have the part factory write these two pages' symbols with quoted strings like the other component pages; other pages built the same way would hit the same refusal.
Impact: any board whose BOM contains one of these pages cannot publish its project page, and the script is compiled into the binary, so there is no local workaround short of a rebuild. Workaround used: giving the two parts from the project library with "prefer": true.
1 Reply
Log in to reply.