Commit Graph
104 Commits
Author SHA1 Message Date
Enot (ded) Skelly 9f6046586f chore(tests): add node type/name helper test 2026-06-08 13:30:04 -07:00
Enot (ded) Skelly dab8f6e6b3 feat(ws): add regionSlugs support to subscribe scope 2026-06-08 13:24:35 -07:00
Enot (ded) Skelly bd605c8565 chore(tests): add tests for hub/scopeMatches 2026-06-08 13:10:39 -07:00
Enot (ded) Skelly 4147a93e8b feat(observers): add telemetry bucketing to rest api
closes #37
2026-06-08 12:32:22 -07:00
Enot (ded) Skelly cace46b004 feat(ingest): status and nodeUpdate events on par with summary analogies
observer status updates are now at data parity with
observer summary and node update events are at data
parity with node summaries

closes #38
2026-06-08 12:17:16 -07:00
Enot (ded) Skelly fef8c8d7b6 docs: improve reader interface comment readability 2026-06-08 11:47:38 -07:00
Enot (ded) Skelly 149452f066 feat(routes): add resolved hop nodes to known routes API
closes #44
2026-06-08 11:30:26 -07:00
Enot (ded) Skelly 68c254ce04 feat: add observation count to routes 2026-06-08 10:59:46 -07:00
Enot (ded) Skelly 32e6e9939a feat: cross iata routes
adds cross iata route finding

closes #42
2026-06-08 10:30:49 -07:00
Enot (ded) Skelly 7d25b8480f feat: node neighbors
limited to repeaters and room servers

stores high confidence matches from the nodes advert
packet path first hops
2026-06-08 09:36:20 -07:00
Enot (ded) Skelly 533225b46a hack: use server time for suspicious timestamps
i don't like it but multiple observer softwares are
sending the heard at timestamp with time zone errors
when it should be unix epoch ms
2026-06-08 08:20:03 -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 5247e4c3a8 fix: capture node preset only on 0 hop
previously could be observed after a bridge node
2026-06-06 13:18:04 -07:00
Enot (ded) Skelly c792029d3d fix: routes pagination cursor
closes #41
2026-06-06 11:14:13 -07:00
Enot (ded) Skelly 65cb8c9d61 add routes api
any route observer where all hops are high confidence
are now stored and available at /routes

you can also search for a src dest route and it will
return any recored route subset that can link the src
and dest hash
2026-06-05 15:57:08 -07:00
Enot (ded) Skelly f0c57fde45 add traces endpoint 2026-06-05 15:20:53 -07:00
Enot (ded) Skelly 8b23f8a4a2 change: channel messages descending
this changes channel messages fetched over the api to
return newest first so users can fetch back through time
2026-06-05 12:40:47 -07:00
Enot (ded) Skelly ae14d948d0 add scopes api 2026-06-05 12:31:35 -07:00
Enot (ded) Skelly 588b3705c9 add packet and message backfill api
/packets/backfill, /messages/backfill

both take afterId and limit. the id is the message or
packet observation last received to backfill after
2026-06-05 12:05:24 -07:00
Enot (ded) Skelly 882067455d add scope to ws packet events 2026-06-05 11:09:52 -07:00
Enot (ded) Skelly fdbcad28d8 add decrypted channel msg to packet details
also caught a bug where we never set the packet as
being decrypted even when it had been
2026-06-05 11:06:02 -07:00
Enot (ded) Skelly 7aecf2b6b9 fix formatting
allegedly
2026-06-05 10:32:00 -07:00
Enot (ded) Skelly 9a1b1d27ee add very basic tests and action
includes action for build. plus tests, fmt and vet
2026-06-05 10:26:49 -07:00
Enot (ded) Skelly a943660778 rename to beacon 2026-06-05 08:10:43 -07:00
Enot (ded) Skelly b72ce41606 add iata ingest filter
generated code, reviewed and tested

this adds an optional lookup table for allowed IATA based on either country,
conintent or both. if the IATA is in either it is allowed.

gives operators the option to consume from global mqtt brokers but filter
to their area of interest
2026-06-04 15:24:34 -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 4425e3ffa2 refactor ingest package 2026-06-04 14:29:25 -07:00
Enot (ded) Skelly a9fc1ac147 refactor api package 2026-06-04 14:10:49 -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 42e455bd00 add more broker connection timeout and retry defaults 2026-06-03 14:05:58 -07:00
Enot (ded) Skelly 8c71277de8 add radio-presets stats 2026-06-03 13:56:31 -07:00
Enot (ded) Skelly fa12149151 fix: typo in parsedAnonReq tag 2026-06-03 13:09:27 -07:00
Enot (ded) Skelly 7c89b509a9 fix: update observer broker on status as well as packet 2026-06-03 12:51:43 -07:00
Enot (ded) Skelly ea5c28bff9 fix: include SNR in traces 2026-06-03 12:47:36 -07:00
Enot (ded) Skelly 984a49deb1 feat: propagation time 2026-06-03 11:38:38 -07:00
Enot (ded) Skelly ca18981b7f feat: add expanded pathlength and raw for all payloads 2026-06-03 11:06:46 -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 c53d891366 fix: advert sig, flags and type
change type to have both value and string
return signature and flags byte
2026-06-03 10:05:57 -07:00
Enot (ded) Skelly 153a8cb7cc fix: packet payload filter for request (0) 2026-06-03 09:42:44 -07:00
Enot (ded) Skelly f4b1633b91 fix: return all payloads
this returns all parseable payload fields

also fix for lat/lon being stored wrong
2026-06-03 09:13:19 -07:00
Enot (ded) Skelly fad1a52b44 fix: don't default to observer pubkey in packets 2026-06-03 08:05:02 -07:00
Enot (ded) Skelly 831b12452f fix: group txt invalid utf-8
strips invalid utf-8 from channel message and senders to
prevent errors and no upsert
2026-06-02 16:29:17 -07:00
Enot (ded) Skelly 335ff9662e add path resolution 2026-06-02 16:26:32 -07:00
Enot (ded) Skelly c148472502 feat: add advert, anon_req payload to packets
just adds the decoded payload data and returns in the rest
api and when the packet is sent over ws
2026-06-02 15:33:33 -07:00