DRC fails to detect Hole Clearance violations on footprint
# Description When opening a PCB file and immediately running a Design Rule Check (DRC), KiCad fails to report existing "Hole Clearance" violations on an USB-C connector footprint (reporting 0 errors). However, if the footprint is slightly moved and then restored to its initial position using Undo (Ctrl+Z), running the DRC again correctly detects and lists the 4 expected Hole Clearance violations. It seems the DRC engine uses a stale or incomplete geometry cache upon file initialization that is only re-evaluated/invalidated once a footprint is touched or modified in the session. # Steps to reproduce 1. Open the affected PCB project file. [example_bug.zip](/uploads/832096233725c0bcc3e0c8f63193bf2e/example_bug.zip) 2. Run a DRC control check immediately without touching anything on the canvas. The DRC report returns 0 errors (incorrect behavior, as there should be 4 clearance violations on the USB-C pads/holes). 3. Select the USB-C connector (located at the top left of the board) and move it slightly with the mouse. 4. Press `Ctrl+Z` (Undo) to revert the connector precisely back to its original opening location. 5. Run the DRC control check once again. The DRC now successfully identifies and displays the 4 "Hole Clearance violation" errors (expected behavior). # KiCad Version <!--Copy version information (from main menu Help->About KiCad ->Copy Version Info) and paste it between the triple backticks below to preserve the formatting.--> ``` ``` ``` Application: KiCad PCB Editor x64 on x64 Version: 10.0.3, release build Libraries: wxWidgets 3.3.2 FreeType 2.13.3 HarfBuzz 12.3.0 FontConfig 2.17.1 Platform: Windows 11 (build 22631), 64-bit edition, 64 bit, Little endian, wxMSW OpenGL: ATI Technologies Inc., AMD Radeon(TM) Graphics, 4.6.0 Compatibility Profile Context 23.10.24.02.230811 wxWidgets: 3.3.2 (wchar_t,STL containers) Boost: 1.90.0 OCC: 7.9.2 Curl: 8.18.0 ngspice: 46 Compiler: Visual C++ 1944 without C++ ABI KICAD_IPC_API=ON KICAD_USE_PCH=OFF Locale: Lang: en_GB Enc: UTF-8 Num: 1,234.5 Encoded кΩ丈: D0BACEA9E4B888 (sys), D0BACEA9E4B888 (utf8) ```
issue