fix(offline): honest peer state + counts when off-grid#105
Merged
epicexcelsior merged 2 commits intoJun 13, 2026
Conversation
peer.online means "announced inside the 10-min fresh window", not "reachable now" — with no internet route every hub peer kept its green dot and 'reticulum · active' label. Add isPeerReachable(peer, mode): reachable = online && (mode online || via is ble/rnode). - All Peers rows: unreachable hub peers drop to gray dot + 'reticulum · last seen 3m' instead of claiming active - header count: 'N online' -> 'off-grid · N reachable' when offline, counting only radio-local peers - BLE/RNode peers stay live off-grid; online mode unchanged
- MeshMap header: '● LIVE' -> muted '◌ LAST KNOWN' when no internet route (both inline + fullscreen headers); hub topology is a snapshot - map nodes/rows: unreachable hub peers dim (online=false, signal 2) while BLE/RNode peers stay bright - beacon registry: 'reachable' stat now uses isPeerReachable so the 'Reachable-peer count is real' disclaimer is actually true
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Off-grid screens stop overstating reachability — the core promise of the app.
isPeerReachableunder-claims reticulum peers when offline, so peer counts and the topology badge read "LAST KNOWN" rather than implying live reach.Scope
NodesScreen, MeshMap, LxmfContext (
isPeerReachable), peer cards.Test
tsc clean · tier0 config/services clean · fake-money + lint clean. Verified the change only ever under-claims reachability (the safe/honest direction), never fabricates live peers.