diff --git a/api/core/ble/navigation.html b/api/core/ble/navigation.html
index f2581e109a..218aae237b 100644
--- a/api/core/ble/navigation.html
+++ b/api/core/ble/navigation.html
@@ -14607,7 +14607,7 @@
Node
Ceiling on entries in the in-memory node index. See NodeIndex.evictedToFit.
An order of magnitude above the largest NodeDB firmware exposes (MAX_NUM_NODES is 100–250 by target), so a legitimately busy mesh never reaches it and only sustained novel-from traffic does.
Ceiling on entries in the in-memory node index. See NodeIndex.evictedToFit.
An order of magnitude above the largest NodeDB firmware exposes (MAX_NUM_NODES is 100–250 by target), so a legitimately busy mesh never reaches it and only sustained novel-from traffic does.
Implementation of NodeManager that maintains an in-memory database of the mesh.
Implementation of NodeManager that maintains an in-memory database of the mesh.
Backfills longName and shortName columns from the user protobuf for nodes where these columns are NULL. This ensures search functionality works for all nodes. Skips placeholder/default users (hwModel == UNSET).
Backfills longName and shortName columns from the user protobuf for nodes where these columns are NULL. This ensures search functionality works for all nodes. Skips placeholder/default users (hwModel == UNSET).
Clears the unheard flag on every node. Called when the connected firmware cannot report NodeInfo.heard_on_current_lora, so a value written by a radio that could does not outlive it and leave nodes shown as unreachable. Normalizing in the database rather than in memory keeps every reader correct, including the repository-backed flows the node list renders from.
Installs the config download from the connected device, reconciling any node-number change of the device itself (firmware 2.8 renumber, erase-and-reflash, manual re-key) before the new my_node row lands.
node numbers whose rows were removed by identity migration, so callers can evict them from in-memory caches.
Installs the config download from the connected device, reconciling any node-number change of the device itself (firmware 2.8 renumber, erase-and-reflash, manual re-key) before the new my_node row lands.
node numbers whose rows were removed by identity migration, so callers can evict them from in-memory caches.
Clears the unheard flag on every node. Called when the connected firmware cannot report NodeInfo.heard_on_current_lora, so a value written by a radio that could does not outlive it and leave nodes shown as unreachable. Normalizing in the database rather than in memory keeps every reader correct, including the repository-backed flows the node list renders from.
Contact keys are "$channel$userId", so a suffix match rewrites just the DM threads of one node.
Contact keys are "$channel$userId", so a suffix match rewrites just the DM threads of one node.
Re-scopes stored messages from one owning node number to another (see Packet.myNodeNum).
Re-scopes stored messages from one owning node number to another (see Packet.myNodeNum).
OR IGNORE: myNodeNum is part of the reactions PK; drop the rare duplicate instead of aborting.
OR IGNORE: myNodeNum is part of the reactions PK; drop the rare duplicate instead of aborting.
Sets a single power-channel label (0-based channelIndex) atomically: the read-modify-write runs inside a transaction that reads the current labels from the DB, so concurrent edits to different channels can't clobber each other via a stale read. Earlier channels keep their slot (blank padding); trailing blanks are dropped.
Reads via getNodeByNum rather than a scalar SELECT power_channel_labels: Room reads a List<String> query result as one String per row (returning the raw JSON text), not as the column's converted List<String>.
Sets a single power-channel label (0-based channelIndex) atomically: the read-modify-write runs inside a transaction that reads the current labels from the DB, so concurrent edits to different channels can't clobber each other via a stale read. Earlier channels keep their slot (blank padding); trailing blanks are dropped.
Reads via getNodeByNum rather than a scalar SELECT power_channel_labels: Room reads a List<String> query result as one String per row (returning the raw JSON text), not as the column's converted List<String>.
True when the radio has heard this node over RF since its current LoRa config took effect (NodeInfo.heard_on_current_lora). Defaults true so nodes stored before this column existed, and nodes from firmware that does not report it, are never shown as unheard.
True when the radio has heard this node over RF since its current LoRa config took effect (NodeInfo.heard_on_current_lora). Defaults true so nodes stored before this column existed, and nodes from firmware that does not report it, are never shown as unheard.
The transport mechanism this node was last heard over (see MeshPacket.TransportMechanism).
The transport mechanism this node was last heard over (see MeshPacket.TransportMechanism).
True when this node signs its broadcasts via XEdDSA (NodeInfo.has_xeddsa_signed).
True when this node signs its broadcasts via XEdDSA (NodeInfo.has_xeddsa_signed).