- Removing a scope moves the channels that used it to the default, not to
unscoped.
- The room bot ignores posts older than 5 minutes: the backlog a room
replays after login no longer gets answers.
- Adverts take the default scope from the scope list, as messages do; the
legacy fields always mirror it, and CMD_SET_DEFAULT_FLOOD_SCOPE with a
full list answers TABLE_FULL.
- The last DM resend drops the direct path and floods.
- /trail and /waypoints are written through a temp file.
- An admin login timeout keeps the saved password.
- History records read from the SD card are sanitised.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contacts and rooms, the scope list, discovery and ping, APC and
screenshots move out of MyMesh.cpp to headers included at its bottom,
as MyMeshBot.h and MyMeshCli.h are, so upstream merges meet less of our
code. The feature matrix gains the 4.26" in its layout tests.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>