[fix](trx-frontend-http): require bidirectional decodes for map QSO contact paths
A QSO requires both parties to hear each other. Previously the map drew contact paths whenever A sent a directed message to B and B's locator was known from any message. Now paths only appear when both A→B and B→A directed messages are present in the decoded history. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
@@ -6319,7 +6319,11 @@ function rebuildDecodeContactPaths() {
|
||||
}
|
||||
}
|
||||
}
|
||||
// Index directed messages by "SOURCE::TARGET" for QSO (bidirectional) check
|
||||
const directedPairs = new Set(directedMessages.map((m) => `${m.source}::${m.target}`));
|
||||
for (const msg of directedMessages) {
|
||||
// A true QSO requires both A→B and B→A directed messages
|
||||
if (!directedPairs.has(`${msg.target}::${msg.source}`)) continue;
|
||||
const targetLocator = stationLocators.get(msg.target);
|
||||
if (!targetLocator) continue;
|
||||
if (msg.sourceGrid === targetLocator.grid) continue;
|
||||
|
||||
Reference in New Issue
Block a user