In bug-report-20260707T230831Z the final placement leaves four net labels — VIN, VOUT, PG and U1.FB to R2.pin1 — fully inside chip bodies. They render behind the component and are illegible.
NetLabelNetLabelCollisionSolver only relocates a label when it overlaps another label (findNextCollidingPair looks for label-label overlaps). It does check candidate positions against chips, but only for labels it is already moving because of a label-label collision. A label that sits inside a chip without also colliding with another label is never checked against chips or moved out.
Repro (asserts no final net label is >50% inside a chip body): #653-branch adds a test.failing.
In
bug-report-20260707T230831Zthe final placement leaves four net labels —VIN,VOUT,PGandU1.FB to R2.pin1— fully inside chip bodies. They render behind the component and are illegible.NetLabelNetLabelCollisionSolveronly relocates a label when it overlaps another label (findNextCollidingPairlooks for label-label overlaps). It does check candidate positions against chips, but only for labels it is already moving because of a label-label collision. A label that sits inside a chip without also colliding with another label is never checked against chips or moved out.Repro (asserts no final net label is >50% inside a chip body): #653-branch adds a
test.failing.