pub fn coherence_violations(config: &FrameConfig) -> Vec<String>Expand description
Every port-coherence violation in config, each naming the exact
frame.toml keys involved. An empty vector means the config is coherent.
Only a fully-stated topology (FrameConfig::ports_explicit) has
coherence to check. A derived/portless config is coherent by construction
(the host resolves and reconciles its ports at boot), so this returns an
empty vector for it — a clean pass, never a false “origin missing”
complaint about an OS-assigned :0 address or a not-yet-resolved page
port.