radicle-reticulum/tests
Maciek "mab122" Bator eb0a669801 fix: gossip correctness — debounce, non-blocking peer init, targeted sync
gossip.py:
- _poll_loop: run initial baseline poll at startup, then debounce 2s after
  watchdog events so a 20-commit push triggers one broadcast not twenty
- _on_announce: move inline _send_packet calls to _send_initial_refs() on a
  daemon thread — _send_packet blocks up to 15s waiting for a path, which
  was stalling the RNS announce handler when called inline
- _trigger_sync: pass --seed NID@127.0.0.1:PORT to rad sync --fetch when
  rad node connect succeeded, targeting the specific peer that sent the
  gossip instead of syncing with all known seeds; log clearly when connect
  fails and fall back to untagged fetch

tests/test_gossip.py:
- test_seed_flag_added_when_connect_succeeds
- test_no_seed_flag_when_connect_fails
- test_debounce_clears_event_on_early_wakeup

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 14:09:59 +02:00
..
__init__.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
test_adapter.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
test_bridge.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
test_gossip.py fix: gossip correctness — debounce, non-blocking peer init, targeted sync 2026-04-23 14:09:59 +02:00
test_identity.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
test_integration.py test: integration tests for gossip, bridge discovery, and TCP tunneling 2026-04-23 13:19:01 +02:00
test_link.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
test_messages.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00