The schematic analyzer's view of connectivity now matches KiCad's. Bus groups (D[0..7], {SDA SCL}, aliases) expand into member nets, bus entries and bus wires join the net graph, and hierarchical bus pins connect positionally per sheet instance — the phantom single-pin nets reported in #25 on bus-heavy hierarchical designs are gone. Where a bus connection genuinely can't be resolved, the analyzer says so in a new bus_topology.unresolved list instead of guessing.
Two entangled net-identity fixes ship with it: same-name local labels on different sheets no longer merge into one net (bare-name collisions get KiCad-style /<sheet>/<name> keys, and every net carries a display_name), and wire union joins every overlapping wire instead of stopping at the first.
Validation went a level deeper this release: alongside the full-corpus regression gate (170,014 units, clean over the whole v2.1.0 → v2.2.0 range), the connectivity work was checked against kicad-cli's own netlist export as ground truth on five golden boards — from an 80-net incrementer to a 1,220-net m68k homebrew computer. Where KiCad has an authoritative answer, the analyzer must agree with it.
Also in this release:
- Provenance honesty — thermal package-table estimates and lifecycle API lookups no longer claim
datasheetevidence;trust_summary.by_evidence_sourceshifts accordingly (thanks @fl4p for a model bug report). - Google Antigravity support — root
plugin.json+agy plugin installdocs, replacing the deprecated Gemini CLI path (thanks @ademuri). - GitHub Action fixed for v2 consumers — a dangling
.agents/skills/kidocsymlink broke action downloads on@v2/@v2.1.0; it's removed as of this release, and the floatingv2tag now points here. If you pin@v2.1.0exactly, switch to@v2(thanks @orthdron for the precise diagnosis). - OSHWA certification-readiness docs (thanks Daniel Gleason), and a DigiKey FastAdd doc fix that stops suggesting
&newcart=true(it silently empties your cart).
Upgrade notes:
- Expect net-list corrections on hierarchical and bus-heavy designs; bus-free boards are byte-identical by invariant.
- Bare net-name suppression patterns now also match the tails of hierarchical net keys (both
/uuid/Nameand the new/<sheet>/<name>shapes). If you suppress by bare net name on a multi-sheet project, review those patterns. - All schema changes are additive:
NetEntry.display_name, typedNetLabel,BusTopology.unresolved.
Install: /plugin marketplace add aklofas/kicad-happy then /plugin install kicad-happy@kicad-happy — existing installs pick up 2.2.0 automatically. Full details: release-notes.md · CHANGELOG.