Files
OpsLog/internal/db/migrations/0026_lookup_web_zip.sql
T
rouggy 2f5fd63afd fix(lookup): read the fields the providers were already sending
Audit of every field a lookup returns against what OpsLog can store, prompted
by a report that HamQTH was not fetching the email.

The email was never broken: pinned now against a captured HamQTH answer, it
parses and reaches the QSO. The reported callsign simply has no public address
on HamQTH, which the empty field could not distinguish from a fault — so the
"[email protected]" placeholder is gone. A greyed-out sample address in the one
field an operator checks to see whether the lookup found one reads as a value.

Real gaps found and closed:

- web: the qso table has had the column since migration 0003 and no provider
  mapping ever read it. HamQTH sends <web>.
- picture: Result.ImageURL was documented "QRZ only" because HamQTH's element
  is <picture>, not <image>. It was there all along.
- zip: sent by both providers, read by neither.
- adr_name: used only as a fallback when a record carries neither nick nor
  name. Deliberately NOT preferred over <nick> — a log wants the name the
  operator goes by on the air, "Igor", not "Igor Vladimirovich Getman".

The parse tests use a real captured payload, including the stray <div> advert
the server injects into its own XML.
2026-08-12 17:34:45 +02:00

8 lines
365 B
SQL

-- The lookup cache gains the two fields the providers were already sending and
-- nothing was reading: the operator's own site, and the postal code.
--
-- `web` matters beyond the cache: the qso table has had a `web` column since
-- 0003 and no lookup ever filled it.
ALTER TABLE callsign_cache ADD COLUMN web TEXT;
ALTER TABLE callsign_cache ADD COLUMN zip TEXT;