gadgethd
c6a8813fc3
feat: packet_decryptions side table + feed join for historical decryption
...
- migration 035: append-only decryptions table (avoids TimescaleDB hypertable
UPDATE scans which seq-scan every chunk)
- backfillDecrypt: two-phase (materialised candidates + keyset batches),
DISTINCT ON packet_hash with upper(raw_hex) to handle case-variant copies,
resumable/idempotent
- feed queries COALESCE(payload _summary, decryptions summary)
- 90-day type-5 coverage: 3.23M/7.0M packets decrypted (46%)
2026-08-06 01:29:32 +00:00
gadgethd
61fdcd9d11
feat: first-class MeshCore channel decryption
...
- channelRegistry: 39 validated channel secrets committed as the service
default (Public + 38 community/hashtag channels recovered via the
derivation audit); MESHCORE_CHANNEL_SECRETS env appends on top
- shared buildSummary/identifyChannel (single implementation for ingest
and offline tools)
- tools/backfillDecrypt: keyset-paginated retroactive decryption of the
stored raw_hex corpus (idempotent, resumable)
- feed: channel scope sidebar now lists every decrypted channel
2026-08-06 01:00:05 +00:00
gadgethd
f6f8290c70
Color live paths by packet identity and extend TTL
2026-08-04 11:38:49 +01:00
gadgethd
c853dd6bde
fix(api): declare slow-mode path contracts
2026-08-04 11:21:45 +01:00
gadgethd
ae93d2ace4
merge: deploy pathing slow mode and held refinement
2026-08-04 11:12:32 +01:00
gadgethd
5dd15d94c1
feat(pathing): add physics gates and held-path refinement
2026-08-04 11:04:04 +01:00
gadgethd
469c84ed13
feat(pathing): slow-mode packet resolution — wait out propagation window
...
Backend: schedule ONE final multi-observer resolution per path-bearing
packet after the propagation window closes (default 60s, calibrated on
real first->last observer spread p50 11s / p95 34s / p99 50s; median 17
observers per packet). The final runs with the COMPLETE observer set and
pushes into the resolve cache after invalidation, so the next API read
serves the full-propagation answer. mode=slow on /path-beta/resolve-multi
returns 202 {status:pending, remainingMs} while inside the window; new
/path-beta/slow-mode status endpoint; observability table
path_slow_resolutions (migration 034). Env knobs:
PATH_SLOW_MODE_ENABLED / PATH_SLOW_MODE_WINDOW_MS / PATH_SLOW_MODE_MIN_HOPS
/ PATH_SLOW_MODE_PENDING_MAX. Best-effort: restart loss is harmless.
Frontend: pinned packets resolve in slow mode (bounded 202 retry), local
path renders meanwhile, upgraded when the final lands. Live feed unchanged.
Tests: 4 new slowMode unit tests (dedupe, disable, bound, window timing).
Backend build clean, 257/258 (1 pre-existing workerPool timing flake on
base too); frontend build clean, 74/74.
2026-08-04 10:41:09 +01:00
gadgethd
7bcabcc426
fix(map): keep live path arcs above terrain
2026-08-04 03:07:37 +01:00
gadgethd
262a8a2515
fix(map): bind live paths to resolved packets
2026-08-04 02:12:16 +01:00
gadgethd
d7e5b0ff92
fix(map): stream hop animation along stable arcs
2026-08-04 01:50:14 +01:00
gadgethd
bcaa35fd27
fix(map): remove inferred nodes and restore historic hops
2026-08-03 22:47:50 +01:00
gadgethd
209989832e
fix(map): reduce live-path line TTL to 5s
2026-08-03 22:07:33 +01:00
gadgethd
a76ab1e16b
fix(map): terrain-aware live paths + airborne hop marker
2026-08-03 22:00:38 +01:00
gadgethd
f103029af7
fix(map): never shift the map on node selection
2026-08-03 21:39:43 +01:00
gadgethd
884e2cfa40
test(map): update TTL assertion to 15s
2026-08-03 21:13:03 +01:00
gadgethd
143bc97100
fix(map): reduce live-path line TTL to 15s
2026-08-03 21:10:06 +01:00
gadgethd
5ba192856e
fix(map): retain branched live paths
2026-08-03 20:42:50 +01:00
gadgethd
2d740ec07c
fix(map): one-click node info — remove center-snap, enlarge click hitbox
2026-08-03 20:14:22 +01:00
gadgethd
bca8219044
chore: ignore local tokensave index
2026-08-03 15:13:18 +01:00
gadgethd
457eb77cbb
fix(pathing): expose canonical path metadata in public DTOs
2026-08-03 15:13:11 +01:00
gadgethd
b2c46f7103
pathing: restore champion evidence in lazy decoder
2026-08-03 15:13:04 +01:00
gadgethd
1464e94075
feat(frontend): render canonical blue paths
2026-08-03 15:12:56 +01:00
gadgethd
5766db10c3
Extend pathing accuracy baseline across resolvers
2026-08-03 15:12:46 +01:00
gadgethd
76bd31371f
refactor(pathing): port beta jobs to shared decoder
2026-08-03 15:12:41 +01:00
gadgethd
bc1cf1b071
refactor(pathing): extract shared Viterbi decoder
2026-08-03 15:12:35 +01:00
gadgethd
c430ab5693
fix: quote node-tiles nginx regex (unquoted {24} broke config parse)
2026-08-03 15:12:18 +01:00
gadgethd
9b5d378f1a
feat: add on-demand repeater RF coverage
2026-08-03 15:12:10 +01:00
gadgethd
7ccff988d4
fix: retain concurrent live paths through TTL
2026-08-03 15:12:05 +01:00
gadgethd
693b990001
fix: animate live map paths as aerial arcs
2026-08-03 15:12:05 +01:00
gadgethd
133a2eefca
fix: reconnect worker DB on InterfaceError; rate-limit error logging
2026-08-03 15:12:05 +01:00
gadgethd
325f30cbc0
feat: animate live paths as 3D arcs
2026-08-03 15:12:05 +01:00
gadgethd
3c631e8704
Merge pull request #37 from gadgethd/agent/enable-rf-3d-terrain
...
Enable RF coverage with 3D terrain
2026-08-02 20:52:28 +01:00
gadgethd
49efd69b1e
enable RF coverage with 3D terrain
2026-08-02 20:39:15 +01:00
gadgethd
3876b562b3
Merge pull request #36 from gadgethd/agent/fix-rf-terrain-artifacts
...
Fix RF coverage terrain rendering artifacts
2026-08-02 19:44:54 +01:00
gadgethd
1e7cd3bbff
fix RF coverage terrain artifacts
2026-08-02 19:31:38 +01:00
gadgethd
e57f463146
Merge pull request #35 from gadgethd/agent/fix-rf-overlay-load-race
...
Fix RF overlay initial load race
2026-08-02 19:06:15 +01:00
gadgethd
f808298dfd
fix RF race test on mobile
2026-08-02 18:52:54 +01:00
gadgethd
31dfe37b1f
fix RF overlay initial load race
2026-08-02 18:49:03 +01:00
gadgethd
708d07288c
Merge pull request #34 from gadgethd/agent/fix-release-compat-mounts
...
fix: mount live data in compatibility probe
2026-08-02 18:04:21 +01:00
gadgethd
2dca6cf0df
fix: mount live data in compatibility probe
2026-08-02 17:51:33 +01:00
gadgethd
80a511faed
Merge pull request #33 from gadgethd/agent/harden-hopreach-release
...
fix: harden HopReach release image
2026-08-02 17:41:44 +01:00
gadgethd
09366e7dec
fix: harden HopReach release image
2026-08-02 17:27:48 +01:00
gadgethd
94799df048
feat: integrate HopReach RF coverage and reliability upgrades ( #23 )
...
Deploy the optimized, accuracy-gated HopReach RF pipeline and native progressive map layer after all CI, performance, full-stack, mobile, and secret-scan gates passed.
2026-08-02 17:05:01 +01:00
gadgethd
ec2d32c25c
ci: handle finite backfill worker in smoke test
2026-08-02 16:47:37 +01:00
gadgethd
864a2b20cd
fix: reserve Compose proxy addresses
2026-08-02 16:32:28 +01:00
gadgethd
89041b6632
ci: use valid synthetic reloader token
2026-08-02 16:17:51 +01:00
gadgethd
6479529106
perf: vendor optimized HopReach release
2026-08-02 15:59:39 +01:00
gadgethd
c0f81ff0c8
ci: avoid Mosquitto password update crash
2026-08-02 15:28:51 +01:00
gadgethd
6a42de3e0b
ci: stabilize deployment gates
2026-08-02 15:15:13 +01:00
gadgethd
c652fa30df
ci: allow documented public MeshCore key
2026-08-02 14:22:53 +01:00