Commit Graph
5 Commits
Author SHA1 Message Date
dborupandClaude Sonnet 5 e6cc7a5d99 chore: exclude meshguide sync script + ping-scores backfill from master
Two dborup-specific, already-used pieces held back from the generic
master branch:

- ops/meshguide-sync/sync_areas.py: fetches Danish region boundaries
  from meshguide.dk, useless for any other CoreScope deployment. This
  fast-forward merge brought it in again (areas-meshguide-sync had it
  restored after an earlier accidental deletion); excluding it here,
  same as every previous merge round.
- cmd/ingestor/db.go's ping_triggers_backfill_v1 async migration: a
  one-time historical scan that already ran and completed on stg
  (298 pings recorded from before the feature existed). Per dborup:
  other deployments merging from master didn't ask for a full-table
  CHAN-message scan on their own database. The ping-scores feature
  itself (detection, scoring, leaderboards, frontend) stays -- only
  the backfill-specific function + its tests are removed.

Both pieces remain intact on areas-meshguide-sync, where they've
already served their purpose.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-26 15:34:31 +02:00
dborupandClaude Sonnet 5 67d48a2c4b fix: restore ops/meshguide-sync/sync_areas.py, silently dropped by a routine master sync
Routine "sync branch with master before deploying" (git merge origin/master
into areas-meshguide-sync) fast-forwarded cleanly and, in doing so, silently
carried master's exclusion of this deployment-specific script back into
areas-meshguide-sync too -- fast-forward doesn't distinguish "master never
had this" from "master deliberately deletes this", so the branch meant to be
this script's home lost it entirely instead of just staying ahead of master.

Restored verbatim from the last commit that had it (e81f89d), including the
matching AREAS.md section describing it. Master must never carry this file;
areas-meshguide-sync must never lose it to a master sync again.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-26 12:45:34 +02:00
dborup 2674bcb3d5 Merge areas-meshguide-sync into master: generic areas/scopes feature set
Excludes ops/meshguide-sync/sync_areas.py (meshguide.dk-specific data
fetch script, not useful without that community site's account) --
everything else is generic: draw-a-polygon areas, homeArea<->geo_filter
linking, per-area regionScopes (one area can now link multiple scope
names, e.g. Europa's "eu"/"europe"), Scope Adoption by Area with
per-node matched-scope breakdown, Domestic/Foreign filters on the
Scopes tab's hygiene sections, a live-resolved "Area:" tag on channel
messages (including WebSocket-appended ones) distinct from the
scope-linked tag, and a wardriving-session area badge.
2026-07-22 17:49:46 +02:00
dborup f11d3d69e5 feat: allow multiple hashRegions scopes per area
AreaEntry.RegionScope (single string) -> RegionScopes ([]string), so a
broad umbrella area (e.g. Europa) can link more than one scope name
(e.g. both "eu" and "europe") -- a node matching any one of them now
counts as supporting the area in computeScopeAdoptionByArea, the
"Scope Adoption by Area" section, and the regionScope->label lookup
used to annotate region codes elsewhere on the Scopes tab.
2026-07-22 17:09:45 +02:00
dborupandClaude Sonnet 5 2fa991d64b docs: add AREAS.md explaining the areas/homeArea config system
Covers AreaEntry fields (label/polygon-or-box/regionScope), why
hierarchy is purely geometric (no parent field -- draw a broad area
generously enough to contain its sub-areas and rollup just works),
the two different area lookups (single most-specific match for
badges vs. all-containing-areas for aggregate counts), the homeArea
link to geo_filter and why it exists, and a verify-before-deploy
checklist for anyone drawing a new polygon.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-22 12:21:52 +02:00