columba/python
torlando-tech 255c148fec fix: send pending file notification eagerly on propagation fallback
When a large file attachment exceeds the recipient's size limit and
falls back to propagation, notify the recipient immediately rather
than waiting for propagation to succeed. The previous deferred
approach had three bugs that prevented the notification from ever
appearing:

1. Tracking entry was placed after the immediate-success return,
   so synchronous propagation success skipped notification entirely
2. If propagation failed (max_relay_retries_exceeded), the
   notification was never sent since it waited for success
3. Field 16 (APP_EXTENSIONS_FIELD) was not in the meaningful_fields
   set, so the recipient's _on_lxmf_delivery filtered the
   notification as an "empty probe message"

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 22:27:29 -05:00
..
ble_modules feat: add BLE peer RSSI signal tracking 2026-01-18 21:25:47 -05:00
drivers initial commit 2025-11-30 19:59:14 -05:00
jnius fix: Correct TCP RNode config format and add stub modules 2025-12-14 00:10:49 -05:00
lxst_modules fix: batch TX audio frames to eliminate progressive call degradation 2026-02-16 14:45:06 -05:00
patches initial commit 2025-11-30 19:59:14 -05:00
usb4a fix: Correct TCP RNode config format and add stub modules 2025-12-14 00:10:49 -05:00
usbserial4a fix: Correct TCP RNode config format and add stub modules 2025-12-14 00:10:49 -05:00
android_ble_interface.py feat: add BLE peer RSSI signal tracking 2026-01-18 21:25:47 -05:00
columba_logo.py feat: display Columba logo on RNode OLED via external framebuffer 2025-12-08 21:58:48 -05:00
conftest.py test: Add comprehensive unit tests for reticulum_wrapper.py 2025-12-12 22:22:10 -05:00
logging_utils.py initial commit 2025-11-30 19:59:14 -05:00
memory_profiler.py docs(05-02): audit PyObject lifecycle for memory leaks 2026-01-29 18:41:10 -05:00
requirements.txt chore: remove dead Python LXST dependencies and audio backend 2026-02-07 16:02:34 -05:00
reticulum_wrapper.py fix: send pending file notification eagerly on propagation fallback 2026-02-20 22:27:29 -05:00
rmsp_client.py Revert "fix(security): correct destination direction in RMSP hash verification" 2026-01-12 21:25:45 -05:00
rnode_interface.py fix: abort USB start if old read thread won't stop 2026-01-20 19:37:34 -05:00
signal_quality.py feat: add BLE peer RSSI signal tracking 2026-01-18 21:25:47 -05:00
test_android_ble_driver.py feat: add BLE peer RSSI signal tracking 2026-01-18 21:25:47 -05:00
test_android_ble_interface.py test: add unit tests for BLE interface RSSI methods 2026-01-18 21:52:09 -05:00
test_announce_handler.py feat(telephony): improve call setup reliability and init speed 2026-02-08 12:43:23 -05:00
test_autoconnected_endpoints.py test: add comprehensive unit tests for RNS discovery feature 2026-01-21 22:58:08 -05:00
test_ble_duplicate_identity_stale.py test: add tests for stale identity-to-address rejection bug fix 2026-01-18 16:06:35 -05:00
test_ble_modules_android_ble_interface.py test: add unit tests for BLE interface RSSI methods 2026-01-18 21:52:09 -05:00
test_call_manager.py fix: batch TX audio frames to eliminate progressive call degradation 2026-02-16 14:45:06 -05:00
test_discovered_interfaces.py test: add comprehensive tests for get_discovered_interfaces() 2026-01-21 23:19:20 -05:00
test_discovery_enabled.py test: add comprehensive unit tests for RNS discovery feature 2026-01-21 22:58:08 -05:00
test_memory_profiler.py test(05-02): add unit tests for memory profiler 2026-01-29 17:33:04 -05:00
test_opportunistic_timeout.py test: update propagation node tests to match None-clearing behavior 2026-01-16 19:00:06 -05:00
test_path_request.py feat: Auto-request path for unknown destinations 2025-12-12 19:18:48 -05:00
test_pr422_icon_appearance.py fix: swap icon foreground/background color order to match LXMF standard 2026-02-13 06:18:47 +00:00
test_propagated_status_protection.py fix(#257): add Python tracking + Kotlin guard for propagated message status 2026-01-16 16:55:42 -05:00
test_propagation_fallback.py feat: Add automatic relay fallback and manual retry for failed messages 2025-12-13 00:01:13 -05:00
test_reticulum_wrapper.py feat(telephony): improve call setup reliability and init speed 2026-02-08 12:43:23 -05:00
test_rmsp_client.py fix(tests): use explicit global coverage marker in Server D test 2026-01-11 21:44:49 -05:00
test_rnode_interface.py refactor: extract testable utilities to improve test coverage 2026-01-20 17:46:09 -05:00
test_signal_quality.py feat: add BLE peer RSSI signal tracking 2026-01-18 21:25:47 -05:00
test_stub_modules.py test: Improve patch coverage from 20.94% to 80%+ with 61 new tests 2025-12-14 01:30:09 -05:00
test_telemetry_format.py test: add comprehensive telemetry format tests 2025-12-29 17:50:57 -05:00
test_telemetry_host_mode.py fix: swap icon foreground/background color order to match LXMF standard 2026-02-13 06:18:47 +00:00
test_telemetry_stream.py fix: swap icon foreground/background color order to match LXMF standard 2026-02-13 06:18:47 +00:00
test_usb_bridge.py fix: resolve detekt issues and update tests for USB RNode support 2026-01-20 00:24:53 -05:00
test_wrapper_announce_polling.py test: Add comprehensive tests for interface name extraction 2026-01-21 19:07:22 -05:00
test_wrapper_ble.py feat: simplify USB RNode interface naming to "RNode USB" 2026-01-19 23:43:57 -05:00
test_wrapper_config.py test: Add 30 tests to improve TCP RNode patch coverage to 80%+ 2025-12-14 01:58:19 -05:00
test_wrapper_destination.py test: Add comprehensive unit tests for reticulum_wrapper.py 2025-12-12 22:22:10 -05:00
test_wrapper_heartbeat.py test: add coverage for heartbeat, exception handler, and persistence fields 2025-12-28 22:03:19 -05:00
test_wrapper_identity.py test: Add comprehensive unit tests for reticulum_wrapper.py 2025-12-12 22:22:10 -05:00
test_wrapper_initialization.py feat(telephony): improve call setup reliability and init speed 2026-02-08 12:43:23 -05:00
test_wrapper_link.py fix(test): stabilize flaky establish_link tests with concrete status values 2026-02-15 15:06:12 -05:00
test_wrapper_message_size_limit.py test: add comprehensive tests for incoming message size limit feature 2026-01-03 23:04:51 -05:00
test_wrapper_messaging.py test: add unit tests for BLE interface RSSI methods 2026-01-18 21:52:09 -05:00
test_wrapper_path.py fix: flaky Python test from global state leak + remove CI self-cancel 2026-02-10 19:35:58 -05:00
test_wrapper_peer_identity.py perf: Optimize peer identity restoration from minutes to milliseconds 2025-12-14 22:13:35 -05:00
test_wrapper_propagation.py test: update propagation node tests to match None-clearing behavior 2026-01-16 19:00:06 -05:00
test_wrapper_reactions.py auto-claude: subtask-4-3 - Add Python tests for reaction send/receive 2025-12-24 20:46:18 -05:00
test_wrapper_stamp_generator.py test: add Python tests for stamp generator callback 2025-12-16 18:52:21 -05:00
test_wrapper_utilities.py test: Add comprehensive unit tests for reticulum_wrapper.py 2025-12-12 22:22:10 -05:00
TorClientInterface.py Add SOCKS5 proxy UI fields to TCP Client interface config 2026-02-16 19:47:17 -05:00
usb_bridge.py fix: auto-generate Bluetooth RNode interface names from device name 2026-01-19 23:48:06 -05:00