feat: ship DDFM v2 (postal-code OR-rule) via the award catalog so it reaches the team
DDFM now derives the French department from the address postal code, not only
from a note typed by hand — the catalog def gains the address OR-rule (\d{2}\d{3}
-> Dxx), France+Corsica scope, and version 2. On next launch every operator whose
DDFM is unedited auto-upgrades to it (user-edited copies are offered it); the
materialised award_refs then recompute so ~500+ French QSOs gain their department.
Also: a catalog definition update now clears the award_refs backfill flag, so any
future catalog bump self-heals the stored columns without a manual flag bump.
This commit is contained in:
@@ -2452,6 +2452,14 @@ func (a *App) migrateAwardDefs() {
|
||||
applog.Printf("awards: %s updated from the catalog (v%d)", code, defByCode(migrated, code).Version)
|
||||
a.reseedRefsFromCatalog(code)
|
||||
}
|
||||
// A catalog definition changed (e.g. DDFM gained the postal-code OR-rule), so
|
||||
// the materialised award_refs on existing QSOs are now stale. Clear the
|
||||
// one-shot backfill flag; backfillAwardRefsOnce runs later in startup and will
|
||||
// re-materialise every row against the updated definitions. This makes ANY
|
||||
// future catalog bump self-heal the stored columns without a manual flag bump.
|
||||
if len(updated) > 0 {
|
||||
_ = a.settings.Set(a.ctx, keyAwardsMaterialized, "")
|
||||
}
|
||||
// Version-gated correction of the built-in awards' Validate sources, which
|
||||
// an earlier version wrongly set equal to Confirm (so VALIDATED == CONFIRMED
|
||||
// even for paper-QSL-only entities). Re-apply the canonical Confirm/Validate
|
||||
|
||||
@@ -7,8 +7,17 @@
|
||||
"type": "QSOFIELDS",
|
||||
"field": "note",
|
||||
"pattern": "(?i)\\b(D\\d{1,2}[AB]?)\\b",
|
||||
"or_rules": [
|
||||
{
|
||||
"field": "address",
|
||||
"match_by": "code",
|
||||
"pattern": "\\b(\\d{2})\\d{3}\\b",
|
||||
"prefix": "D"
|
||||
}
|
||||
],
|
||||
"dxcc_filter": [
|
||||
227
|
||||
227,
|
||||
214
|
||||
],
|
||||
"confirm": [
|
||||
"lotw",
|
||||
@@ -17,7 +26,9 @@
|
||||
"validate": [
|
||||
"lotw"
|
||||
],
|
||||
"ref_display": "name",
|
||||
"total": 96,
|
||||
"builtin": true
|
||||
"builtin": true,
|
||||
"version": 2
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user