radicle-reticulum/src/radicle_reticulum
Maciek "mab122" Bator 8f4f732dca feat: watchdog push detection, setup command, and gossip refactor
Gossip relay now reacts to rad push instantly when watchdog is installed.
A threading.Event replaces the interruptible sleep loop: watchdog fires
the event on any filesystem change in the seed's storage directory, waking
the poll loop immediately.  Without watchdog the relay falls back to the
configured poll interval with a clear log message.

New command 'radicle-rns setup' checks all prerequisites and prints exact
fix instructions for anything missing: rad/radicle-node binaries, seed
identity, watchdog, and whether the seed is registered in the user's
radicle node.

Other changes:
- gossip: _poll_loop_once() extracted so tests can drive one iteration
- gossip: stop() sets poll_event so the thread exits without waiting out
  the full poll interval
- gossip: _start_watcher() creates storage dir if absent (watchdog requires
  the watched path to exist)
- pyproject.toml: watchdog>=3.0 added as [watch] optional dep and dev dep
- 5 new tests for watchdog/event/auto-discover behaviour

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 22:28:42 +02:00
..
__init__.py feat: replace parallel git-bundle layer with real Radicle seed bridging 2026-04-22 15:44:59 +02:00
adapter.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
bridge.py fix: per-bridge TCP routing, gossip in seed mode, and thread-safety 2026-04-22 19:33:19 +02:00
cli.py feat: watchdog push detection, setup command, and gossip refactor 2026-04-22 22:28:42 +02:00
gossip.py feat: watchdog push detection, setup command, and gossip refactor 2026-04-22 22:28:42 +02:00
identity.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
link.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
messages.py feat: initial implementation of radicle-reticulum bridge 2026-04-21 12:14:57 +02:00
seed.py feat: replace parallel git-bundle layer with real Radicle seed bridging 2026-04-22 15:44:59 +02:00