[fix](trx-frontend-http): drop bidirectional requirement for decode paths
The bidirectional check required both A→B and B→A directed messages to draw a contact line, which was too strict — the receiver may not hear both sides of a QSO. Now a decode path is drawn whenever a directed message is decoded and the target's locator is known from any message in the 24 h history window. Also rename "Longest QSOs" → "Longest decode paths" and update related UI labels to better reflect what is actually shown. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
@@ -6319,11 +6319,7 @@ 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;
|
||||
|
||||
@@ -752,7 +752,7 @@
|
||||
<div class="map-locator-phase-row">
|
||||
<button type="button" id="map-p2p-paths-toggle" class="map-locator-phase-btn">TRX Paths On</button>
|
||||
<button type="button" id="map-contact-paths-toggle" class="map-locator-phase-btn">Contact Paths On</button>
|
||||
<span class="map-locator-empty">TRX paths on popup, directed contact paths when both locators are known</span>
|
||||
<span class="map-locator-empty">TRX paths on popup, directed decode paths when target locator is known</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -766,8 +766,8 @@
|
||||
<section class="map-qso-summary" aria-labelledby="map-qso-summary-title">
|
||||
<div class="map-qso-summary-head">
|
||||
<div>
|
||||
<div id="map-qso-summary-title" class="map-qso-summary-title">Longest QSOs</div>
|
||||
<div class="map-qso-summary-subtitle">Top 5 directed decode contacts in the current map view</div>
|
||||
<div id="map-qso-summary-title" class="map-qso-summary-title">Longest decode paths</div>
|
||||
<div class="map-qso-summary-subtitle">Top 5 directed decode paths in the current map view</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="map-qso-summary-list" class="map-qso-summary-list"></div>
|
||||
|
||||
Reference in New Issue
Block a user