From 40e843ff7285bbcfe2c241cf2901a1ed08ac557c Mon Sep 17 00:00:00 2001 From: gadgethd <111318106+gadgethd@users.noreply.github.com> Date: Sat, 8 Aug 2026 16:41:55 +0100 Subject: [PATCH] =?UTF-8?q?chore:=20save=20pending=20state=20=E2=80=94=20p?= =?UTF-8?q?athing=20experiment=20reports,=20stats=20&=20mosquitto=20update?= =?UTF-8?q?s=20(pre-migration=20sweep)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BASELINE-PATHING.md | 74 +++++++++++ IMPLEMENTATION-REPORT.md | 60 +++++++++ PLAN-pathing-accuracy.md | 131 ++++++++++++++++++ PLAN-single-repeater-coverage.md | 174 ++++++++++++++++++++++++ PLAN-unify-resolvers.md | 197 +++++++++++++++++++++++++++ REPORT-pathing-experiment.md | 121 +++++++++++++++++ REVIEW-single-repeater-coverage.md | 193 +++++++++++++++++++++++++++ SPRING-INSTALL-AUDIT-2026-08-06.png | Bin 0 -> 317635 bytes SUMMARY-BETA-PORT.md | 54 ++++++++ SUMMARY-CORE-EXTRACT.md | 39 ++++++ SUMMARY-FRONTEND-BLUE.md | 18 +++ SUMMARY-GITHUB-CLEANUP.md | 38 ++++++ SUMMARY-STAGE3.md | 198 ++++++++++++++++++++++++++++ compose.phase4.yml | 48 +++++++ frontend/mobile-shot.mjs | 39 ++++++ mosquitto/mosquitto.conf | 8 +- 16 files changed, 1385 insertions(+), 7 deletions(-) create mode 100644 BASELINE-PATHING.md create mode 100644 IMPLEMENTATION-REPORT.md create mode 100644 PLAN-pathing-accuracy.md create mode 100644 PLAN-single-repeater-coverage.md create mode 100644 PLAN-unify-resolvers.md create mode 100644 REPORT-pathing-experiment.md create mode 100644 REVIEW-single-repeater-coverage.md create mode 100644 SPRING-INSTALL-AUDIT-2026-08-06.png create mode 100644 SUMMARY-BETA-PORT.md create mode 100644 SUMMARY-CORE-EXTRACT.md create mode 100644 SUMMARY-FRONTEND-BLUE.md create mode 100644 SUMMARY-GITHUB-CLEANUP.md create mode 100644 SUMMARY-STAGE3.md create mode 100644 compose.phase4.yml create mode 100644 frontend/mobile-shot.mjs diff --git a/BASELINE-PATHING.md b/BASELINE-PATHING.md new file mode 100644 index 0000000..905701a --- /dev/null +++ b/BASELINE-PATHING.md @@ -0,0 +1,74 @@ +# Pathing accuracy baseline + +Phase 0 baseline for `ukmesh`, captured 2026-08-03 from the local TimescaleDB +snapshot. The harness selects multibyte packets from the last 45 days, keeps +only packets whose full relay hashes uniquely identify every relay, degrades +the resolver-facing packet rows to one-byte prefixes, and scores the four +path-resolution jobs: + +- legacy-greedy — `lazyResolvePathLegacy` +- lazy-viterbi — `lazyResolvePath` +- beta-single — `resolveBetaPathForPacketHash` +- beta-multi — `resolveMultiObserverBetaPath` + +Each cell is `route accuracy / hop accuracy`. Route accuracy means the complete +relay chain is correct; hop accuracy is correct relay positions divided by all +gold relay positions. `n` is the number of gold packets in the stratum. + +The primary run requested 1,500 packets and yielded 1,259 valid gold packets: +309 routes of length ≤3, 126 of length 4, 196 of length 5–6, 190 of length +7–8, 314 of length 9–12, and 124 of length 13+. Corridor novelty is source → +receiver: **seen** means the pair occurred earlier in the preceding 120-day +prior-building window; missing source IDs are classified as unseen. + +## Primary run: target 1,500, valid gold n=1,259 + +| stratification | n | legacy-greedy | lazy-viterbi | beta-single | beta-multi | +|---|---:|---:|---:|---:|---:| +| overall | 1,259 | 20.7% / 44.6% | 11.5% / 15.3% | 17.0% / 20.0% | 2.1% / 1.9% | +| prior rare (≤1) | 931 | 16.0% / 39.7% | 6.4% / 10.2% | 17.4% / 17.8% | 1.9% / 1.8% | +| prior mid (2–7) | 17 | 11.8% / 44.6% | 11.8% / 26.1% | 58.8% / 52.2% | 0.0% / 0.0% | +| prior supported (≥8) | 311 | 35.4% / 62.0% | 26.7% / 33.2% | 13.5% / 26.2% | 2.9% / 2.3% | +| route ≤3 | 309 | 35.9% / 49.5% | 10.4% / 11.1% | 53.7% / 62.8% | 6.8% / 8.0% | +| route 4 | 126 | 37.3% / 54.8% | 11.9% / 14.9% | 23.0% / 43.1% | 1.6% / 4.8% | +| route 5–6 | 196 | 26.5% / 52.7% | 12.2% / 13.9% | 8.2% / 34.6% | 2.0% / 3.5% | +| route 7–8 | 190 | 17.4% / 53.7% | 13.7% / 17.1% | 1.1% / 17.5% | 0.0% / 1.7% | +| route 9–12 | 314 | 5.4% / 41.3% | 9.9% / 12.4% | 0.3% / 10.4% | 0.0% / 0.7% | +| route 13+ | 124 | 0.8% / 33.5% | 13.7% / 21.8% | 0.0% / 6.3% | 0.0% / 0.0% | +| corridor seen | 470 | 21.7% / 42.0% | 7.0% / 6.9% | 19.8% / 20.9% | 2.3% / 1.8% | +| corridor unseen | 789 | 20.2% / 45.9% | 14.2% / 19.7% | 15.3% / 19.5% | 2.0% / 2.0% | + +The primary run had one lazy-viterbi `PATH_HISTORY_LIMIT` failure. It is +included in that job's denominator and scored as unresolved; legacy-greedy, +beta-single, and beta-multi had zero resolver failures. + +## Smoke run: target 200, valid gold n=173 + +| stratification | n | legacy-greedy | lazy-viterbi | beta-single | beta-multi | +|---|---:|---:|---:|---:|---:| +| overall | 173 | 20.2% / 48.2% | 10.4% / 14.0% | 18.5% / 21.6% | 0.0% / 0.9% | +| prior rare (≤1) | 131 | 18.3% / 44.0% | 5.3% / 9.3% | 18.3% / 19.3% | 0.0% / 1.1% | +| prior mid (2–7) | 4 | 25.0% / 76.2% | 25.0% / 52.4% | 75.0% / 76.2% | 0.0% / 0.0% | +| prior supported (≥8) | 38 | 26.3% / 61.7% | 26.3% / 28.7% | 13.2% / 25.4% | 0.0% / 0.0% | +| route ≤3 | 45 | 28.9% / 48.2% | 4.4% / 5.5% | 51.1% / 63.6% | 0.0% / 3.6% | +| route 4 | 20 | 35.0% / 58.8% | 10.0% / 13.8% | 40.0% / 55.0% | 0.0% / 7.5% | +| route 5–6 | 24 | 33.3% / 52.7% | 16.7% / 17.6% | 4.2% / 16.0% | 0.0% / 0.0% | +| route 7–8 | 26 | 19.2% / 51.8% | 15.4% / 15.4% | 0.0% / 10.8% | 0.0% / 0.0% | +| route 9–12 | 41 | 2.4% / 43.0% | 9.8% / 12.5% | 0.0% / 16.5% | 0.0% / 0.0% | +| route 13+ | 17 | 5.9% / 48.2% | 11.8% / 17.6% | 0.0% / 11.8% | 0.0% / 0.0% | +| corridor seen | 60 | 20.0% / 50.5% | 1.7% / 1.6% | 23.3% / 25.7% | 0.0% / 1.3% | +| corridor unseen | 113 | 20.4% / 47.1% | 15.0% / 20.0% | 15.9% / 19.6% | 0.0% / 0.6% | + +## Execution and safety notes + +The compatible CLI was used: + +```text +npx tsx src/path-lazy/evaluate.ts ukmesh 200 +npx tsx src/path-lazy/evaluate.ts ukmesh 1500 +``` + +The harness uses SELECTs only. Beta's `touchPredictedOnline` option is false, +and its direct database packet reads are degraded in memory for evaluation; +the database rows are not modified. Beta coordinate DTOs are mapped back to +the unique node coordinate index loaded for the gold set. diff --git a/IMPLEMENTATION-REPORT.md b/IMPLEMENTATION-REPORT.md new file mode 100644 index 0000000..e9dd78a --- /dev/null +++ b/IMPLEMENTATION-REPORT.md @@ -0,0 +1,60 @@ +# Single-repeater RF coverage implementation report + +Date: 2026-08-03 + +Branch: `feat/single-repeater-coverage` + +Base HEAD: `8d218c1` + +## What changed + +### HopReach one-shot node mode + +- Added `--node <64-hex-public-key>` to `cmd/hopreach`, with normalized key validation and a dispatch path separate from the global run. +- Added machine-readable one-shot results for `available`, `busy`, `not_found`, `invalid_coordinates`, `out_of_region`, `stale`, and `failed` outcomes. +- The node run fetches CoreScope repeaters, requires valid in-region coordinates, rejects silent/stale positions, and accepts active/degraded positions with their position status recorded. +- Computes exactly one `propagation.Site` at the configured Standard settings: image width 2000, DEM zoom 11, supersample 1. It uses `RasterProgressiveChunked`; it never passes the production nil whole-region DEM grid to `Raster` and never computes Precision. +- Added the isolated progressive namespace `tiles/nodes//-.png` and `checkpoints/nodes/.json`. The bounded 25-character dataset ID is a deterministic SHA-256-derived value over the normalized full public key, node snapshot, and raster inputs. The full key is also folded into the checkpoint signature. +- Node checkpoint/run identities are separate from global `standard` and `precision`. Node metadata updates replace only the `node_coverage` member of `meta.json`; global `meta.run`, global completion, global progress, and global checkpoints are not modified. +- Added 6-hour skip-if-fresh behavior using `coverage.min_recompute_interval_hours`. Cached metadata is accepted only when the node coordinates/status still match and every advertised tile exists. +- Added a compact node metadata index with computing/available/failed state, position freshness, per-node run/dataset IDs, progress counts, Standard metadata, and failure text. The index is limited to 128 entries and seven days; unreferenced node tile/checkpoint datasets are cleaned after successful publication. +- Global runs preserve the existing node index while updating normal network metadata. + +### Tile serving + +- Added a narrow Nginx regex/alias for exactly `/rf-coverage/tiles/nodes/n<24-lowercase-hex>/-.png`. +- Kept the exact `meta.json` and `progress.json` aliases, existing Standard/Precision allowlist, and `/rf-coverage/` 404 fallback unchanged. + +### Frontend + +- Extended RF metadata types and tile validation for the bounded node dataset contract. +- Added derived `pending`, `available`, `stale`, and `error` states. Degraded node positions are displayed as stale even when a raster is present. +- Added **Show RF coverage** beside **Show LOS** for non-redacted repeaters with a full public key, including the current dataset state. +- Wired selected-node RF state through `MapLibreMap` and `App`; selecting a repeater swaps the existing generic raster protocol/source to that node's Standard tile set. +- Added clear **Back to network coverage** / **Network coverage** actions and node-specific status/legend text. +- Added tests for node state derivation and the node tile path contract. + +### Backend + +- Not changed. The optional single-node lookup was unnecessary because HopReach fetches and validates the authoritative CoreScope repeater record, while the browser already has the public key and coordinates needed to expose the map action. + +## Quality gates + +All required gates passed on the final worktree: + +- `docker run --rm --user "$(id -u):$(id -g)" -e HOME=/tmp -v "$PWD:/work" -w /work/third_party/hopreach golang:1.25.7-bookworm go test ./...` — PASS +- `docker run --rm --user "$(id -u):$(id -g)" -e HOME=/tmp -v "$PWD:/work" -w /work/third_party/hopreach golang:1.25.7-bookworm go vet ./...` — PASS +- `frontend/: npx tsc --noEmit` — PASS +- `frontend/: npm test` — PASS (57 tests) +- `frontend/: npm run lint:css` — PASS +- `frontend/: npm run build` — PASS (Vite emitted only its existing large-chunk advisory) +- `git diff --check` — PASS + +The backend gate was not required because no backend file was touched. + +## Deviations and constraints + +- No public or unauthenticated browser compute endpoint was added. The popup selects and polls node metadata; the on-demand execution primitive is `hopreach --node `, intended for the plan's internal/operator-side submitter. This follows the review's requirement not to turn a browser click into an unbounded unauthenticated compute trigger. +- The seven-day/128-entry retention limits are fixed implementation bounds because the current configuration schema only defines the six-hour recompute interval. +- No live node raster smoke test was run: the task explicitly prohibited running the production HopReach binary or touching the running container and `/data` output. Computation/publication behavior is covered by Go unit tests plus the full Go test/vet gates. +- No image, source-offer, digest pin, deployment, service restart, or benchmark artifact was changed. Those remain release/deployment work after the fork is published under the documented licensing and immutable-image process. diff --git a/PLAN-pathing-accuracy.md b/PLAN-pathing-accuracy.md new file mode 100644 index 0000000..cdd966d --- /dev/null +++ b/PLAN-pathing-accuracy.md @@ -0,0 +1,131 @@ +# UKMesh Pathing Algorithm — Accuracy Improvement Report + +**Date:** 2026-08-02 · **Scope:** read-only analysis (no code changes) · **Author:** Hermes +**Codebase:** `~/meshcore-analytics` on 192.168.100.105 (backend is TypeScript) + +--- + +## 1. Executive summary + +The pathing stack is already sophisticated: a Viterbi HMM decoder over prefix-matched candidate trellises, gated by an ITM radio-viability model, boosted by four families of learned priors, an ML model (LightGBM, calibrated, evolutionary-tuned) for 1-byte hash disambiguation, and multi-observer stitching. The fundamental accuracy limit is intrinsic — hops are **truncated Ed25519 pubkey prefixes (1–3 bytes)**, so a 1-byte (2-hex-char) hash can match dozens of nodes. + +The biggest accuracy wins are not in the decoder math but in: + +1. **Measurement** — the calibration/evaluation loop measures a self-referential proxy on an easy subset, so the confidence numbers (and the UI colour bands) are not proven against true path accuracy. +2. **Silent hard-gates** — links flagged ITM-impossible are excluded even when the network *actually observed* them; real paths get dropped and nobody audits the contradiction. +3. **Multi-observer evidence** — each observer view is solved independently then stitched; a joint inference (position-consistency voting) would extract far more signal from ambiguous hashes. +4. **Calibration granularity** — a single global scale/bias is applied to all evidence classes; unique-3-byte matches and pure-geography guesses get the same calibration. + +--- + +## 2. How the algorithm works today + +### 2.1 Wire format (the hard constraint) +- `path_len` byte: upper 2 bits = hash size mode (1/2/3 bytes per hop), lower 6 bits = hop count. +- Path = `hop_count × hash_size` bytes, each hop being the first N bytes of the node's Ed25519 public key. No coordinates in the path. (`multipath.md`) + +### 2.2 Two resolvers +| | Lazy (`backend/src/path-lazy/lazyResolver.ts`) | Beta (`backend/src/path-beta/resolver.ts`) | +|---|---|---| +| Role | older/lightweight path view, feed fallback | main live-paths resolver (3D arcs, multi-observer) | +| Candidate source | prefix `LIKE` lookup on nodes, bounded by observer bounding box | context trellis per hop, `MAX_TRELLIS_CANDIDATES_PER_HOP` cap | +| Core | per-position scoring + known-links + anchors | **Viterbi HMM** over trellis (`O(K²·N)`), global optimum, DP + backtrack | +| Hard gate | known-links set (node_links observed ≥2) | **ITM linkPairs only** (`linkPairs` = itm_viable OR force_viable) — anything else is `-Infinity` | +| Priors | prefix/transition/edge/motif + ML (≥0.80) | same families + ML + observer anchors + sticky anchors + affinity | +| Confidence | — | mean hop conf × resolved ratio → calibrated (scale/bias) | + +### 2.3 Evidence tiers in the beta decoder (`resolver.ts`) +- **Confirmed tier**: link in `observedLinkPairs` (real traffic) → confidence floor from observation counts (`strongConfirmedFloor`, `confirmedLinkConfidence`). +- **ITM-viable tier**: valid link, no observations → `rawConf` capped at `nonLinkCap` (0.41–0.62) unless multibyte floor wins. +- **Unique multibyte floors**: 4-char single-match ≥ 0.93, 6-char ≥ 0.985 — near-definitive. +- **Ambiguity penalties**: `localPrefixAmbiguityPenalty` (distance/proximity-weighted peers, 2-hop graph check) + linear `(matches−1)·0.01`. +- **Anchors**: direct observer anchors (hop_count → position), sticky anchors with age decay, terminal-collision guard, observer hop hints with typical-hop normalisation. +- **Affinity**: packet-derived neighbour affinity (14-day window, count/observer/SNR/recency, half-life 7 days) + mutual-neighbour Jaccard. +- **ML**: `mlPrefixScores` — LightGBM + `CalibratedClassifierCV` + evolutionary param search, trained only on gold (uniquely-resolved multibyte) data degraded to 1-byte prefixes, no feedback loop. (`ml-path-learner/worker.py`) + +### 2.4 Priors + calibration pipeline (`path-learning/rebuild.ts`, hourly via `workers/path-learning.ts`) +- Prefix/transition priors (receiver-region keyed, `MODEL_LIMIT` capped), edge priors (6h hour-bucketed, reliability/directionality/recency/pathloss scored), motif-2/3 priors. +- Calibration: `top1Accuracy = successPackets / evaluatedPackets`, success = ≥60% of a packet's *verified* edges appear in `confirmedLinks`; `scale = clamp(top1/meanConf, 0.55–1.7)`, `bias = clamp(top1 − meanConf·scale, ±0.2)`, `recommendedThreshold = 0.35 + (1−top1)·0.2`. + +### 2.5 Multi-observer (`resolveMultiObserverBetaPath`) +- Canonical observation per observer (richest path), each solved independently, shared-prefix stitching + trim, per-observer result list with explanation. + +--- + +## 3. Accuracy gaps found + +### A. Measurement & calibration (biggest lever) +- **A1 — Self-referential calibration metric.** `successPackets` counts packets whose verified edges agree with `confirmedLinks` (`rebuild.ts:597-603`) — a proxy, not true path accuracy, and only evaluated on hops that were *uniquely resolvable* (the easy subset). The global scale/bias is therefore optimistic and the UI bands (cyan ≥0.75 / amber 0.4–0.75 / red <0.4) are not validated against ground truth. +- **A2 — Single global calibration for all evidence classes.** A unique 6-char hash (floor 0.985) and a pure-geography fallback hop share the same scale/bias. Per-class calibration is needed: unique-multibyte / ML-dominant / prior-backed / observed-link / geometry-only. +- **A3 — No held-out gold set.** Training data (unique multibyte resolutions) is the same population used for evaluation — leakage risk; `ml-path-learner` correctly avoids feedback loops, but the calibration path does not hold out anything. + +### B. Hard gates that silently drop real paths +- **B1 — ITM-impossible is absolute.** `hopScore` returns `-Infinity` when a link isn't in `linkPairs`, and `isImpossibleLink` hard-blocks `pathLoss ≥ impossibleLinkPathlossDb` (`resolver.ts:1126-1129`, `fallback.ts:15-17`) **even when the link has real observed traffic**. If ITM/SRTM is wrong, correct paths vanish with no audit trail. (This class of issue also explains the old UI's "matchedHops excludes ambiguous hops" behaviour.) +- **B2 — No contradiction feedback loop.** No query/log for "observed_count > 0 but ITM says impossible" — that data is the cheapest ground truth for retuning the physical model. + +### C. Multi-observer evidence under-used +- **C1 — Per-observer independent solving + stitching** (`resolver.ts:2324+`). A position-consistency matrix (which hash→candidate appears at position P across *all* observers) is only partially used (`globalDirectAnchors` in the lazy resolver). Joint inference would let ambiguous hops be resolved by cross-observer agreement — the single biggest accuracy win available. +- **C2 — hop_count only used for anchors.** The majority hop count across observers is a strong prior on path length that the Viterbi never sees (no length penalty/constraint). It also feeds the UI "remaining hops" figure. +- **C3 — Hash-size mixing.** Observers with 1 vs 2 vs 3-byte paths for the same packet fragment groups; cross-size alignment (a 3-byte hash sharing its first 2 chars with a 1-byte hash) could unify evidence. + +### D. Evidence signals not used in the decoder +- **D1 — SNR.** Packets carry SNR; it's used in affinity (`avg_snr`) but not per-hop in `hopScore`. An SNR gradient (candidates closer to the observer should hear it louder) would disambiguate local peers cheaply. +- **D2 — Node role.** `role` is used only for the observer self-prefix guard (`rx.role === 2`, `resolver.ts:1137`). Repeater-vs-end-node role could weight candidates. +- **D3 — Prefix priors lack recency decay.** Edges get `recencyScore`; prefix/transition counts (`rebuild.ts`) are window counts without decay — a node that moved or died keeps a stale prior. Also no day-of-week bucketing (edges/motifs have 6h buckets; prefixes don't). + +### E. Prior saturation & weight hygiene +- **E1 — `MODEL_LIMIT` global cap.** Popular prefixes crowd out rare-but-informative priors. Per-prefix top-N would preserve signal. +- **E2 — Duplicated inline weights.** `scoring.ts` header admits `resolver.ts` predates it and still has inline weights — convergence was deferred. The ML learner runs an evolutionary search over its own params; the decoder weights (which are *more* consequential) are hand-tuned with no automated search or A/B. +- **E3 — `ABLATE_LEAKY_PRIORS` exists but no systematic ablation record.** No CI harness measures which evidence family actually moves accuracy. + +--- + +## 4. Recommended improvements (prioritised) + +### Phase 1 — Measure honestly (foundation, ~no decoder changes) +1. **Gold-standard evaluation set**: hold out uniquely-resolved 3-byte multibyte packets (say last 14 days, re-sampled weekly). Re-resolve their degraded 1-byte forms; compute **true top-1 path accuracy**, segment accuracy, ECE + Brier. +2. **Per-class reliability curves**: fit calibration (isotonic or platt per class) for: unique-multibyte / ML-dominant / prior-backed / observed-link / geometry-only. Publish reliability diagram + ECE on the stats page. +3. **Fix the calibration success metric** (`rebuild.ts:603`): replace the ≥0.6 proxy with continuous expected-calibration-error on the gold set. + +### Phase 2 — Stop dropping real paths +4. **Observed-override tier**: links with `observed_count ≥ N` (e.g. 3) bypass the ITM-impossible hard block (keep a distinct low-confidence marker rather than `-Infinity`). +5. **Contradiction audit worker**: hourly query for observed-but-ITM-impossible pairs; log to a table + surface in health; use the corpus to retune `impossibleLinkPathlossDb` and ITM parameters. + +### Phase 3 — Joint multi-observer inference (biggest accuracy win) +6. **Position-consistency voting**: build a `(position, hash) → candidate frequency` matrix across all observers of a packet; use cross-observer agreement as a new trellis-column prior (weight ~ unique-multibyte evidence). This directly attacks 1-byte ambiguity. +7. **Hop-count prior**: soft length constraint in the Viterbi from the majority observer hop count (penalty when decoded length deviates) + expose expected-vs-decoded in the explanation payload. +8. **Cross-size hash alignment** for mixed 1/2/3-byte observer groups. + +### Phase 4 — Cheaper decoder-side wins +9. **SNR shaping**: add per-hop SNR-gradient term to `hopScore` (observer-relative). +10. **Recency decay for prefix/transition priors**; optional day-of-week buckets. +11. **Per-prefix top-N** instead of global `MODEL_LIMIT`. +12. **Role-weighted candidates** using the existing `role` field. + +### Phase 5 — Keep it from regressing +13. **Converge weights into `scoring.ts`** and make them config-driven; run the ML learner's evolutionary search over decoder weights too (or a simpler random search), with the Phase-1 gold set as the objective. +14. **CI accuracy regression gate**: `path-lazy/evaluate.ts` already exists — wire a fixed gold corpus into CI; any resolver change must not regress top-1 accuracy/ECE beyond a threshold; record ablations (prefix/edge/ML/affinity on/off) to `docs/pathing-ablations.md`. + +--- + +## 5. Verification plan + +1. Build the gold set from the DB (unique 3-byte packets, held out). +2. Baseline: current resolver top-1 path accuracy + ECE per class on the gold set (numbers to be recorded in `path_model_calibration`-style table). +3. Apply changes one phase at a time; A/B on the same gold set; publish delta per phase. +4. Live check: monitor `top1`, `mean_pred_confidence`, `recommended_threshold` from the existing calibration row over a week; confirm the UI colour bands now match measured reliability. +5. Spot-check live paths against the map for a sample of packets (manual/hardware evidence step). + +--- + +## 6. Files referenced + +- `backend/src/path-beta/resolver.ts` (Viterbi decoder, multi-observer, context) +- `backend/src/path-beta/fallback.ts`, `affinity.ts`, `geometry.ts`, `constants.ts` +- `backend/src/path-shared/scoring.ts` (shared weights — partially converged) +- `backend/src/path-lazy/lazyResolver.ts`, `path-lazy/evaluate.ts` +- `backend/src/path-learning/rebuild.ts` (priors + calibration), `workers/path-learning.ts` +- `backend/src/pathing/pathingService.ts` (+ `pathingRepository.ts`, `pathingPublicDto.ts`) +- `backend/src/platform/config/pathing.ts` (tunables) +- `ml-path-learner/worker.py` (LightGBM 1-byte disambiguator) +- `multipath.md` (wire-format notes) diff --git a/PLAN-single-repeater-coverage.md b/PLAN-single-repeater-coverage.md new file mode 100644 index 0000000..df6e8bb --- /dev/null +++ b/PLAN-single-repeater-coverage.md @@ -0,0 +1,174 @@ +# PLAN: Single-Repeater RF Coverage on UKMesh + +Status: **reviewed (REVIEW-single-repeater-coverage.md, commit 4ec5fd1) + benchmarked (2026-08-03) — standard tier only per Ben** +Date: 2026-08-02 +Author: Hermes (assessment from live inspection of 192.168.100.105) +Canonical review output: `REVIEW-single-repeater-coverage.md` (same directory) + +## 1. Goal + +Expose an individual repeater's RF coverage footprint on the UKMesh app, reusing +the HopReach propagation calculations already deployed on 192.168.100.105 — +without degrading the existing whole-network map. + +## 2. Current state (verified live 2026-08-02) + +- **HopReach** (Go, vendored `third_party/hopreach`, public fork `gadgethd/hopreach` + @ tag `v0.1.32-ukmesh.3`, commit 0230702be70a2729c5acc5640401f56ab9d65fd4) runs + as compose service `hopreach` (4 CPU / 8 GiB, CPU mode), nightly cron `17 2 * * *`. +- Backend serves a private `/hopreach` compatibility router (internal-only, not + proxied by Nginx): paginated nodes (role=2 repeaters with coordinates, ukmesh + network) + observed `node_links` (calibration evidence). +- **The raster model is best-server**: `internal/propagation/propagation.go` + `marginsRowIndexed` computes margins for every candidate site per pixel but + keeps ONLY the max (`bestMargin`) — per-transmitter margins are discarded. +- Output published to volume `rf_coverage_data`: + `/data/output/meta.json`, `progress.json`, `tiles/standard/{r}-{c}.png` + (6 tiles, 2000px, DEM zoom 11), `tiles/precision/{r}-{c}.png` (54 tiles, + 6000px, DEM zoom 13, 2x supersample). Precision was mid-compute at inspection. + Live meta: 7,071 repeaters fetched, 4,380 in region (416 active / 592 degraded / + 3372 silent), max_search_range_km 77.53, freq 868 MHz. +- Frontend: `RfCoverageOverlay.tsx` is fully **data-driven** — it renders any + tile set described in `meta.json` (`coverage[].tiles` = {image, bounds}) + via `/rf-coverage/?revision=…`. Adding a new tile set = meta extension + + a selector; the raster protocol is generic. + +## 3. Key finding + +**The current output cannot yield per-repeater coverage** (per-transmitter data is +maxed away at raster time; PNG tiles are merged best-server). + +**But the fork already contains the exact machinery needed**: `cmd/hopreach/run.go` +has a per-**scope** coverage path (~line 720): it filters repeaters to a subset, +calls `coverage.Raster(engine, grid, scopeSites, scopeBounds, …)` with the same +engine/DEM-cache/model, writes `coverage-scope--*.png` tiles, and registers +them in `meta.json` (`ScopeCoverage`). **A single repeater is a subset of one.** + +It is dormant in production: `rf-coverage/config.ukmesh.yaml` has +`scope_observation.enabled: false` (live meta.json contains no scope tier). + +## 4. Recommended approach (A): per-repeater tiles from the HopReach fork + +> **DECISION (Ben, 2026-08-03): per-repeater coverage uses the STANDARD tier ONLY.** +> Precision is rejected for per-node use — measured 4 min 52 s / 36 tiles vs 6 s / 4 tiles +> (see §4.5 benchmark). Standard-only keeps on-demand compute trivial and the UI snappy. +> The global whole-network map keeps both tiers exactly as today. +> +> **DECISION (Ben, 2026-08-03): ON-DEMAND ONLY.** A repeater's coverage is computed +> only when that specific repeater is requested — never precomputed for every repeater, +> never a nightly batch. Repeat requests for the same node within the freshness window +> are served from cache. meta.json grows only by requested nodes (bounded by LRU/TTL). + +### 4.1 Calculator (third_party/hopreach, Go) + +- Clone the per-scope loop pattern (run.go `computing_scope_coverage` block) into a + new **per-repeater** path: + - Input: a single repeater public key (64-hex) → find its node in the fetched + node set (`selectRepeaters` output) → `sites = [one Site]`. + - Bounds: `coverage.RasterBounds([]Point{node}, rangeKm)` (same as scope path). + - Raster: `coverage.Raster(engine, grid, oneSite, bounds, imageWidth, params, maxAlpha, progress)`. + - Tiles: `coverage.WriteTiles(outputDir, "coverage-node-", raster, bounds)`. + - Meta: register `meta.node_coverage[pubkey] = buildCoverageMeta(tiles, rangeKm, cfg, note)` + (mirror `ScopeCoverage` pattern). +- **Trigger mode — DECIDED: on-demand only.** Chosen path (per REVIEW + recommendation): `--node ` one-shot CLI primitive as the execution + engine, invoked by a small loopback-only internal admin/queue endpoint + (hopreach-shareapi `/admin` pattern) or an operator-side submitter. The UI + click → internal endpoint → queued job → status poll. Reuses lock.go + + `min_recompute_interval_hours: 6` skip-if-fresh: a second request for the same + node inside the window returns the cached tiles, not a recompute. +- **NO precomputation**: no nightly batch, no compute-all-repeaters path, no + warming. Only nodes actually requested are ever computed (bounded set; see + meta growth policy §7 Q5). +- **Tier scope: STANDARD only** (2000 px, DEM zoom 11) — the precision tier must + NOT be computed for node jobs (see decision banner). The node path therefore + needs far fewer DEM tiles (zoom 11 only), less memory, and no supersampling. +- Terrain: reuse the DEM cache (`/data/dem-cache`, zoom-11 tiles are fully warm + UK-wide — 67 x-columns; zoom 13 is NOT needed for node jobs). + +### 4.2 Serving (no changes expected) + +- Tiles land in the same `rf_coverage_data` volume; Nginx already serves + `/rf-coverage/` read-only (meta/progress/numeric tile paths). +- Verify the nginx app config allows arbitrary subpaths under `/rf-coverage/` + (it currently serves `tiles/standard|precision/*.png` — check the exact location + rule during review; numeric `{row}-{col}.png` pattern may need widening). + +### 4.3 Frontend (frontend/src) + +- `hooks/useRfCoverage.ts`: extend `RfCoverageMeta` with + `node_coverage?: Record`. +- Node popup (map page): add "Show RF coverage" action for repeaters. +- `components/Map/RfCoverageOverlay.tsx`: select the node tile set instead of the + global tier; existing layer ordering (below roads/labels/nodes) and tier + availability states are reusable. Tile URL helper is generic + (`rfCoverageTileUrl`). +- Optional: status/legend text mirroring the existing legend/model details. + +### 4.4 Sizing (VALIDATED by benchmark, 2026-08-03) + +- Single repeater, **standard tier only**: measured **~6 s** (4 tiles, zoom 11) + on 4 CPU / 8 GiB with warm DEM cache, running concurrently with the nightly + UK precision job. On-demand compute cost is negligible. +- Precision for one repeater (measured, for reference only): 4 min 52 s / 36 + tiles — ~50x standard. Rejected for per-node use (§4 decision). +- Memory: standard tier needs zoom-11 DEM only; no supersampling; well under + the 8 GiB container limit. + +### 4.5 Benchmark evidence (2026-08-03, Berwick 55.7708,-2.0058, active repeater) + +- Method: production hopreach binary (deployed digest), mock node feed with + exactly 1 in-region repeater, prod-identical limits (4 CPU / 8 GiB / + GOMAXPROCS=4), warm DEM cache, run concurrently with prod nightly run. +- Results: standard 6 s (4 tiles, gen 00:15:38Z); precision 4 min 52 s + (36 tiles, gen 00:20:30Z); total wall 4 min 58 s. Engine mid-run ETA (~5.3 + min) matched. Prod nightly run unaffected (59.5% → 60.3% during test). +- Artefacts on VM: `~/hopreach-bench-output/` (tiles+meta), `~/bench-cache/` + (warm tile copy). Cold areas add only S3 download time (~65 KB/tile). +- Implications: a "show coverage" click can serve standard almost instantly; + precision would be a poor trade for per-node views. + +## 5. Alternatives + +- **B — resurrect old per-node API**: `node_coverage` table still holds 4,578 + per-node polygons (red/amber/green bands; last written 2026-08-02 15:53 UTC). + `/api/coverage/:nodeId` is tombstoned 410. Zero compute, but: old model that + HopReach replaced, frozen/stale data, and `docs/rf-coverage-rollout.md` + explicitly forbids the live app reading `node_coverage` (rollback material, + one-release window, removal planned). **Rejected as primary option.** +- **C — derive from merged tiles**: impossible (per-transmitter data destroyed). + +## 6. Release constraints (from docs/rf-coverage-rollout.md — MUST hold) + +- Any fork change requires a new public tag (e.g. `v0.1.32-ukmesh.4`), immutably + tagged on `gadgethd/hopreach`, referenced by SOURCE-OFFER.md; AGPL-3.0 + + Commons Clause publication rules apply. +- `scripts/benchmark-hopreach.sh` release gate + `rf-coverage/BENCHMARKS.md` + update; digest-pinned images (`.env` pins); do NOT enable calibration or reduce + fidelity; keep `node_coverage` + old images for the rollback window. +- Backend/app rollback safety: per-repeater additions must not change the global + tier contract. + +## 7. Open questions for review + +> **Status 2026-08-03:** code-level questions (1–2) are answered with file:line +> evidence in `REVIEW-single-repeater-coverage.md` (commit 4ec5fd1) — that review +> MUST be folded into the implementation (nil-grid chunked path, WriteTiles/nginx +> path contract, per-node checkpoint identity, freshness, meta size). The compute +> question is resolved by the §4.5 benchmark: standard tier only, ~6 s per node. + +1. Exact touch points (file:line) for the per-repeater loop; does + `progressiveSignature`/input-signature invalidation interact safely with + per-node runs (site list changes)? +2. Nginx location rule for `/rf-coverage/` — does it need widening for + `coverage-node-*` tile names? +3. On-demand trigger: CLI flag vs HTTP endpoint vs queue — which fits the + container's lock/schedule model with least risk? + → **DECIDED**: `--node` CLI primitive + loopback-only internal queue endpoint + (per REVIEW's hybrid recommendation); no public/browser compute trigger. +4. Should per-repeater runs be gated on node freshness (silent repeaters have + stale positions) or computed for any in-region repeater? +5. meta.json growth: thousands of `node_coverage` entries — acceptable? (416 + active now; only compute on demand/by request.) +6. Frontend: where exactly is the node popup (which component) to host the + "Show RF coverage" action? diff --git a/PLAN-unify-resolvers.md b/PLAN-unify-resolvers.md new file mode 100644 index 0000000..0defcb2 --- /dev/null +++ b/PLAN-unify-resolvers.md @@ -0,0 +1,197 @@ +# UKMesh Pathing Integration Plan — One Overarching Resolver + +**Date:** 2026-08-03 · **Author:** Hermes · **Status:** PLAN ONLY (no code changed) +**Basis:** production code read (backend/src), experiment results (~/multibyte-exp, +REPORT-pathing-experiment.md), prior report PLAN-pathing-accuracy.md. + +--- + +## 1. What exists today (verified in code) + +All path resolution flows through **one worker pool** (`path-beta/resolveWorker.ts`) +with three job types, but **two different decoders** behind them: + +| job type | entry point | decoder | evidence/weights | +|---|---|---|---| +| `resolveLazy` (API `/pathing` packet path — post-settled full route) | `path-lazy/lazyResolver.ts` (818 ln) | **modern Viterbi** (trellis, marginals→ambiguity, NULL_BASELINE unresolved candidate, observer anchors, observer bounding box) | `path-shared/scoring.ts` (single source of truth) + rebuild priors + ML prefix scores + node_links | +| `resolve` (single-observer view) | `path-beta/resolver.ts` (2913 ln) | **legacy single-observer core** (ln 816–1441): greedy-ish permutation scoring, confidence calibration, fallback modes | **inline weights** (0 refs to SCORE) — explicitly flagged in scoring.ts as "predates this module… converge it here when convenient" | +| `resolveMulti` (multi-observer overlay) | `path-beta/resolver.ts` (ln 2324–2420) | legacy combine: observers solved independently, overlays stitched | inline weights | + +Supporting infra, already shared or parallel: +- `path-shared/scoring.ts` — MAX_HOP_KM, SCORE weights, ML_DOMINANT_THRESHOLD, NULL_BASELINE, AMBIG_DELTA, MAX_COL, prior key formats. **Used by lazy only.** +- `path-learning/rebuild.ts` (878 ln) — rebuilds prefix/transition/edge/motif priors + ML prefix scores from packet history. +- `path-lazy/evaluate.ts` (205 ln) — **gold-packet accuracy harness**: multibyte packets with uniquely-resolving hashes → degrade to 1-byte prefixes → compare legacy greedy vs Viterbi; stratifies by prior support to expose leakage. This is the report's Phase-1 eval gate, already in-repo. +- `path-lazy/lazyResolverLegacy.ts` — old greedy (kept for the harness comparison). + +## 2. The goal + +**One overarching algorithm**: a single Viterbi decode core + one evidence model + +one weights table, powering all three job types. Delete the legacy inline-weight +resolver. One accuracy harness gates everything. + +## 3. What the experiment contributes (new signals, validated) + +From REPORT-pathing-experiment.md (gold set 75,625 routes; holdout test 11,821): + +| signal | gain (test, 1-byte task) | where it plugs in | +|---|---|---| +| **Corridor interpolation** — hop i anchored at i/(N-1) along src→rx line | +9 pp unseen corridors (90.4 vs 81.3) | new emission term | +| **Position-conditional transitions** — spine stability (pos, from)→to | small overall, big on long routes | new transition term | +| **ITM viability bonus** (node_links.itm_viable, 20,363 pairs) | +0.4 pp controlled A/B | transition bonus (bonus-only, never hard-gate) | +| **Tuned weights** (coord-descent: pos_freq 1.2, trans 2.0, obs_dist 80…) | 97.21 → 97.27% overall | scoring.ts values (re-tuned on prod harness) | +| Margin-based per-hop confidence | — | reuse lazy's marginals; feed the beta confidence/3D-arc colouring | + +Negative results to NOT repeat: ML candidate scorer (loses to hand-built priors), +elevation transition penalty (regressed), bidirectional decode (neutral), +joint longest-route-fix decode (error propagation — margin-gated version only). + +## 4. Target architecture + +``` + ┌─────────────────────────────────────────────┐ + │ path-core/decoder.ts (NEW) │ + │ one Viterbi (max-product) trellis decode │ + │ emissions + transitions + NULL_BASELINE │ + │ + per-position margins (confidence) │ + └──────────────┬──────────────────────────────┘ + │ evidence in, path out + ┌────────────────────────┼─────────────────────────┐ + │ │ │ +┌───────▼───────┐ ┌─────────▼─────────┐ ┌────────▼────────┐ +│ lazyResolver │ │ beta resolve │ │ beta resolveMulti│ +│ (thin wrapper │ │ (thin wrapper │ │ (wrapper: group │ +│ → canonical │ │ → single-observer│ │ observers → │ +│ group decode)│ │ decode + DTO) │ │ canonical │ +│ │ │ │ │ decode + DTO) │ +└───────┬───────┘ └─────────┬─────────┘ └────────┬────────┘ + │ │ │ + └──────────── resolveWorker (unchanged: 3 job types, same DTO contracts) +``` + +Key decisions: +1. **One decoder, three thin wrappers.** DTO contracts (`pathingPublicDto.ts`, + `api/contracts.ts`) and the worker pool stay exactly as-is; only the decode + internals unify. Zero API surface change. +2. **The lazy resolver is the base** — it is already the modern Viterbi with + shared weights. The legacy path-beta core is deleted after its accuracy is + matched or beaten by the shared core on the harness (per-job gate, §6). +3. **Multi-observer = canonical grouping.** The lazy resolver already groups + prefix-compatible observers and decodes once (its `groupByPathHashes`). + `resolveMulti` adopts this instead of the "solve-then-stitch" legacy combine — + same packet evidence, one coherent chain, no permutation explosion. + Preserve the beta DTO fields (permutationCount etc. can be derived or + deprecated with the frontend's blessing). +4. **All weights in scoring.ts.** Move the beta inline weights out; the SCORE + table becomes the only tuning surface, re-valued by the harness (§6). +5. **New priors from rebuild.ts** (extend, don't fork): + - `path_corridor_priors` — (src, rx, pos) → node counts (corridor emission) + - `path_pos_transition_priors` — (pos, from) → to counts (spine transitions) + - position-aware prefix counts (`pos_freq`) if rebuild doesn't already carry it + - ITM viability comes read-only from `node_links.itm_viable` (already computed + by the link worker; no new compute) + Lifecycle identical to existing priors (rebuild cadence, generation stamp, + cache invalidation via visibility generation). +6. **Confidence:** the shared decoder emits per-position margins; lazy's + AMBIG_DELTA semantics + beta's calibrated confidence/fallback thresholds both + derive from the same margins. The 3D-arc colouring keeps its current bands. + +## 5. Implementation phases (each gated, deployable independently) + +- **Phase 0 — Baseline (no code):** run `evaluate.ts` on prod data; capture + route/hop accuracy for legacy greedy, lazy Viterbi, and (add harness support + for) the beta single + multi jobs. These numbers are the merge gate. +- **Phase 1 — Extract `path-core/decoder.ts`:** move the lazy Viterbi body out + of lazyResolver into path-core with an evidence-interface (priors passed in). + lazyResolver becomes a thin wrapper. Harness must be bit-identical. +- **Phase 2 — Port single-observer `resolve`:** route the beta single-observer + job through the shared decoder (observer anchor emission gives it the same + view it has today). Add harness coverage for the beta DTO path. **Delete the + legacy single-observer core** (resolver.ts shrinks to the multi-observer + surface) once accuracy ≥ baseline. +- **Phase 3 — Port `resolveMulti`:** canonical grouping (lazy-style) + one + decode; project per-observer overlays. Compare against legacy combine on the + harness; keep DTO fields or migrate frontend in the same deploy. +- **Phase 4 — Enable new signals (behind env flags, one at a time):** + corridor priors → pos transitions → ITM bonus. Each lands with its harness + delta on the leakage-resistant stratifications (unseen corridors, 13+ hops, + prior-support buckets). No flag ships enabled without a measured gain. +- **Phase 5 — Re-tune weights:** run the coord-descent tuner against + `evaluate.ts`'s gold set (real hash sizes — do NOT copy experiment weights + blindly; they were tuned on 1-byte-degraded data). Commit final SCORE values. +- **Phase 6 — Confidence unification + cleanup:** margin→confidence mapping + for the 3D arcs; delete `lazyResolverLegacy.ts` if the harness no longer needs + it; docs in scoring.ts; update multipath.md. + +## 6. Acceptance criteria (regression gate, CI-able) + +**Accuracy reference: the experiment's vit_src numbers (Ben directive +2026-08-03: "trust your results over anything on the site — they are the most +accurate and the newest").** The harness degrades to the same 1-byte task as +the experiment, so the gates are directly comparable: + +`npx tsx src/path-lazy/evaluate.ts` (extended to all three job types) must show: +- aggregate route accuracy ≥ **97.27%** / hop ≥ **99.24%** on the holdout-style + stratification (unseen-corridor and 13+ buckets tracked separately, matching + the experiment: ≥ 93% unseen, ≥ 89% 13+); +- shared decoder ≥ legacy decoder on **every** stratification (length buckets, + seen/unseen corridors, prior-support buckets), no single regression > 0.5 pp; +- API DTO parity tests (`pathing.test.ts`, `pathingPublicDto.test.ts`) pass; +- no new endpoints; worker pool untouched; rebuild runtime within budget. + +## 7. Risks & mitigations + +| risk | mitigation | +|---|---| +| Corridor/pos priors memorize repeated corridors (leakage) | evaluate.ts "supported" stratification + margin-gated usage; cap table size (top-N per key) | +| Prior table size blow-up (corridor_pos ~ src×rx×pos) | caps (MAX keys, top-N per key), same retention as existing priors | +| DTO drift breaking the map frontend | DTO contracts frozen in Phase 1-3; frontend verify on staging; own-eyes screenshot check per Ben's policy | +| Worker thread memory with bigger priors | MAX_COL already caps trellis; priors loaded per-generation with LRU | +| Harness regressions hidden by leakage | all gates use the leakage-resistant stratifications | +| Live-paths visual regression | deploy → verify live-paths + main map manually (screenshots) before merge | +| VM resource load during rebuild/tune | reuse run_capped discipline: 4 cores, nice, memory guard (from the experiment) | + +## 8. Effort & sequencing (estimate) + +- Phase 0: 0.5 day (harness extension + baseline capture) +- Phase 1: 0.5–1 day (extract, no behavior change) +- Phase 2: 1 day (port + delete legacy single-observer core) +- Phase 3: 1–1.5 days (canonical multi-observer + DTO migration decision) +- Phase 4: 0.5 day per signal (flag + harness delta) +- Phase 5: 0.5–1 day (retune on prod gold set) +- Phase 6: 0.5 day (confidence + cleanup + docs) +Total: ~4–6 focused days, each phase independently deployable. Can be run as a +MissionDeck wave (agents per phase, local commits, no deploys) with Hermes +verifying the harness gates between phases — or direct, per Ben's preference. + +## 10. Ben's decisions (2026-08-03, binding) + +1. **All implementation on the ukmesh VM (192.168.100.105)** — nothing local. + Agents run via MissionDeck `codex@ukmesh` backend in git worktrees under + `/home/ben/worktrees/pathing-*` on that host; canonical repo untouched + (worktrees branch from HEAD 8d218c1; the single-repeater-coverage WIP in the + main checkout is NOT touched by this wave). +2. **Fallback red paths: REMOVED.** One set of paths, all blue. The unified + decoder's NULL_BASELINE handles unresolved hops (they stay unrendered or + flagged) — no fallback rendering mode. +3. **resolveMulti: canonical-path projection** (Hermes decision, Ben delegated): + lazy-style prefix-compatible observer grouping + ONE coherent Viterbi decode; + per-observer overlays projected from the canonical path. Kills the legacy + solve-then-stitch + permutation explosion. +4. **Execution: one MissionDeck agent wave** (staged: 2 foundation agents → + 3 parallel → 1 integration/tuning agent), as many agents as needed. Hermes + orchestrates, verifies gates between stages, merges; agents commit locally, + never push/deploy/restart services. +5. **Accuracy bar: the experiment's vit_src numbers** (97.27% route / 99.24% + hop test; ≥93% unseen corridors, ≥89% 13+ hops) via the extended harness. + +## 11. Wave status (2026-08-03) + +- Stage 1 (IN FLIGHT): pathing-core-extract (sol/xhigh) + pathing-eval-harness + (luna/max) on ukmesh worktrees. +- Stage 2 (QUEUED): beta single-observer port (sol/xhigh) | multi-observer + canonical + fallback removal backend (sol/xhigh) | frontend all-blue + (luna/max). +- Stage 3 (QUEUED): new signals (corridor/pos-trans/ITM) in rebuild.ts + + decoder (sol/xhigh), then weight tuning + confidence + cleanup (sol/xhigh). + + diff --git a/REPORT-pathing-experiment.md b/REPORT-pathing-experiment.md new file mode 100644 index 0000000..1cc1f1e --- /dev/null +++ b/REPORT-pathing-experiment.md @@ -0,0 +1,121 @@ +# UKMesh Pathing Algorithm Experiment — Final Report + +**Date:** 2026-08-03 · **Location:** ~/multibyte-exp/ on the Hermes VM +**Goal:** store all resolvable multibyte routes as ground truth, then build the +most accurate path-reconstruction algorithm possible from 1-byte hop hashes only. + +--- + +## 1. Ground-truth route store (complete) + +Source: 1,230,149 multibyte packet observations (30 days) from the ukmesh +TimescaleDB, via the 15432 SSH tunnel. + +- **75,625 fully-resolved routes** stored in `pathing-experiment/gold.duckdb` + — every hop uniquely resolvable (4/6-char prefix → exactly one positioned + node), known src + observer, consecutive hops ≤150 km, observer terminal hop + trimmed. 9,175 unique packets · 818 unique nodes · 440 sources · 20 observers. +- Node inventory: 13,244 nodes (10.5k with coords) + 19,118 nodes ever heard + as rx/src across all 5 months of history + 28,613 distinct path prefixes. +- Split by packet (zero leakage): train 52,452 / val 11,352 / test 11,821 routes. + +## 2. Task definition + +Each hop's *true* node is known (gold). The algorithm sees only: +the **first byte (2 hex chars)** of each hop's hash, src node, observer node, +and hop count. Candidate pool = every positioned node matching that prefix +(full universe, avg **37.3 candidates/hop**, all 256 prefixes occur). + +## 3. Algorithms compared (final holdout test, 11,821 routes) + +| algorithm | route acc | hop acc | +|---|---|---| +| random (floor) | 0.2% | 2.8% | +| greedy nearest-chain | 22.6% | 43.7% | +| greedy best-of-both-directions | 25.7% | 49.4% | +| prefix frequency argmax | 67.4% | 88.9% | +| positional frequency argmax | 71.2% | 90.2% | +| Viterbi + freq priors | 96.9% | 99.2% | +| Viterbi + observer shaping | 97.0% | 99.2% | +| **vit_src — Viterbi + freq + corridor interpolation + ITM (WINNER)** | **97.27%** | **99.24%** | +| Viterbi bidirectional | 96.8% | 99.1% | +| Viterbi joint multi-observer | 93.6% | 96.8% | + +## 4. Champion design — `vit_src` + +Viterbi over the candidate trellis (per-hop candidates from the 1-byte prefix), +with emissions and transitions summed from seven calibrated signals: + +**Emissions (per position):** +1. Positional prefix-frequency prior `log(1+count)` ×1.2 — which node usually + sits at this hop position for this prefix (train-derived) +2. Corridor-level position prior ×1.0 — (src, observer, position) frequency +3. Distance-to-observer shaping (÷80) — relay near the observer +4. **Corridor interpolation** (÷55) — hop i should lie near the point + `i/(N-1)` of the way from src to observer along the corridor; the single + most valuable addition for long unseen routes (+9 pp unseen corridors) +5. Multi-observer position anchors ×0.9 (when other observers of the same + packet heard this position directly) + +**Transitions:** +6. Learned hop-transition log-probs ×2.0 (global) + ×1.2 (position-conditional) +7. Distance decay (÷40) with hard 150 km hop cap +8. **ITM radio-viability bonus ×0.8** — pairs the production link model deems + radio-viable get a boost (+0.44 pp in controlled A/B; +0.06 pp overall test) + +Weights tuned by coordinate descent on a val subsample (baseline 97.50% → +97.93% subsample; 97.21% → 97.27% full test). + +## 5. Honest breakdown (test, champion) + +| ≤3 hops | =4 | 5-6 | 7-8 | 9-12 | **13+** | seen corridor | **unseen corridor** | +|---|---|---|---|---|---|---|---| +| 99.6% | 98.3% | 96.9% | 94.6% | 90.9% | **89.6%** | 97.3% | **93.3%** | + +Per-hop accuracy 99.24%. Remaining errors are almost exclusively **single-hop +1-byte prefix collisions** (two real nodes sharing the first byte, e.g. +`9D1A41` vs `9D924A`) — fundamentally unresolvable without the second byte or +more observers. That is the hard floor of the 1-byte task. + +## 6. What was tried and rejected (with evidence) + +- **LightGBM candidate scorer** (9.5M samples, elevation features): 97.0% vs + 97.4% — the hand-built priors already capture its signal; ML loses on unseen + corridors (86.4% vs 90.0%). Rejected. +- **Elevation transition penalty** |Δelev|: regressed every variant (raw + elevation deltas are the wrong model — hilltop→valley drops are normal; data + only 57% complete). Elevation kept as an ML feature only. Rejected. +- **Bidirectional Viterbi**: neutral-to-negative. Rejected. +- **Joint multi-observer decode** (longest route fixes shared positions): + 93.6% — forced fixes propagate rare errors; observer density too low in this + dataset (margin-gated version: 91-94%, still below single-observer). Rejected. + +## 7. Files + +- `01_build_gold.py` — gold route construction (resumable) +- `02_prepare.py` — train/val/test split + 1-byte degradation + candidate maps +- `03_algorithms.py` — all algorithms, tunable `WEIGHTS`, `run_capped.sh` runner +- `04_analysis.py` — per-length / seen-vs-unseen breakdowns +- `06_tune.py` — coordinate-descent weight tuner +- `pathing-experiment/` — gold.duckdb, exp.duckdb, candidates.pkl, ml models +- `ukmesh-multibyte.duckdb` — raw multibyte packets + nodes + heard + prefixes +- `itm_links.csv` — 20,363 ITM-viable pairs (from production link model) + +## 8. Production integration notes + +1. Port `vit_src` scoring (emissions 1-5, transitions 6-8) into + `backend/src/path-beta/resolver.ts`; weights are the config surface. +2. The corridor-level prior needs the (src, observer) pair — available in + packet headers; falls back to prefix-position priors for unseen corridors. +3. ITM bonus: fetch from `node_links` (`itm_viable`), refresh with the link + worker; bonus-only (never hard-gate — ITM misses real links). +4. Confidence: use the Viterbi per-position margin (already computed) as the + per-segment confidence for the live-paths colouring. + +## 9. Resources (VM crash follow-up) + +The 2026-08-03 VM crash coincided with sustained all-8-core LightGBM runs. +Since then every run is capped: `taskset -c 0-3` (4 cores), `nice -n 15`, +single process at a time, and a memory guard that kills the job if free RAM +drops below 2.5 GB. Peak measured during the full test run: ~300 MB / 1 core +per process; VM load stayed < 3. No further crashes. diff --git a/REVIEW-single-repeater-coverage.md b/REVIEW-single-repeater-coverage.md new file mode 100644 index 0000000..0f0858c --- /dev/null +++ b/REVIEW-single-repeater-coverage.md @@ -0,0 +1,193 @@ +# Review: single-repeater RF coverage plan + +Review date: 2026-08-02. Repository and running containers were inspected on the UKMesh VM. The review is read-only; no service, container, configuration, or output was changed. + +## Verdict + +**Revise before implementation.** The plan is directionally sound: a single-repeater raster can reuse HopReach's terrain-aware propagation path, and the existing frontend raster protocol can display an additional tile dataset. The per-scope block is a good mathematical template, but the proposed change is not a mechanical drop-in in the deployed configuration. + +Four plan claims need correction before coding: + +- In production, progressive mode leaves the whole-region DEM grid nil. The scope path gets a whole grid only because scope observation enables it; a copied `coverage.Raster(..., grid, ...)` call would therefore be unsafe in the current configuration. A node path should use the chunked DEM path or explicitly load a bounded grid. +- `coverage.WriteTiles` writes directly below its `outputDir`. `WriteTiles(cfg.outputDir, "coverage-node-...", ...)` would create `/data/output/coverage-node-...png`, not an Nginx-served `tiles/...` URL. +- Both the checked-in and running Nginx configuration allow only `tiles/standard|precision/-.png`; arbitrary `coverage-node-*` paths are not served. +- The standard-area and timing estimates are not supported by the geometry or live run. The current precision run is still only 27/54 tiles after several hours, so a benchmark is required before promising “tens of minutes.” + +The recommendation is to add a bounded, host-only/on-demand node job backed by a `--node` CLI primitive, with a unique node checkpoint/tier identity, explicit freshness/signature rules, and a separate node manifest or tightly bounded metadata index. Do not make the browser a compute trigger and do not add a nightly batch of all repeaters in the first release. + +## Validation findings (file:line) + +### 1. Per-scope coverage block and the single-site question + +The claimed template is present in `third_party/hopreach/cmd/hopreach/run.go:714-775`: + +- `run.go:727-731` gates on `scopeObservationEnabled`, then iterates known scopes. +- `run.go:733-743` filters `selected` into `scopeSites` and `scopePoints` using `repeaterInScope`, and skips an empty subset. +- `run.go:744-746` applies the existing freshness check for that scope. +- `run.go:748` calls `coverage.RasterBounds(scopePoints, rangeKm)`. +- `run.go:752` calls `coverage.Raster(engine, grid, scopeSites, scopeBounds, cfg.coverageImageWidth, cfg.propagation, cfg.coverageMaxAlpha, nil)`. +- `run.go:753` calls `coverage.WriteTiles(cfg.outputDir, "coverage-scope-"+scopeSlug(scopeName), scopeRaster, scopeBounds)`. +- `run.go:759-763` builds coverage metadata and assigns it to `m.ScopeCoverage[scopeName]`; `run.go:764-768` writes `meta.json`. + +The raster math is therefore mechanically reusable for one selected site: make `scopeSites` and `scopePoints` contain one validated repeater, then use the same bounds, raster, tile, and metadata operations. The production implementation is not mechanically identical, however: + +- The scope block is conditional on scope observation, while the requested node mode must work with `scope_observation.enabled: false` (`rf-coverage/config.ukmesh.yaml:23-28`). +- The whole-grid setup is conditional at `run.go:421-437`. With progressive coverage enabled and scope observation/calibration disabled, `needWholeStandardGrid` is false and `grid` remains nil. The CPU/GPU `Raster` path eventually dereferences the grid (`third_party/hopreach/internal/compute/compute.go:156-162,204-205`). The node path must use `RasterProgressiveChunked`/`MarginsChunked` or explicitly load a suitable grid. +- The node path needs its own freshness, checkpoint, metadata, and publication identity; it must not reuse the global `standard` or `precision` checkpoint names. + +### 2. Coverage and propagation signatures + +The relevant interfaces are: + +- `third_party/hopreach/internal/coverage/coverage.go:31-52`: `RasterBounds(points []Point, rangeKm float64) (propagation.Bounds, bool)` computes a padded geographic rectangle from the selected point set. +- `coverage.go:90-102`: `Raster(engine *compute.Engine, grid *demgrid.Grid, sites []propagation.Site, bounds propagation.Bounds, imageWidth int, p propagation.Params, maxAlpha uint8, progress func(done,total int)) *image.NRGBA`. +- `coverage.go:145-171`: `RasterSupersampledChunked` uses the chunked engine path, which is the relevant bounded-memory option for progressive node work. +- `coverage.go:190-197`: `WriteTiles(outputDir, baseName string, img *image.NRGBA, bounds propagation.Bounds) ([]Tile, error)`. +- `coverage.go:197-231`: tiles are named `--.png` and written directly under `outputDir`; this helper does not create `tiles/`. + +The best-server behavior is confirmed in `third_party/hopreach/internal/propagation/propagation.go:161-185` and `187-218`. For each output pixel, the code starts with negative infinity, evaluates candidate sites, and retains only the maximum margin. The row-indexed implementation at `propagation.go:196-215` likewise retains one best margin per pixel. Per-transmitter margins are not preserved, so merged whole-network tiles cannot be inverted into a repeater footprint. A single-site raster is valid, but it means “coverage from this transmitter alone,” not the transmitter's contribution to the merged best-server map. + +### 3. Configuration, skip logic, lock, and progressive signatures + +The deployed configuration is `rf-coverage/config.ukmesh.yaml:23-28,30-33,37-63,75-81`: + +- scope observation is disabled; +- the DEM cache is `/data/dem-cache` and the configured standard DEM zoom is 11; +- progressive output is enabled, with standard width 2000, precision width 6000, precision DEM zoom 13, supersample 2, and publication tile size 1024; +- `min_recompute_interval_hours` is 6 and the schedule is `17 2 * * *`. + +The global skip happens before fetching repeaters at `third_party/hopreach/cmd/hopreach/run.go:358-365`: if a complete `meta.json` is younger than the configured interval, the run exits unless `forceRecompute` is set. The CLI exposes only `-force`, `-force-all-tiers`, and `-prepare` (`third_party/hopreach/cmd/hopreach/main.go:34-38`); `-force` bypasses the global interval but does not make a node request exist. Tier freshness is separately checked at `run.go:634-644` and `third_party/hopreach/cmd/hopreach/output.go:170-185`; it is a UTC-day check, not an input/signature check. + +The singleton lock is acquired before the run at `main.go:52-60` and implemented as a nonblocking exclusive flock at `third_party/hopreach/cmd/hopreach/lock.go:9-33`. A node invocation must either queue behind a running job or return a visible busy result. Starting a second process and relying on a retry loop would create ambiguous user state and unnecessary pressure on the container. + +Progressive identity is more restrictive than the plan implies: + +- `third_party/hopreach/internal/coverage/progressive.go:24-24` permits tier names matching `^[a-z][a-z0-9_-]{0,31}$`, so a full 64-character pubkey cannot be used as a progressive tier name. +- `progressive.go:88-104` hashes model, bounds, zoom, image dimensions, supersampling, site list, and propagation parameters in `progressiveSignature`. +- `progressive.go:126-145` resets a checkpoint when the run ID, tier, signature, or completion state changes. +- `progressive.go:223-260` stores checkpoints as `checkpoints/.json` and tiles below `tiles/`. + +The signature correctly notices a changed site list, but it is safe for node jobs only if each node has a unique bounded tier/checkpoint namespace and a stable node-specific run ID. A generic `standard`/`precision` node job would collide with global work. A safe short hash or collision-checked slug may be used for paths; retain the normalized full pubkey as the metadata key. The global run ID and global `run.tiers` must not be overwritten by an independent node job. + +### 4. Nginx serving contract, including the running image + +The checked-in contract in `nginx.app.conf:75-95` is: + +- exact aliases for `/rf-coverage/meta.json` and `/rf-coverage/progress.json` (`nginx.app.conf:78-85`); +- one regex location at `nginx.app.conf:88-92` matching only `/rf-coverage/tiles/(standard|precision)/([0-9]+-[0-9]+\.png)` and aliasing to `/rf-coverage-data/output/tiles/$1/$2`; +- a 404 fallback for other `/rf-coverage/` paths at `nginx.app.conf:93-95`. + +I also inspected the active app container with `docker exec meshcore-analytics-app-ukmesh-1 nginx -T`. Its effective configuration has the same standard/precision numeric regex and 404 fallback; there is no image-side exception for node tiles. This was a read-only inspection. + +Consequently, the plan's “no changes expected” serving statement is wrong. `coverage-node-*` files are not served, and the current `WriteTiles` call would place them in the wrong directory even before Nginx matching is considered. The implementation needs a bounded path contract, for example `tiles/nodes///-.png`, plus a narrowly scoped Nginx regex and alias. The tile writer/metadata must emit exactly that path. Do not replace the allowlist with a broad wildcard: the current rule intentionally limits path shape and prevents arbitrary file exposure. + +### 5. Frontend data flow and popup location + +The frontend is data-driven for the existing global tiers: + +- `frontend/src/hooks/useRfCoverage.ts:37-57` models `meta.coverage` with only `standard` and `precision`; `useRfCoverage.ts:78-100` validates tile paths and derives available tiers. +- `useRfCoverage.ts:114-161` polls `/rf-coverage/meta.json` and progress every three seconds and uses `no-store` fetches. +- `frontend/src/components/Map/RfCoverageOverlay.tsx:21-43` builds URLs from metadata tile paths and selects `meta.coverage[tier]`; `:45-89` registers one generic raster dataset and displays it. +- `frontend/src/components/Map/rfCoverageRasterProtocol.ts:189-223` accepts arbitrary validated tile lists/bounds, but its public tier typing/max-zoom logic is currently only standard/precision. + +The natural popup action belongs in `frontend/src/components/Map/NodePopupContent.tsx:135-159`, alongside the existing repeater “Show LOS” action. The dock and popup props are assembled by `frontend/src/components/Map/MapLibreMap.tsx:1069-1100,1194-1279`, so that component must pass the node key and a coverage callback/state. Global overlay state currently lives in `frontend/src/App.tsx:133-136,192-203,623-628`; it will need a selected node dataset/state and a clear way to return to the global tier. `NodePopupContent` should show the action only for a valid repeater with coordinates, and should expose pending/available/stale/error states rather than implying that a click synchronously computes a raster. + +### 6. Backend lookup feasibility + +The actual file is `backend/src/api/hopreachCompatibility.ts` (not a top-level `api/hopreachCompatibility.ts`). It already has the required patterns: + +- internal-only protection is at `hopreachCompatibility.ts:81-94`; +- 64-hex pubkey validation is at `:149-157`; +- the reusable repeater/coordinate predicate is `:159-173`; +- the existing `GET /api/nodes/:pubkey/reach` route is `:305-326` and validates a single key before querying links. + +The router is mounted under `/hopreach` in `backend/src/index.ts:224-231`, and the reach route returns links, not a node record. A direct single-node lookup using the same predicate and a `public_key` equality condition would be straightforward if the calculator needs server-side freshness/coordinates. The browser already has the node feature's public key and coordinates (`frontend/src/hooks/useNodes.ts:21-41`, `frontend/src/components/Map/types.ts:17-35`), so a lookup is not necessary merely to draw a button. The internal `/hopreach` router should not be treated as a public browser compute endpoint. + +### 7. Live state + +The read-only command `docker exec meshcore-analytics-hopreach-1 cat /data/output/meta.json` showed only `coverage.standard` and `coverage.precision`; there is no `scope_coverage` or node-coverage collection. The live values were: + +- standard: 6/6 tiles, state `available`; +- precision: 27/54 tiles, state `computing`; +- run total: 33/60 tiles; +- top-level `complete`: `false`; +- fetched repeaters: 7071; in-region: 4380; active: 416; degraded: 592; silent: 3372; +- max search range: 77.53187284381539 km; frequency: 868 MHz. + +The precision timestamp in the metadata is not completion; the run state explicitly says `computing`. The live metadata confirms that node metadata and node tiles do not currently exist, and that precision cost cannot be assumed to be negligible. + +## Touch points (exact files + what changes) + +The following are the expected implementation touch points; this review does not make those changes. + +- `third_party/hopreach/cmd/hopreach/main.go:34-66`: add a validated `--node <64-hex-pubkey>` dispatch path. Keep it distinct from the global run and return a machine-readable busy/not-found/stale result. +- `third_party/hopreach/cmd/hopreach/run.go:358-463,528-610,634-775`: add node selection, coordinate/status validation, bounded site setup, node-specific publication, and node job state. Do not call the global skip path or mutate global tier state for a node request. Use a chunked raster path when the configured run does not load a whole DEM grid. +- `third_party/hopreach/cmd/hopreach/output.go:152-185,252-285,343-419`: define node coverage metadata, normalized-key/short-path identity, per-node freshness, retention, and atomic publication. Avoid making every node job rewrite an unbounded historical map in the main global manifest. +- `third_party/hopreach/internal/coverage/coverage.go:190-231`: either add a safe node-aware tile destination helper or use the progressive tile writer with a node-specific namespace. The existing `WriteTiles` output must not be assumed to satisfy the Nginx path contract. +- `third_party/hopreach/internal/coverage/progressive.go:24-35,88-104,126-145,223-305`: namespace node checkpoints/tiers with a <=32-character safe identifier and include the normalized key, node snapshot, and all raster inputs in the signature. Ensure a node job cannot resume or overwrite global `standard`/`precision` state. +- `third_party/hopreach/cmd/hopreach-shareapi/admin.go:37-91` and `.../main.go:234-238`: if an HTTP trigger is retained, extend the existing loopback-only admin control plane into a queue/coalescer for node jobs. Do not expose it through the public API or frontend without authentication, authorization, rate limits, and durable job status. +- `nginx.app.conf:75-95`: add a narrow node tile location/alias matching the chosen canonical path. Update path validation and metadata URLs together; retain the exact meta/progress aliases and 404 fallback. +- `frontend/src/hooks/useRfCoverage.ts:3-161`: model node manifests/status, node-specific revision values, and stale/pending/error states. Do not make the three-second global poll download thousands of repeated tile arrays indefinitely. +- `frontend/src/components/Map/RfCoverageOverlay.tsx:21-122` and `frontend/src/components/Map/rfCoverageRasterProtocol.ts:189-223`: allow one selected node dataset to replace the global source, keep the fixed source/layer IDs coherent, validate node paths, and support node tier/zoom metadata. +- `frontend/src/components/Map/NodePopupContent.tsx:135-159`, `frontend/src/components/Map/MapLibreMap.tsx:1069-1100,1194-1279`, and `frontend/src/App.tsx:133-136,192-203,623-628`: add the repeater action, pass node identity and callbacks, manage selected-node overlay state, and restore the global coverage view. +- `backend/src/api/hopreachCompatibility.ts:149-173,305-326`: optionally add a single-node details route using the existing key validation and repeater/coordinate predicate. Keep the route internal and do not use it as an unauthenticated compute trigger. +- `third_party/hopreach/Dockerfile:7,29,45-51`, `docker-compose.yml:553-580`, `rf-coverage/SOURCE-OFFER.md:3-17`, `rf-coverage/BENCHMARKS.md:1-15`, and `docs/rf-coverage-rollout.md:7-30,96-117`: update the public fork/tag, source/revision/license labels, benchmark evidence, image digest, and deployment/rollback documentation if the fork is changed. The release process requires immutable digest-pinned artifacts, not a mutable local tag. + +## Answers to the 6 open questions + +### 1. Exact touch points and signature safety + +The exact current template is `run.go:714-775`; the common interfaces are `coverage.go:31-52,90-102,190-231`. The signature machinery is conceptually suitable because it includes the site list and raster inputs, but it is not safe to reuse globally. Give each node job a unique safe namespace, include the normalized pubkey and a node-position/status snapshot in the input identity, and use a node-specific run ID/checkpoint. A changed position or site snapshot must invalidate the node output. Never use the global `standard`/`precision` checkpoint files for a node job. + +Also correct the grid assumption: in the deployed progressive configuration, the node path should use chunked DEM loading rather than pass the nil whole-region grid into `Raster`. + +### 2. Nginx location rule + +Yes, Nginx needs a change. The exact rule at `nginx.app.conf:88-92` accepts only `tiles/standard` or `tiles/precision` and a direct numeric filename. It will reject both `coverage-node-*` in the output root and a node subdirectory. + +Use a canonical, bounded path such as `tiles/nodes///-.png`, add an exact regex/alias for it, and make the tile writer and metadata emit that path. A full pubkey should remain a metadata key, not an unvalidated URL path. A short ID must be deterministic and collision-checked; do not use an arbitrary user-provided slug or a broad Nginx wildcard. + +### 3. On-demand trigger: CLI flag, HTTP endpoint, or queue + +Use a hybrid with clear ownership: `--node` is the execution primitive, and a loopback-only internal admin endpoint or operator command submits a job to a bounded queue. The existing `hopreach-shareapi` endpoint (`admin.go:37-91`) is already a local control-plane pattern, but its current `/admin/recompute` starts a full `-force` run, so it should not be copied as an unbounded node launcher. + +The queue must coalesce duplicate requests, expose queued/running/available/failed/busy states, and respect the singleton lock. If the global nightly run owns the lock, a node request should queue or return an explicit retryable busy response. Do not trigger computation directly from an unauthenticated browser request. Do not batch all 416 active repeaters nightly in the first version; the live precision job makes the resource risk too high. + +### 4. Freshness and silent repeaters + +Gate the default public/current-coverage request to repeaters with valid coordinates that are active or degraded under an explicit age policy. Exclude silent repeaters by default: the live snapshot has 3372 silent repeaters, and their positions may be stale. Degraded nodes may be included with a visible stale-data warning and a configurable maximum position age. An operator-only or explicitly labeled historical mode can permit silent nodes. + +Record the status/position timestamp used by the computation in the node metadata and include it in the signature. Do not silently return a fresh-looking tile for a stale position. + +### 5. `meta.json` growth + +Thousands of full node entries are not a good long-term shape for the current `meta.json`: the frontend downloads the whole document every three seconds (`useRfCoverage.ts:114-161`), and progressive writes already rewrite metadata during a run. A 416-entry on-demand map may be acceptable as a bounded first experiment if it contains compact index data and has a TTL/LRU cap, but it should not grow without bound or retain every historical node forever. + +Preferred design: keep global `meta.json` stable and publish a compact node index or per-node manifest under an explicitly served node path. If the first release keeps `node_coverage` in `meta.json`, impose a maximum count/age, publish only available tiers and compact tile references, and test payload size and update frequency. Old node tiles also need a retention/garbage-collection policy so metadata never points at missing files and disk usage cannot grow indefinitely. + +### 6. Frontend popup location + +Add the action in `frontend/src/components/Map/NodePopupContent.tsx:135-159`, next to “Show LOS” for repeater nodes. Wire it through `MapLibreMap.tsx:1069-1100,1194-1279` and manage selected-node coverage in `App.tsx:133-136,192-203,623-628`. Extend the hook and overlay rather than creating a second raster protocol: `useRfCoverage.ts:37-100` needs node metadata, and `RfCoverageOverlay.tsx:37-89` already registers a generic tile list/bounds dataset. + +The button should request or select a node job and show pending/available/stale/error states. It should not assume that a click immediately creates a tile, and it should provide a clear “back to network coverage” action because the overlay currently uses one fixed MapLibre source/layer (`RfCoverageOverlay.tsx:45-89`). + +## Risks + +- **Wrong terrain execution path.** Passing the nil production grid to `coverage.Raster` can fail. Loading a whole precision grid can exceed the container's memory budget; `third_party/hopreach/internal/compute/chunked.go:15-27` documents roughly 1.1 GB per padded zoom-13 tile at UK latitudes and several-GB whole-region behavior. Use chunked computation and benchmark it. +- **Overlapping global and node jobs.** The flock at `lock.go:9-33` is process-wide. A node job must be queued or explicitly rejected while a global job runs, and must not alter global checkpoints, global `meta.run`, or global completion state. +- **Partial publication.** A progressive node job can expose partial tiles. Publish a node manifest only after its required tier is complete, or make partial state explicit and ensure every listed file exists. Atomic metadata replacement and old-version retention are required for rollback. +- **Nginx/path exposure.** Broadening the location to arbitrary subpaths risks exposing files in the shared output volume. Keep node IDs canonical, bounded, and matched by an exact regex. +- **Identifier collisions and length.** A full pubkey is safe as a metadata key but is too long for a progressive tier name (`progressive.go:24` allows at most 32 characters). `coverage-node-` also needs a defined collision policy; “short” is not enough. A hash-derived ID with a reverse lookup in metadata is safer. +- **Stale node positions.** The backend's repeater predicate (`hopreachCompatibility.ts:159-173`) checks coordinates and role but does not exclude silent nodes. The UI and metadata must carry freshness rather than treating any coordinate as current. +- **Best-server semantics.** The output is a single-transmitter footprint, not per-transmitter attribution from the existing merged PNG. It should be labeled accordingly so users do not compare it as a contribution layer. +- **Compute estimate.** `RasterBounds` pads by `rangeKm/110.574` in latitude and by longitude at the selected latitude (`coverage.go:31-52`). At 77.53 km the full padded span is about 155 km north-south; “155x110 km” is not the resulting symmetric approximate footprint. The live standard run took about 22 minutes to become available for 4380 repeaters, while precision was still 27/54 after hours. A one-site run may be much cheaper, but “few minutes” and “tens of minutes” need measured 4-CPU/8-GiB benchmarks, including cold and warm DEM-cache cases. +- **Metadata and disk growth.** Per-node tile arrays, repeated three-second polling, partial precision outputs, and retained old files can become a storage and bandwidth problem. Add TTL/LRU, quotas, cleanup, and payload-size tests before batch use. +- **Trigger abuse.** A public “Show coverage” action can become a compute DoS if every click starts work. Require internal authorization, deduplication, per-node cooldowns, and a queue limit. +- **Release and licensing.** A fork change requires the new public tag/source offer and the AGPL-3.0 plus Commons Clause obligations documented in `rf-coverage/SOURCE-OFFER.md:3-17` and `third_party/hopreach/README.md:177-185`. The release must update source/revision OCI labels and publish the corresponding source before exposing the service. +- **Digest-pinned deployment.** The documented rollout requires immutable signed image digests and clean source/revision labels (`docs/rf-coverage-rollout.md:96-117`, `docs/runbook-release-rollback.md:1-19`). A local `:local` compose build or mutable tag is not sufficient for the production change. Preserve the existing global tile contract and keep old artifacts for rollback. + +## Recommended trigger mode + +Implement `--node ` as a one-shot calculator primitive, invoked by a small loopback-only queue/control endpoint in `hopreach-shareapi` or by an operator-side job submitter. Keep the nightly schedule for the global standard/precision run. The queue should enforce one HopReach process at a time, coalesce duplicate node requests, exclude silent nodes by default, use unique node checkpoint/manifest identities, and return a status that the popup can poll. + +This gives the frontend a safe workflow—request, wait, display—without exposing a compute endpoint or coupling node work to the global `meta.run`. It also leaves room to add a carefully capped active-node batch later, after benchmark, memory, retention, and release-artifact evidence exists. diff --git a/SPRING-INSTALL-AUDIT-2026-08-06.png b/SPRING-INSTALL-AUDIT-2026-08-06.png new file mode 100644 index 0000000000000000000000000000000000000000..5c9adbda290cf1c0eca0f18a1b3533fdb9683bcf GIT binary patch literal 317635 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

H9K`0$B^1QKv^~RGe$ZdF|e$9nSnuf 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', outdir); diff --git a/mosquitto/mosquitto.conf b/mosquitto/mosquitto.conf index 761ef02..3e0331f 100644 --- a/mosquitto/mosquitto.conf +++ b/mosquitto/mosquitto.conf @@ -11,16 +11,10 @@ log_type notice connection_messages true log_timestamp true -# Public/ingest WebSocket listener. +# WebSocket listener only (no plain TCP MQTT) listener 9001 protocol websockets -# Internal-only TCP listener used by the Prometheus exporter. Compose does not -# publish this port on the host, and the normal password/ACL policy still -# applies. -listener 1883 -protocol mqtt - allow_anonymous false password_file /mosquitto/config/passwd acl_file /mosquitto/config/acl