Commit Graph

  • 5202665c1a fix(logs): break werkzeug ↔ socket.io polling feedback loop dev MarekWo 2026-06-10 20:25:23 +02:00
  • f57b9474bb fix(channels): skip self-echoes of raw resends in _on_channel_message MarekWo 2026-06-10 19:45:39 +02:00
  • e14c4fab06 fix(channels): include message id in /api/messages response MarekWo 2026-06-09 19:06:08 +02:00
  • 2f8f765af5 fix(channels): backfill raw-resend buttons when displayMessages races loadStatus MarekWo 2026-06-09 19:01:07 +02:00
  • e3211dd536 fix(channels): don't render raw-resend button against a _pending_<ts> id MarekWo 2026-06-09 18:07:04 +02:00
  • 00f0544a47 feat(channels): UI for raw resend + clarify the edit-message button MarekWo 2026-06-09 15:02:25 +02:00
  • 201bc137e5 fix(channels): also pass path_hash_size on the echo-driven raw_packet rebuild MarekWo 2026-06-09 14:54:42 +02:00
  • 7bdccac60a chore(status): expose path_hash_mode/size for debugging resend snapshots MarekWo 2026-06-09 14:48:20 +02:00
  • 10df8464b7 fix(channels): honor device path_hash_mode when building raw_packet MarekWo 2026-06-09 14:40:21 +02:00
  • d23e865f35 feat(channels): merge post-resend echoes into existing repeater badge MarekWo 2026-06-09 14:32:44 +02:00
  • 4729055900 feat(channels): firmware version gate for raw resend (requires ≥1.16) MarekWo 2026-06-09 13:03:48 +02:00
  • 9c48518771 fix(channels): surface meshcore lib's error_code/code_string on resend failure MarekWo 2026-06-09 12:47:44 +02:00
  • 67c59cc341 feat(channels): backend resend endpoint via CMD_SEND_RAW_PACKET MarekWo 2026-06-09 12:39:34 +02:00
  • fa0b1c9109 feat(channels): capture raw_packet at send time for raw resend MarekWo 2026-06-09 12:27:17 +02:00
  • bed838c365 feat(db): add channel_messages.raw_packet column for raw resend MarekWo 2026-06-09 12:15:44 +02:00
  • d16093b459 docs: add whatsnew.md release notes for the upcoming main merge main MarekWo 2026-06-08 12:04:19 +02:00
  • 53ef2759d5 docs: cover analyzer settings, vacuum/optimize, path apply, watchdog soft patterns MarekWo 2026-06-08 11:53:41 +02:00
  • 7e9ff2e3aa fix(channels): drop hardcoded 0-7 limit on set-scope endpoint MarekWo 2026-06-08 11:06:30 +02:00
  • fef6845c03 fix(connection): self-heal degraded long-lived TCP via in-place reconnect MarekWo 2026-06-07 21:10:03 +02:00
  • f1477d84ac fix(db): run VACUUM in a worker thread to survive proxy timeouts MarekWo 2026-06-07 12:30:09 +02:00
  • 13a650bb6c fix(channels): read channels from DB instead of iterating device slots MarekWo 2026-06-07 12:21:34 +02:00
  • f72f6d418a feat(db): VACUUM after retention and an Optimize button in Backup modal MarekWo 2026-06-07 10:55:23 +02:00
  • 422e7a3b34 feat(watchdog): catch sluggish-device failures via soft-pattern counting MarekWo 2026-06-07 09:43:43 +02:00
  • 63204fe08d fix(retention): enable retention by default and unblock the scheduler MarekWo 2026-06-07 09:41:07 +02:00
  • 1d47c9c0e8 fix(perf): polling-only Socket.IO + channels DB fallback on USB timeout MarekWo 2026-06-07 07:31:47 +02:00
  • f34c95c15b fix(analyzer): dim Settings backdrop behind nested analyzer modals MarekWo 2026-06-05 21:35:23 +02:00
  • f0cb354ae0 fix(analyzer): wrap long URLs in Settings list on narrow mobile viewports MarekWo 2026-06-05 21:20:54 +02:00
  • 10792b8566 feat(analyzer): add configurable analyzer services in Settings MarekWo 2026-06-05 15:34:45 +02:00
  • e06e7b06dd feat(dm): apply a configured path to the device from Contact Info MarekWo 2026-06-05 13:43:19 +02:00
  • 843d59a2d6 fix(channels): refresh per-send channel secret to keep echo correlation working MarekWo 2026-06-05 10:42:07 +02:00
  • c39037214c fix(messages): persist raw path_len byte so incoming path_hash_size is correct MarekWo 2026-06-05 09:54:56 +02:00
  • bcaa550809 fix(dm): persist delivery_path_hash_size so reloaded bubbles render multi-byte routes MarekWo 2026-06-05 09:22:51 +02:00
  • 60e7e57663 fix(ui): include out_path_hash_mode in cli.get_contacts_with_last_seen MarekWo 2026-06-05 09:04:40 +02:00
  • 4effa47fe1 fix(ui): multi-byte path rendering across contact list, DM modal, retry MarekWo 2026-06-05 08:54:29 +02:00
  • fecf8cdccb fix(console): multi-byte hops in change_path parser and path display MarekWo 2026-06-05 08:29:33 +02:00
  • fd2b3d0f61 docs: cover sidebar sort/favorites, Quick Access placement, console transcript, sidebar breakpoint MarekWo 2026-05-08 09:36:00 +02:00
  • 8da9ee2455 fix(ui): sidebar breakpoint not applied in DM window MarekWo 2026-05-06 21:48:51 +02:00
  • 927fc518f0 feat(ui): user-configurable sidebar breakpoint width MarekWo 2026-05-06 21:35:56 +02:00
  • cf5e95579c feat(console): accept 'direct' keyword in change_path MarekWo 2026-05-06 21:04:59 +02:00
  • 8f144c6e97 fix(console): jump to latest when modal opens MarekWo 2026-05-06 07:55:23 +02:00
  • a571d5388d fix(console): open at bottom, drop Disconnected from transcript, add jump-to-latest button MarekWo 2026-05-06 07:42:51 +02:00
  • 3ef1eac0be feat(console): rename to mc-webui, fix change_path, persist transcript MarekWo 2026-05-05 22:18:46 +02:00
  • 58300f4a47 feat(ui): user-configurable Quick Access vs Main Menu placement MarekWo 2026-05-03 21:37:55 +02:00
  • a2d3111e1c feat(channels): sort sidebar by latest activity, with favorite tier MarekWo 2026-04-29 22:48:33 +02:00
  • a335f521e4 docs: cover regions, searchable channel selector, path hash mode MarekWo 2026-04-27 07:45:55 +02:00
  • 0d4e81d105 feat(regions): show clickable No region badge when channel has no scope MarekWo 2026-04-26 20:57:57 +02:00
  • da82a46591 fix(regions): use explicit None entry to clear default in Region Registry MarekWo 2026-04-26 20:18:44 +02:00
  • d858011228 fix(regions): reset backdrop inline z-index on hide so picker stays clickable MarekWo 2026-04-26 11:42:09 +02:00
  • 4bf863ec27 fix(channels): show full year in channel-list date to avoid HH.MM lookalikes MarekWo 2026-04-24 22:03:27 +02:00
  • 05291e88fb fix(regions): dim Manage Channels modal when region picker opens on top MarekWo 2026-04-24 21:55:14 +02:00
  • d77d86087d fix(regions): allow clearing the default region in Region Registry MarekWo 2026-04-24 21:39:17 +02:00
  • e293de2a76 fix(regions): rename tab to Regions and soften v1.14 firmware error MarekWo 2026-04-24 11:54:01 +02:00
  • 226bd2abac feat(regions): status-bar indicator pill for active channel scope MarekWo 2026-04-24 07:29:12 +02:00
  • afe0c7cf17 feat(regions): per-channel scope picker + send-flow integration MarekWo 2026-04-24 07:27:33 +02:00
  • f04f0f1dd8 feat(regions): Settings > Channels tab with region registry CRUD MarekWo 2026-04-24 07:24:15 +02:00
  • 0e38e0ce8c feat(regions): DeviceManager wrappers for flood-scope commands MarekWo 2026-04-24 07:20:30 +02:00
  • 8e353407d3 feat(regions): add data layer for per-channel region scopes MarekWo 2026-04-24 07:12:55 +02:00
  • daf9c5c0db feat: show last message time and preview in channel list MarekWo 2026-04-23 07:43:02 +02:00
  • 57a0ca018d fix: treat slots with empty name as empty regardless of secret bytes MarekWo 2026-04-22 20:52:35 +02:00
  • cbcdbdcae9 fix: prevent duplicate channels from concurrent add/join requests MarekWo 2026-04-22 20:45:39 +02:00
  • 66c378c17d fix: shrink navbar brand to 1rem on mobile so full 'mc-webui' fits MarekWo 2026-04-22 20:00:18 +02:00
  • 10addba35f fix: force navbar to one row on mobile (flex-wrap: nowrap) MarekWo 2026-04-22 19:55:23 +02:00
  • 14df7ead4d fix: shrink navbar brand on mobile so navbar controls fit one row MarekWo 2026-04-22 19:50:12 +02:00
  • 9ca055dd01 fix: drop input min-width override that pinned channel selector to 100px MarekWo 2026-04-22 19:44:48 +02:00
  • b296913cd1 fix: shrink channel selector further to fit Samsung S20 navbar in one row MarekWo 2026-04-22 08:46:19 +02:00
  • 8194158241 fix: narrow channel selector to keep navbar on one line on small screens MarekWo 2026-04-22 08:42:16 +02:00
  • 309efe0ce5 feat: searchable channel picker on narrow screens + DM picker font fix MarekWo 2026-04-22 08:32:03 +02:00
  • 3b4ed26c50 feat: path_hash_mode selector in Settings + global Close button MarekWo 2026-04-22 07:32:50 +02:00
  • cfdb68390f docs: add Contact Management guide (markdown + HTML) MarekWo 2026-04-18 11:21:39 +02:00
  • 3dd1c52687 feat: contacts settings tab with suppress + auto-ignore options MarekWo 2026-04-18 10:01:58 +02:00
  • 0a08759065 docs: sync README, user guide, and architecture with recent features MarekWo 2026-04-15 16:14:57 +02:00
  • 8ccb3100c2 fix: cascade-clean ignored/blocked rows on hard contact delete MarekWo 2026-04-15 08:35:31 +02:00
  • bd0a6b492e feat: configurable route popup + toast display time and position MarekWo 2026-04-15 08:12:51 +02:00
  • 77c3ffa5c2 fix: prevent echo mis-correlation for sent channel messages MarekWo 2026-04-14 21:47:07 +02:00
  • 10cc2031d1 feat: add GitHub Actions cache for Docker layer builds MarekWo 2026-04-12 21:30:05 +02:00
  • 74e4327a37 fix: add build deps for Pillow/pycryptodome on ARM MarekWo 2026-04-12 21:15:31 +02:00
  • d04fd817f9 feat: add multi-arch Docker builds for Raspberry Pi support MarekWo 2026-04-12 21:06:27 +02:00
  • f7f5beb8b8 fix: route popup positioning on small screens + tap-to-copy MarekWo 2026-04-12 20:53:54 +02:00
  • acec9e92cf fix: use calendar date comparison for message timestamps MarekWo 2026-04-12 13:19:10 +02:00
  • 8f8bd30747 fix: refresh mc.contacts from device on dirty flag to update stale names MarekWo 2026-04-09 12:29:45 +02:00
  • bbfca38d34 fix: use adv_lat/adv_lon keys for device coordinates MarekWo 2026-04-06 19:26:42 +02:00
  • 58d7d9af18 feat: add Device settings tab with Public Info and Radio Settings sub-tabs MarekWo 2026-04-06 17:08:57 +02:00
  • bc1da9e45e fix: get_device_info checked for 'data' attr instead of 'payload' MarekWo 2026-04-06 14:43:26 +02:00
  • 1e6f8caf03 fix: invalidate self_info cache after set_param MarekWo 2026-04-06 14:40:14 +02:00
  • c3f61ce3f7 fix: get radio returns actual values, implement set radio command MarekWo 2026-04-06 14:33:13 +02:00
  • 3086ac1f8e fix: add value hints to console help for telemetry, advert and path params MarekWo 2026-04-06 14:24:25 +02:00
  • 1a194d5050 fix: implement get advert_loc_policy console command MarekWo 2026-04-06 14:10:20 +02:00
  • 19b2a172c8 feat: persist FAB collapsed state across page loads MarekWo 2026-04-06 12:26:56 +02:00
  • fb99054e4b fix: defer FAB position restore when iframe viewport is too small MarekWo 2026-04-06 12:19:44 +02:00
  • 60c698deb2 feat: add Settings FAB button, drag-and-drop positioning, and size/spacing controls MarekWo 2026-04-06 11:59:24 +02:00
  • 6c02220719 fix: skip empty channel slots during sync, clean up stale DB channels MarekWo 2026-04-06 11:08:38 +02:00
  • c36d7b5fbf fix(ble): simplify reconnection — rely on container restart for clean state MarekWo 2026-04-05 16:39:03 +02:00
  • 53063f199a fix(ble): connect via BlueZ D-Bus instead of bleak direct connect MarekWo 2026-04-05 14:13:06 +02:00
  • 9c692fac8b fix(ble): use BleakScanner to find device before connecting MarekWo 2026-04-05 14:10:47 +02:00
  • a92b505975 fix(ble): untrust device during connect to prevent BlueZ auto-reconnect MarekWo 2026-04-05 14:06:18 +02:00
  • 1de98433d4 fix(ble): add adapter power-cycle to startup retry loop MarekWo 2026-04-05 13:40:53 +02:00
  • f352ccd968 fix(ble): add keepalive and robust reconnection for BLE zombie connections MarekWo 2026-04-05 13:37:33 +02:00
  • 61d60ea4b6 fix(ci): lowercase GHCR owner name and update actions versions MarekWo 2026-04-01 15:39:30 +02:00
  • 8aac3d4839 ci: add dual registry (Docker Hub + GHCR) and dev branch builds MarekWo 2026-04-01 15:35:33 +02:00
  • bc578c7018 ci: add Docker Hub publish workflow MarekWo 2026-04-01 15:00:32 +02:00