github Yeraze/meshmonitor v4.13.3-rc4

pre-release4 hours ago

MeshMonitor v4.13.3-rc4

⚠️ Pre-release. This is a release candidate for testing. It does not carry the :latest Docker tag. Run it in production only if you are ready to report bugs.

Summary

This candidate is built around two threads: the MeshCore Analyzer Observer epic (#4457) landing in full across three phases, and a chain of position-trust fixes that started with a protobuf refresh and ended up closing a security hole plus a long-standing data bug.

The position thread is worth reading in order. Refreshing the Meshtastic protobufs picked up MeshPacket.rx_rssi gaining explicit presence — which turned a latent ambiguity into a live defect. Every rx_rssi != 0 guard had been treating a genuine 0 dBm reception as "no data", and in the local-node spoof detector that meant a 2.8 node transmitting at point-blank range was classified as our own outgoing message. Fixed, with a regression test on that exact case.

Next, estimated positions were made honest. A trilaterated estimate used to be indistinguishable from a device GPS fix once it reached the client, because only one of the three position sources set a flag. Node Details now carries a GPS / Estimated / Override pill and a ± accuracy radius. On a typical install that relabels several hundred nodes that were quietly presenting guesses as fixes.

That pill immediately exposed a real bug it had been hiding. Migration 107 once cleared bogus (0,0) fixes from nodes, but never swept estimated_positions — so a node whose Null Island fix had been cleared fell through to a Null Island estimate, re-substituting the exact coordinates the migration removed. Migration 134 purges those rows, the estimator no longer generates them, and the display gate now accepts a genuine equator or prime-meridian coordinate instead of reading a zero as "unpositioned".

Features

  • MeshCore Analyzer Observer — backend foundation (#4457 phase 1) — #4464
  • MeshCore Analyzer Observer — publisher service (phase 2) — #4468
  • MeshCore Analyzer Observer — UI and docs (phase 3, final) — #4471
  • Position provenance in Node Details: GPS / Estimated / Override pill plus a ± accuracy radius (#4432) — #4467
  • DeviceMetadata.has_xeddsa surfaced in Admin Commands, distinguishing "cannot sign" from "did not sign" (#3923) — #4466

Bug Fixes

  • Local-node spoof detection failed open on a 0 dBm reception. With firmware 2.8's explicit rx_rssi presence, a spoofed packet at point-blank range was classified as a genuine local transmission — #4466
  • Null Island estimates presented as real positions; migration 134 purges the stored rows, the estimator stops producing them, and a genuine equator / prime-meridian fix is no longer overwritten by an estimate — #4469
  • PWA notification clicks now deep-link to the source route (#4463) — #4465
  • MeshCore channel message history: infinite-scroll pagination — #4461
  • Traceroute node picker: relayed participation is MQTT-only — #4459
  • Per-node uptime graphs humanized (#3261); sidebar controls no longer overlap the shared footer (#4436) — #4458

Protocol / Internals

  • Protobufs refreshed to develop@6ceceae (61 upstream commits). HardwareModel 141–143 (HELTEC_RC32 / RC52 / RCC6), PortNum.LORA_OTA_APP = 79, UA_868 marked deprecated — #4466
  • CI/release watcher scripts retry transient GitHub API errors — #4462

Still no upstream 2.8 protobufs tag (newest remains v2.7.26), so the pin is a develop preview and the 2.8 tracking issues stay open.

Upgrade Notes

  • Migration 134 runs automatically on first boot and deletes Null Island rows from estimated_positions. Any affected node loses its bogus estimate; the scheduled recompute recreates a row if a legitimate solve still exists.
  • Nodes that were displaying an estimated position will now show an ESTIMATED pill. That is the estimate becoming visible, not a new estimate.

🚀 MeshMonitor v4.13.3-rc4

📦 Installation

Docker (recommended):

docker run -d \
  --name meshmonitor \
  -p 8080:3001 \
  -v meshmonitor-data:/data \
  ghcr.io/Yeraze/meshmonitor:4.13.3-rc4

🧪 Testing

✅ All tests passed
✅ TypeScript checks passed
✅ Docker images built for linux/amd64, linux/arm64, linux/arm/v7

📋 Changes

See commit history for detailed changes.

Don't miss a new meshmonitor release

NewReleases is sending notifications on new releases.