l5y
6775de3cca
Prune blank values from API responses ( #386 )
2025-10-18 20:16:14 +02:00
l5y
8143fbd8f7
Add full support to telemetry schema and API ( #385 )
...
* feat: auto-upgrade telemetry schema
* Ensure numeric metrics fallback to valid values
* Format data processing numeric metric lookup
2025-10-18 15:19:33 +02:00
l5y
cf3949ef95
Respect PORT environment override ( #384 )
2025-10-18 13:01:48 +02:00
l5y
32d9da2865
Add instance selector dropdown for federation deployments ( #382 )
...
* Add instance selector for federation regions
* Avoid HTML insertion when seeding instance selector
2025-10-18 10:53:26 +02:00
l5y
61e8c92f62
Harden federation announcements ( #381 )
2025-10-18 10:38:28 +02:00
l5y
d954df6294
Ensure private mode disables federation ( #380 )
2025-10-18 09:48:40 +02:00
l5y
30d535bd43
Ensure private mode disables chat messaging ( #378 )
2025-10-17 22:47:54 +02:00
l5y
d06aa42ab2
Respect FEDERATION flag for federation endpoints ( #379 )
2025-10-17 22:47:41 +02:00
l5y
ee05f312e8
Restrict instance API to recent updates ( #374 )
2025-10-17 22:17:49 +02:00
l5y
1898a99789
Delay initial federation announcements ( #366 )
2025-10-16 21:50:43 +02:00
l5y
3eefda9205
Ensure well-known document stays in sync ( #365 )
2025-10-16 21:43:11 +02:00
l5y
a6ba9a8227
Guard federation DNS resolution against restricted networks ( #362 )
...
* Guard federation DNS resolution against restricted networks
* Pin federation HTTP clients to vetted IPs
2025-10-16 21:15:34 +02:00
l5y
7055444c4b
Add federation ingestion limits and tests ( #364 )
2025-10-16 21:15:18 +02:00
l5y
81335cbf7b
Decouple messages API from node joins ( #360 )
2025-10-16 13:19:29 +02:00
l5y
926b5591b0
Harden instance domain validation ( #359 )
2025-10-16 10:51:34 +02:00
l5y
b2f4fcaaa5
Gracefully retry federation announcements over HTTP ( #355 )
2025-10-15 23:11:59 +02:00
l5y
dc2fa9d247
Recursively ingest federated instances ( #353 )
...
* Recursively ingest federated instances
* Keep absent is_private nil during signature verification
2025-10-15 21:35:37 +02:00
l5y
a32125996c
Remove federation timeout environment overrides ( #352 )
2025-10-15 20:04:19 +02:00
l5y
db7b67d859
Improve federation instance error diagnostics ( #350 )
2025-10-15 18:35:22 +02:00
l5y
49f08a7f75
Harden federation domain validation and tests ( #347 )
...
* Harden federation domain validation and tests
* Preserve domain casing for signature verification
* Forward sanitize helper keyword argument
* Handle mixed-case domains during signature verification
2025-10-15 18:14:31 +02:00
l5y
b2d35d3edf
Handle malformed instance records ( #348 )
2025-10-15 17:08:24 +02:00
l5y
03b5a10fe4
Add LoRa metadata fields to nodes and messages ( #331 )
...
* Add LoRa metadata fields to nodes and messages
* Filter numeric SQLite keys from message rows
2025-10-14 14:51:28 +02:00
l5y
ffad84f18a
Ensure frontend reports git-aware version strings ( #321 )
...
* Ensure frontend reports git-aware version strings
* Keep footer fixed across viewport widths
2025-10-13 16:26:57 +02:00
l5y
dee6ad7e4a
Refine environment configuration defaults ( #318 )
2025-10-13 14:06:14 +02:00
l5y
ea9c633eff
Fix legacy configuration migration to XDG directories ( #317 )
...
* Handle legacy config migration for XDG assets
* Ensure legacy key migration precedes identity load
* Apply rufo formatting to identity module
2025-10-13 14:02:17 +02:00
l5y
9c73fceea7
Adopt XDG base directories for app data and config ( #316 )
...
* Support XDG base directories
* Keep Docker MESH_DB on persistent volume
2025-10-13 12:29:56 +02:00
l5y
d66b09ddee
Ensure APIs filter stale data and refresh node details from latest sources ( #312 )
...
* Ensure fresh API data and richer node refresh details
* Refresh map markers with latest node data
2025-10-13 10:54:47 +02:00
l5y
00444f7611
test: expand config and sanitizer coverage ( #303 )
2025-10-12 14:41:20 +02:00
l5y
ee904633a8
Handle CRL lookup failures during federation TLS ( #299 )
2025-10-12 09:56:53 +02:00
l5y
772c5888c3
Fix ingestor debug timestamps for structured logging ( #296 )
2025-10-12 09:40:57 +02:00
l5y
f04e917cd9
Add Apache license headers to missing sources ( #297 )
2025-10-12 09:38:04 +02:00
l5y
e328a20929
Fix IPv6 instance domain canonicalization ( #294 )
2025-10-12 09:33:03 +02:00
l5y
aba94b197d
Handle federation HTTPS CRL verification failures ( #293 )
2025-10-12 09:22:54 +02:00
l5y
80f2bbdb25
Adjust federation announcement cadence ( #292 )
2025-10-12 09:08:50 +02:00
l5y
522213c040
Restore modular app functionality ( #291 )
...
* Restore modular app functionality
* Fix federation thread settings and add coverage
* Use Sinatra set for federation threads
* Restore 41447 as default web port
2025-10-12 08:54:11 +02:00
l5y
58998ba274
Refactor config and metadata helpers into PotatoMesh modules ( #290 )
2025-10-11 23:19:25 +02:00
l5y
4ad718e164
Update default site configuration environment values ( #288 )
2025-10-11 21:20:36 +02:00
l5y
73bdd809bd
Normalize INSTANCE_DOMAIN configuration to require hostnames ( #280 )
...
* Ensure INSTANCE_DOMAIN configuration uses hostname
* Define ip_from_domain before use
2025-10-11 19:39:05 +02:00
l5y
2240be1f2d
Improve instance domain detection logic ( #278 )
2025-10-11 18:22:50 +02:00
l5y
a048a83c6c
Implement federation announcements and instances API ( #277 )
2025-10-11 18:01:08 +02:00
l5y
4ef1e29034
Fix federation signature handling and IP guard ( #276 )
...
* Fix federation signature handling and IP guard
* Avoid defaulting isPrivate before signature verification
* Normalize instance domain host handling for restricted IP check
* ignore web app credentials
---------
Co-authored-by: l5yth <d220195275+l5yth@users.noreply.github.com >
2025-10-11 17:39:52 +02:00
l5y
678af5e55b
Add configurable instance domain with reverse DNS fallback ( #272 )
...
* Add instance domain resolution with reverse DNS fallback
* run rufo
---------
Co-authored-by: l5yth <d220195275+l5yth@users.noreply.github.com >
2025-10-11 12:21:55 +00:00
l5y
16e1304ded
Add comprehensive RDoc comments to Ruby helpers ( #254 )
2025-10-07 08:53:39 +02:00
l5y
6660986211
Add tests for helper utilities and asset routes ( #243 )
...
* test: expand coverage for helpers and assets
* Adjust failing helper and asset specs
* Adjust specs for fallback node lookup and missing logo
2025-10-07 07:07:23 +02:00
l5y
09a2d849ec
Improve live node positions and expose precision metadata ( #231 )
...
* Fetch latest node positions and precision metadata
* Stop showing position source and precision in UI
* Guard node positions against stale merges
2025-10-05 23:08:57 +02:00
l5y
2a65e89eee
Add neighbor info ingestion and API endpoints ( #218 )
...
* Add neighbor info ingestion and API support
* Fix neighbor spec and add fixture
* run black
* run rufo
2025-10-05 12:35:13 +02:00
l5y
5ac5f3ec3f
Update node last seen when events are received ( #212 )
...
* Update node last seen timestamps from event receive times
* run rufo
* fix tests
2025-10-04 21:11:16 +02:00
l5y
d4a27dccf7
Add telemetry API and ingestion support ( #205 )
...
* Add telemetry ingestion and API support
* Flatten telemetry storage and API responses
* Fix telemetry insert placeholder count
* Adjust telemetry node updates
* run black
* run rufo
2025-10-04 18:28:18 +02:00
l5y
74c4596dc5
Add private mode to hide chat and message APIs ( #204 )
...
* Add private mode to hide chat and message APIs
* run rufo
2025-10-04 09:36:43 +02:00
l5y
ff06129a6f
Update node last seen when ingesting encrypted messages ( #198 )
...
* Update node last seen for encrypted messages
* run rufo
2025-10-03 10:59:12 +02:00