aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-11-02 22:59:58 +0100
committertv <tv@krebsco.de>2026-11-02 22:59:58 +0100
commit22e539d9285626ed217c661e6a5e5d2adb12150c (patch)
treec0b7b179c685ac4a723cc520866e499af0d2e4ee /docs
parente4331d13f313f439aff9cef1ea221c8adeeebb3a (diff)
swarm: announce to whom writers can't reach
Diffstat (limited to 'docs')
-rw-r--r--docs/architecture.md3
-rw-r--r--docs/peers.md5
2 files changed, 6 insertions, 2 deletions
diff --git a/docs/architecture.md b/docs/architecture.md
index e0e2c94..07edbfb 100644
--- a/docs/architecture.md
+++ b/docs/architecture.md
@@ -225,7 +225,8 @@ catch-up source. The phases, what each serves and how the files come in: [`lifec
the write lock, stamped with the clock) → `publish_change` (bumps the version, emits
`DocumentChanged`) → the sync worker generates a message per neighbour → each
neighbour applies it, relays its new heads to *its* neighbours, which pull what they
-lack. In a full mesh (up to `k + 1` members) the writer reaches everyone directly.
+lack. In a full mesh (up to `k + 1` members) the writer reaches everyone directly, but
+those on none of its transports, to whom the nodes between announce.
**An inbound message.** Consumer → `handle_message`: drop our own and stale-run
replies, admit (swarm key), mark the peer seen, record its epoch (ignoring late ones),
diff --git a/docs/peers.md b/docs/peers.md
index 95b4dab..c63cec1 100644
--- a/docs/peers.md
+++ b/docs/peers.md
@@ -284,7 +284,10 @@ the current pull is answered, if they still have something it lacks. The regular
STATUS (every third keepalive) triggers the same pull, so gaps close within a few
keepalive intervals. A node
that just caught up announces its heads once. In a full mesh nothing is announced: the
-writer reaches everyone (while a node doesn't know its neighbours yet, it announces).
+writer reaches everyone (while a node doesn't know its neighbours yet, it announces);
+but to the neighbours the writer can't reach, those on none of its transports (by the
+member list, the writer's neighbours as this node computes them): a node on Tor and
+libp2p announces to one on Tor alone what came from one on libp2p alone.
## Keepalive and self-healing