* Handle node public key mismatch and show warning
- Add a mismatchKey flag to Node and MessageTopBar to indicate a public key mismatch.
- Set the public key to a default error value (all zeros) when a node's public key changes.
- Display a warning in the MessageTopBar when a key mismatch is detected in PKC.
- Only clear all nodes when a different mynode number is present.
* feat: Add key mismatch detection to NodeInfoDao
This commit introduces a new feature to the `NodeInfoDao` that detects and handles public key mismatches for existing nodes.
- A new function `upsertCheckKeyMatch` is added to `NodeInfoDao` that checks for public key changes when upserting a node. If a mismatch is detected, the public key is set to `ERROR_BYTE_STRING`, and a warning is logged.
- The function `upsertCheckKeyMatch` is used instead of `upsert` in `NodeRepository` and in `putAll` inside of `NodeInfoDao`.
- A new test `testPkcMismatch` is added to `NodeInfoDaoTest` to verify the key mismatch detection.
- Changed `testNodes` to have unique public keys.
- Added `mismatchKey` state to the node model.
* detekt spacing
* Refactor: Correctly handle different node installations in NodeRepository
The logic for detecting different node installations in `NodeRepository.kt` was inverted, this commit fixes the logic to use `!=` instead of `==` to detect if the node number has changed.
* Expose wantAck in Mesh Packet
* Update DataPacket.kt
* Update DataPacket.kt
* Update DataPacket.kt
* Update DataPacket.kt
* Refactor: Change wantAck field type in DataPacket
- Changed the `wantAck` field in `DataPacket` from `Int` to `Boolean`.
- Updated read/write and equals/hashcode functions accordingly.
* Update MeshService.kt
* Update MeshService.kt
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
* refactor: condensed the process of drawing the lines in the env metrics
* feat: only include iaq in the env metric graph when we have actual values
* feat: plotting barometric pressure when we have actual values
* detekt: spacing after (
---------
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>