Ryan Gregg
5e5ab7db4d
Keep overheard packet traffic out of the chat render path
...
Typing in a conversation got progressively slower as its history grew.
The cause was not the input: every packet the node overhears was stored
in App state, so each one re-rendered the whole tree, including the
un-memoized MessageList. That cost scales with history length, and on a
busy mesh it saturated the main thread so keystrokes queued behind it.
Measured in Chromium with the real components, cost per overheard packet:
history before after
50 7.3ms ~0ms
500 48.5ms ~0ms
1000 97.7ms ~0ms
2000 228.4ms ~0ms
The packet stream now lives in a small external store that views subscribe
to individually, so only the map, visualizer, raw feed, and cracker re-render
when a packet arrives, so the chat view is no longer along for the ride.
This also retires useRawPacketStatsSession, whose session state was App
state for the same reason.
2026-07-25 12:32:14 -07:00
Jack Kingsman
9fc343c4fd
Add telemetry CSV export. Closes #334 .
2026-07-21 12:06:52 -07:00
Jack Kingsman
6f743446b0
Add customizable date binning on map. Closes #330 .
2026-07-21 11:54:09 -07:00
Jack Kingsman
bc22f537d9
Add packet analyzer launch to visualizer feed. Closes #328 .
2026-07-21 11:42:34 -07:00
Jack Kingsman
d2e3b05a38
Add hop width bit display display. Closes #323 .
2026-07-10 15:34:12 -07:00
Jack Kingsman
5da6e19c9b
Add repeater region discover
2026-07-10 15:00:14 -07:00
Jack Kingsman
ed7954552d
Merge pull request #322 from jkingsman/alternate-repeater-detail-fetch
...
Try using direct admin-binary fetch
2026-07-10 12:49:27 -07:00
jkingsman
6f21a6c364
Maybe we actually fixed the flaky test this time
2026-07-09 17:08:32 -07:00
jkingsman
6c977f9108
Add repeater region display. Closes #309 .
2026-07-09 16:37:14 -07:00
jkingsman
387c9b0e0a
Add packet search to raw feed. Closes #320 .
2026-07-09 14:56:31 -07:00
jkingsman
ee32a266db
Try using direct admin-binary fetch
2026-07-09 14:33:59 -07:00
Jack Kingsman
0633ab724c
Misc bugs around dm region scope + scope display, and flood-scope leak
2026-07-08 20:11:57 -07:00
Jack Kingsman
f9b991b1a8
Fix giphy rendering issue. Closes #291 .
2026-07-08 17:23:51 -07:00
Jack Kingsman
97b873e991
Defer chart render until flyin is settled. Closes #317 .
2026-07-08 16:47:41 -07:00
Jack Kingsman
0db80dd054
Merge pull request #307 from Bjorkan/fixRegions. Closes #303 .
...
Fix unscoped flood-scope handling
2026-07-08 15:51:50 -07:00
Jack Kingsman
6edd2927b1
Gate scoping-safety on firmware ref, and and make per-channel override tristate.
2026-07-08 15:45:58 -07:00
Jack Kingsman
84e6c34255
Allow favorites to be sorted by type. Closes #314 .
2026-07-08 14:57:29 -07:00
Jack Kingsman
2fcbefac3b
Add duty cycle display to repeaters. Closes #308 .
2026-07-08 14:47:50 -07:00
Björkan
2118c83bc4
Stabilize app startup hash test timeout
2026-07-03 19:02:25 +02:00
Jack Kingsman
7b334160ce
Be more forgiving around hashtag channel names
2026-06-30 14:43:05 -07:00
Jack Kingsman
048e03d99b
Maybe finally fix that flaky test??
2026-06-20 22:12:51 -07:00
Jack Kingsman
8d8bc13a3b
Add option to disable scroll. Closes #299 .
2026-06-20 21:53:28 -07:00
Jack Kingsman
06556a853d
Add draft reactions + gifs; region resolution
2026-06-20 21:30:51 -07:00
jkingsman
85574f7747
Make repeater neighbor pane sortable. Closes #290 .
2026-06-17 18:19:15 -07:00
jkingsman
7198d92c74
Use the correct last-heard time for repeater recency sorting
2026-06-15 22:13:38 -07:00
Jack Kingsman
9391116d53
Compact the trace panes. Closes #285 .
2026-06-11 22:13:41 -07:00
Jack Kingsman
01c4dd1df7
Add recently traced contacts as a sort category in the trace pane. Closes #286 .
2026-06-11 21:55:51 -07:00
Jack Kingsman
e1e0b48437
Add 'Reverse Link' button to trace pane. Closes #287 .
2026-06-11 21:22:07 -07:00
Jack Kingsman
fb848d2e8d
Add outbound message opt-in for apprise
2026-06-11 20:42:29 -07:00
Jack Kingsman
be2b7fdacc
Actually fix the test issues
2026-06-01 20:27:01 -07:00
Jack Kingsman
257f09c2b4
Be more gentle during test runs
2026-06-01 19:21:02 -07:00
Jack Kingsman
c721e7461a
Don't display blocked contacts on the map. Closes #269 .
2026-06-01 18:10:45 -07:00
jkingsman
f4dd6b44a1
Fix flaky tests
2026-05-19 17:45:33 -07:00
Jack Kingsman
2462e40379
(feat) chain app nav to browser history state. Closes #250 .
...
Hook browser back/forward to nav state
2026-05-15 22:49:20 -07:00
Jack Kingsman
84aa352be3
Split up setting to be a bit neater
2026-05-13 17:30:06 -07:00
Jack Kingsman
0bd0c062f2
Initial tracke telemetry for contacts
2026-05-13 17:30:05 -07:00
Jack Kingsman
83da01fe45
Test fixtures matching contact shape
2026-05-13 17:20:58 -07:00
Jack Kingsman
b77660196b
Persist login status for room servers. Closes #244 .
2026-05-13 16:52:32 -07:00
Jack Kingsman
f1eca53625
Add packet scope to inspection. Closes #256
2026-05-13 16:06:44 -07:00
Martin Fournier
76f3a59d83
Hook browser back/forward to nav state
...
Push history on user-initiated navigation so 'Back' moves between
views instead of leaving the app.
- urlHash: add pushUrlHash/pushSettingsHash (pushState variants)
- useConversationRouter: pushState on nav; popstate resolves hash
to conversation without re-pushing; switch over if-chain
- useAppShell: pushState on settings open; popstate syncs
visibility; close via history.back() when we own the entry
- Tests: popstate coverage in appStartupHash + useAppShell
2026-05-11 01:53:49 -04:00
jkingsman
70cb133b24
Revise hop length buckets. Closes #240 .
2026-05-03 12:32:50 -07:00
Jack Kingsman
e76d922752
Add recieved time to packet display. Closes #238 .
2026-04-30 19:07:50 -07:00
Jack Kingsman
a9ac87e668
Allow newlines in text input. Closes #234 .
2026-04-30 18:36:36 -07:00
Jack Kingsman
047d713003
Permit hourly checks for direct/routed repeaters. Closes #226 .
2026-04-27 09:51:57 -07:00
Jack Kingsman
25041e1367
Add dynamic text replacement. Closes #223 .
2026-04-25 15:00:36 -07:00
Jack Kingsman
b37ce89c96
Add repeater telemetry error count
2026-04-25 13:45:17 -07:00
Jack Kingsman
55f05bf03b
Add dropdown to choose contact addition type. Closes #216 .
2026-04-22 17:43:01 -07:00
Jack Kingsman
5f78294cd1
Longer linger for web push mobile error
2026-04-19 23:04:36 -07:00
Jack Kingsman
cc2b16e53f
Test fix
2026-04-19 21:14:38 -07:00
Jack Kingsman
330007e120
Be smarter about web push not being available on snakeoil certs for mobile
2026-04-19 21:10:17 -07:00