mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-09-27 20:44:13 +02:00
2906a48aab
qet.checkContinuity(folioIndex) runs two structural checks against the live Terminal/Conductor object graph -- Terminal::conductors() and Conductor::relatedPotentialConductors(), the same primitive setConductorProperty() already uses -- rather than a heuristic read of the saved XML: - unconnected_terminal (info): a terminal with no conductor at all. Deliberately low severity -- routine (a spare relay contact, an unused optional pin), not necessarily a mistake. - potential_mismatch (error): two conductors electrically on the same potential (following bridged terminal strips and linked report elements, matching setConductorProperty()'s own scope) disagreeing on num/conductor_color/conductor_section/function/bus/cable. QElectroTech's own edits always keep every member of a potential identical, so any divergence found here came from hand-edited XML, a legacy file, or an external tool -- verified with a test that patches a saved file's XML directly to introduce exactly that. Documented plainly what this does NOT check and why: pin electrical direction/power conflicts and No/Nc/Common contact shorts, since QElectroTech's terminal data model (Generic/Inner/Outer/No/Nc/Common -- contact role within one relay, not signal direction) does not carry the information either would need. This is continuity/consistency checking, not full ERC. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>