D85 — In-engine exact zone refill for judging¶
Decision¶
Zones are refilled in the engine for judging (drc --refill-zones, routing with --soft-zones): exact polygons with Clipper2 following KiCad 10's fillCopperZone, connectivity judged on them by the existing code; teardrop zones dropped as kicad-cli's forced teardrop update does; with --soft-zones the route job refills, counts and routes the remaining connections once more with the refilled fills fixed (same budget as the first pass, --no-refill-repair to only count). The fills are not written
Alternatives¶
A raster fill (no dependency, approximate at thin necks, never writable); keep calling kicad-cli; split the soft-zone budget between the passes
Reason¶
The engine's connectivity already matched KiCad's on 16 of 16 routed plane boards; only the fills were missing. Exact fills reach the same unconnected items per net as kicad-cli on all 16 and on 191 of 200 PCBench boards (the rest are KiCad 5 files with duplicate zone ids and one target item). The repair took the plane set from 119 to 95 unconnected at 3 M + 3 M work units, against 103 for 6 M without it. Clipper2 was already the planned polygon library (doc 02)