feat(cluster): a SOTA column, and a spot click that credits the summit

The SOTA feeds put the summit in the spot's own text, so there is nothing to
poll: a regex on the comment gives the reference, and clicking the spot writes
SOTA@<ref> into the award references the way a park already wrote POTA@<ref>.

The regex is narrow on purpose — association/region-NNN, anchored — because
POTA (US-4475), WWFF (DLFF-0001) and portable callsigns (DL/SP9DPM/P) share
that field and none of them is a summit. Pinned by a table test.

Off by default: the reference is only there on the summit feeds, and an empty
column for every operator who does not chase them is worse than a checkbox.
This commit is contained in:
2026-08-27 21:33:17 +02:00
parent b8796369ba
commit 08d316b1e0
9 changed files with 108 additions and 36 deletions
+5
View File
@@ -8931,6 +8931,11 @@ func (a *App) clusterEventWorker() {
}
}
}
// SOTA: the summit is in the spot's own text — the SOTA feeds put it
// there — so it costs a regex rather than an API lookup.
if s.SOTARef == "" {
s.SOTARef = cluster.SOTARefFrom(s.Comment)
}
// POTA: tag the spot when the DX station is currently activating a park.
if a.pota != nil {
if info, ok := a.pota.Lookup(s.DXCall); ok {