Files
pe1hvh ae6d4a9b40 feat(regions): channel/device default region, send override, rx display (v1.25.0)
WHAT
- Channel Manager mode "Region (default)": default region per channel,
  stored per device in ChannelRegionStore (~/.meshcore-gui/regions/)
- Send row: region override select after the channel select; typing a
  new region adds it to the known regions
- DEVICE panel: "Default region" + Set in the Actions card, pre-selected
  with the value read from the radio; None clears it
- ACTIONS merged into DEVICE: menu item removed, Actions card rendered
  below the Device card; ?panel=actions opens DEVICE
- Received channel messages show [#region] (unknown: [?xxxx]) via the
  RX log transport code; region stored in the message archive
- Device default region read at connect (get_default_flood_scope)
- requirements.txt: meshcore>=2.3.17 (fork no longer used)
- VERSION 1.24.5 -> 1.25.0; README and CHANGELOG updated

WHY
Issue #33. The companion firmware has one device default scope and one
session-wide send override, with per-channel scope marked TODO, so the
app sets the override for each scoped channel send and resets it
afterwards (DMs and other traffic stay unscoped). CHANNEL_MSG_RECV has
no region; only the raw packet's transport code does, and the name can
only be recovered by matching known region keys. The default-scope frame
is built in the app because meshcore 2.3.17 set_default_flood_scope()
cannot clear (None raises, "" is rejected by the firmware) and pads by
characters instead of bytes.

NOTES
- No breaking changes: all new parameters are optional; the archive gains
  an optional "region" field; cache schema unchanged
- UI: the ACTIONS menu item no longer exists
- Transport-code matching not yet verified against a real scoped packet
2026-11-09 07:12:41 +01:00
..
2026-04-21 00:14:25 +02:00
2026-03-09 17:53:29 +01:00
2026-03-09 17:53:29 +01:00
2026-03-09 17:53:29 +01:00
2026-03-09 17:53:29 +01:00
2026-03-09 17:53:29 +01:00