KiCad — CWE-407 Analysis
=========================

.. contents:: :local:

Overview
--------

KiCad is an open-source EDA (Electronic Design Automation) suite for PCB design and
schematic capture. Its connectivity engine (``pcbnew/connectivity/``) builds a netlist
graph and computes ratsnest (unrouted connections), DRC electrical checks, and net
topology analysis.

Status: **CLEAN** (scanned 2026-03-23)
---------------------------------------

No candidates found in ``pcbnew/connectivity``, ``eeschema/netlist_exporters``, or ``common``.

Triage Notes
------------

The connectivity engine builds a ``CN_CONNECTIVITY_ALGO`` graph over pads, tracks, and nets.
The scan found no ``std::find`` or ``.count()`` calls on ``std::vector`` containers near
graph traversal keywords in any of the scanned directories.

KiCad's connectivity engine uses dedicated ``CN_ITEM`` and ``CN_CLUSTER`` objects with
direct pointer equality and spatial indexing (R-tree) for connectivity queries. The ratsnest
computation and DRC passes do not use list-backed visited sets.

References
----------

* Scan result: ``tools/scan-results/kicad.txt``
