New Features:
- π’ Broadcast messaging β compose one-time and recurring broadcasts (every minute/hour/daily/weekly/monthly) to selected contacts
- π₯ Recipient selection with "Select all", plus live send progress via websocket notifications
- π€ JSON export of all broadcasts with a compact payload (null/empty fields stripped)
- π LIDβPN contact resolution so LID-stored contacts can receive messages
- π± Responsive mobile layout for the broadcast composer and list
Bug Fixes:
- Corrected recipient-count aggregation (no longer double-counts child runs)
- Settings import/export tests made version-agnostic so they survive version bumps
Improvements:
- Recurring interval column added (migration 0021) to support "every N minutes/hours"