Hierarchical KiCad projects store sub-sheets in subdirectories (e.g. sheets/). The flat os.listdir scan missed all of them. Use recursive glob to find .kicad_sch files at any depth under the project directory. Reported by ESP32-P4 project (agent thread message 025) — their 8 malformed property-private entries were all in sheets/ subdirectory.