normalizeReplacementSettings
Normalizes an imported REPLACE-mode ChannelSettings list so firmware only materializes real, distinct channels.
Imported replacement sets can carry blank placeholder secondaries (trailing empty ChannelSettings padding) and semantic duplicates (two slots resolving to the same effective channel under the active LoRa preset). Both produce invalid LongFast-looking slots on the radio that cause route failures (QueueStatus res=6 / routeErr=6).
Slot 0 (primary) is always preserved as-is, even if blank (a blank primary is a deliberate disable signal).
A blank placeholder primary does not participate in duplicate tracking.
Blank placeholder secondaries (no name AND no PSK) are dropped.
Semantic duplicates (same effective name + effective PSK as an earlier kept slot) are dropped.
Remaining valid secondaries compact into sequential slots 1..n.
Return
Compacted, deduplicated list safe to write to the radio.
Parameters
Raw imported settings list.
Active LoRa config used to resolve effective channel identity. Null falls back to defaults.