From 37aab149ca94ce60a2587f2c1799d5f56baac6ad Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Wed, 10 Dec 2025 13:25:10 +0000 Subject: fix: add Layer 1 re-subscription on quick reconnect (BUG-1) --- src/sync/mod.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/sync') diff --git a/src/sync/mod.rs b/src/sync/mod.rs index 9a8857c..b967d4f 100644 --- a/src/sync/mod.rs +++ b/src/sync/mod.rs @@ -1062,6 +1062,18 @@ impl SyncManager { "Quick reconnect - using since filter for incremental sync" ); + // Subscribe to Layer 1 (announcements) with since filter to catch new repos + let layer1_filter = filters::build_announcement_filter(Some(since_ts)); + if let Some(connection) = self.connections.get(relay_url) { + if let Err(e) = connection.subscribe_filter(layer1_filter).await { + tracing::error!( + relay = %relay_url, + error = %e, + "Failed to subscribe to Layer 1 filter on quick reconnect" + ); + } + } + // Rebuild Layer 2 and Layer 3 with since filter self.rebuild_layer2_and_layer3(relay_url, Some(since_ts)) .await; -- cgit v1.2.3