59 Commits
Author SHA1 Message Date
Enot (ded) Skelly 99d7eb0bab feat: add node stale/delete config
closes: #93
2026-07-24 13:09:51 -07:00
Enot (ded) Skelly 8e2798612b feat: add clock drift tracking
closes #71
2026-07-23 13:34:41 -07:00
MrAlders0n 0afba79b02 perf(paths): split path hash resolution by prefix width
the CASE predicate forced postgres to replan every call; per-width queries reuse a cached plan on the (iata, prefix_n) indexes
2026-07-20 09:01:51 -07:00
Enot (ded) Skelly dfef16435c feat(db): change to sqlc Querier in Store
this generates an interface for our sqlc methods and
changes the db Store to hold that instead in preparation
for mocking and integration tests
2026-06-15 11:13:39 -07:00
Enot (ded) Skelly 2333468f92 feat(traces): include raw path hashes as well as resolved
closes #43
2026-06-09 08:31:04 -07:00
Enot (ded) Skelly cda4905815 docs: update SPDX license lines 2026-06-08 16:08:39 -07:00
Enot (ded) Skelly 14cb9e6e2d docs: add APGL3 license 2026-06-08 15:46:01 -07:00
Enot (ded) Skelly 610b941afb feat: include snr in trace route hops
closes: #43
2026-06-06 13:30:59 -07:00
Enot (ded) Skelly f0c57fde45 add traces endpoint 2026-06-05 15:20:53 -07:00
Enot (ded) Skelly a943660778 rename to beacon 2026-06-05 08:10:43 -07:00
Enot (ded) Skelly 7b79db1f3f update comments and readme after refactor
also typo bug on field in ListNodes and GetNode store functions
2026-06-04 14:38:25 -07:00
Enot (ded) Skelly 3f4c26b7a5 refactor db package
layout and organization only
2026-06-04 13:50:33 -07:00
Enot (ded) Skelly ec7cf67a10 add trace route resolution
packet details now includes resolved route
2026-06-04 11:58:45 -07:00
Enot (ded) Skelly 594cd7281e add scope stats api endpoint 2026-06-04 11:17:58 -07:00
Enot (ded) Skelly 1e5ccc6e50 add filter by scope to messages
also adds the multi iata filter from other endpoints
for messages now on both routes
2026-06-04 11:07:54 -07:00
Enot (ded) Skelly fcc7bb1b23 add transport scopes
new config for transport scope keys seeded to db

new transport keystore to lookup matching keys and tag
- packets with scope key
- nodes with default scope
- observers with all supported scopes it forwards

allow filtering by region scope key on: packets, nodes, observers
2026-06-04 10:32:03 -07:00
Enot (ded) Skelly cba1690470 add region filter to observers 2026-06-03 15:07:36 -07:00
Enot (ded) Skelly 67e60de76f add region filter to nodes 2026-06-03 14:59:26 -07:00
Enot (ded) Skelly a49c64b4b5 add region filtering to packets 2026-06-03 14:37:18 -07:00
Enot (ded) Skelly 8c71277de8 add radio-presets stats 2026-06-03 13:56:31 -07:00
Enot (ded) Skelly 49558c6dd0 add radio preset view
move refresh for materialized views into helper and call at boot
2026-06-03 13:46:44 -07:00
Enot (ded) Skelly 984a49deb1 feat: propagation time 2026-06-03 11:38:38 -07:00
Enot (ded) Skelly 3182d91bc1 feat: expand flat packet fields
nested fields with raw data for pathlength, packet
header and include transport codes
2026-06-03 10:54:26 -07:00
Enot (ded) Skelly 335ff9662e add path resolution 2026-06-02 16:26:32 -07:00
Enot (ded) Skelly beadf5dc62 feat: allow filter by not supporting multibyte path/trace
depends on path resolution so will not return true yet for any nodes
2026-06-01 16:23:56 -07:00
Enot (ded) Skelly e3084ce444 feat: add lastheard TS for node IATAs 2026-06-01 15:42:28 -07:00
Enot (ded) Skelly 8addb401cc feat: add radio params to node summaries
observers and nodes now include Radio which is in the
format FreqMhz,BWKhz,SF (910.525,63.5,7)
2026-06-01 14:54:01 -07:00
Enot (ded) Skelly bff849e20f feat: add observer status to nodes
IsObserver and ObserverID in summary and details
2026-06-01 10:44:10 -07:00
Enot (ded) Skelly cb39913e40 fix: packet observation count
uses actual rows for packet observations for count, no
more counter
2026-06-01 10:20:14 -07:00
Enot (ded) Skelly 0e82f8adbf api: packet: split header and payload 2026-05-29 12:16:23 -07:00
Enot (ded) Skelly 8a57824889 api: nodes: include iata 2026-05-29 11:35:12 -07:00
Enot (ded) Skelly 2bb602071a include observation count for packets in ws event 2026-05-29 11:17:30 -07:00
Enot (ded) Skelly 2597192e89 add observation count to messages 2026-05-29 11:02:03 -07:00
Enot (ded) Skelly e24eac4377 fix: messy *Store ListChannels comment 2026-05-29 10:49:33 -07:00
Enot (ded) Skelly 5bd820e0c1 add materialized view refresh timers 2026-05-28 14:15:31 -07:00
Enot (ded) Skelly 71f5cbae3b add stats api 2026-05-28 13:07:22 -07:00
Enot (ded) Skelly 203c5f1b2f add packets api 2026-05-28 12:22:49 -07:00
Enot (ded) Skelly 5763346a34 add search by name to observers
search if name includes {name}
make iata case-insensitive as well
2026-05-28 10:50:21 -07:00
Enot (ded) Skelly e1b6761168 add nodes api 2026-05-28 10:40:44 -07:00
Enot (ded) Skelly 90405bd07f breaking: add pagination
this adds pagination so the returned format changes to
include results as well as a bool for hasMore and the
cursor if any
2026-05-28 09:47:11 -07:00
Enot (ded) Skelly c832952b3f add observer heard adverts api 2026-05-28 09:25:23 -07:00
Enot (ded) Skelly 798f3569a4 add observer tele api 2026-05-28 08:53:38 -07:00
Enot (ded) Skelly 96ea0326b4 add telemetry and packet retention
adds insert telemetry for observers in ingestion

adds new config for observer telemetry, moves
packet retention into config for consistency with
defaults on load

adds cleanup for both packets and observer telemetry
2026-05-27 12:27:57 -07:00
Enot (ded) Skelly 286d633da9 add observer broker details
now observer brokers listed include last seen and last
packet times
2026-05-27 10:36:32 -07:00
Enot (ded) Skelly ab6e73a189 fix: wrong time formats 2026-05-26 14:59:58 -07:00
Enot (ded) Skelly 5b6b86d252 fix: ws dup channel msg
previously emitting every observation of a message like
with raw packets, but messages only need one event
2026-05-26 13:49:18 -07:00
Enot (ded) Skelly abf209c6c1 add iata filter to messages and channels
also small bugfix returning multiple observations of
the same message when querying messages
2026-05-26 12:43:44 -07:00
Enot (ded) Skelly 2227e1a085 add partial observer api
list and single get, tele and status tbd
2026-05-26 12:18:03 -07:00
Enot (ded) Skelly 63c0ff37e1 fix issue with db on conflict
postgress doesn't like that, so two queries
2026-05-26 11:17:38 -07:00
Enot (ded) Skelly 9b242583d9 add messages enpoints
messages at /channels as well as generic /messages
2026-05-25 16:01:01 -07:00