| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-12-11 | feat: add event metrics tracking throughout sync (Phase 5) | DanConwayDev | |
| 2025-12-10 | feat: add metrics field to SyncManager (Phase 2) | DanConwayDev | |
| 2025-12-10 | feat: create sync metrics module (Phase 1) | DanConwayDev | |
| 2025-12-10 | feat(sync): broadcast synced events to WebSocket subscribers | DanConwayDev | |
| Enable recursive relay discovery by broadcasting synced events to WebSocket subscribers via LocalRelay.notify_event(). This allows the SelfSubscriber to receive 30617 announcements synced from external relays and discover additional relay URLs to connect to. Changes: - Pass LocalRelay to SyncManager::new() from main.rs - Add local_relay field to SyncManager struct - Call notify_event() after saving synced events to database - Enable test_recursive_relay_discovery_syncs_announcement test The test verifies that when relay_a syncs announcement_x from bootstrap relay_b (which lists relay_c), relay_a discovers and connects to relay_c to sync announcement_y. Fixes recursive relay discovery from bootstrap sync. | |||
| 2025-12-10 | sync: fix connection registration issue | DanConwayDev | |
| 2025-12-10 | improve: count all active subscriptions in get_filter_count (IMPROVE-1) | DanConwayDev | |
| 2025-12-10 | refactor: remove insert-remove pattern in spawn_relay_connection (SIMPLIFY-3) | DanConwayDev | |
| 2025-12-10 | refactor: remove redundant RelayAction enum (SIMPLIFY-1) | DanConwayDev | |
| 2025-12-10 | feat: add automatic reconnection with exponential backoff (IMPROVE-2) | DanConwayDev | |
| 2025-12-10 | fix: add Layer 1 re-subscription on quick reconnect (BUG-1) | DanConwayDev | |
| 2025-12-10 | sync: implement graceful shutdown for all tasks and connections | DanConwayDev | |
| 2025-12-10 | sync: implement relay removal for empty non-bootstrap relays | DanConwayDev | |
| 2025-12-10 | sync: implement daily timer for periodic fresh sync | DanConwayDev | |
| 2025-12-10 | sync: implement filter consolidation system | DanConwayDev | |
| 2025-12-10 | sync: complete AddFilters handler with auto-spawning | DanConwayDev | |
| 2025-12-10 | sync: implement unified connect/reconnect with since filters | DanConwayDev | |
| 2025-12-10 | sync: implement PendingBatch EOSE confirmation flow | DanConwayDev | |
| 2025-12-10 | sync: implement disconnect handler with state cleanup | DanConwayDev | |
| 2025-12-10 | sync: integrate health tracking and connection storage | DanConwayDev | |
| 2025-12-10 | sync v4 mvp | DanConwayDev | |
| 2025-12-10 | stub of sync v4 | DanConwayDev | |
| 2025-12-10 | improve sync design | DanConwayDev | |
| 2025-12-09 | sync initalize from db | DanConwayDev | |
| 2025-12-09 | basic sync stub | DanConwayDev | |
| 2025-12-05 | sync fixes | DanConwayDev | |
| 2025-12-04 | feat(sync): Phase 6 - observability and production readiness | DanConwayDev | |
| - Add SyncMetrics with full Prometheus integration - Track sync gaps via catchup events - Update Grafana dashboard with sync panels - Document all sync configuration options - Update design doc with implementation notes | |||
| 2025-12-04 | feat(sync): Phase 5 - negentropy catchup (NIP-77) | DanConwayDev | |
| - Add NegentropyService for set reconciliation - Implement startup catchup with warm-up delay - Implement reconnect catchup (last 3 days) - Add daily catchup schedule with stagger | |||
| 2025-12-04 | feat(sync): Phase 4 - dynamic subscriptions | DanConwayDev | |
| - Add SubscriptionManager for per-connection tracking - Trigger subscription updates on new repo/PR events - Implement consolidation when filter count > 150 | |||
| 2025-12-04 | feat(sync): Phase 3 - resilience and health tracking | DanConwayDev | |
| - Add RelayHealthTracker with DashMap - Implement exponential backoff (5s -> 1h max) - Handle dead relays (24h failures -> daily retry) - Add startup jitter to prevent thundering herd - Add NGIT_SYNC_MAX_BACKOFF_SECS config | |||
| 2025-12-04 | feat(sync): Phase 2 - multi-relay and complete filters | DanConwayDev | |
| - Add relay discovery from stored announcements - Implement FilterService with three-layer strategy - Support multiple simultaneous relay connections - Filter batching for large tag sets | |||
| 2025-12-04 | feat(sync): Phase 1 MVP - single relay proactive sync | DanConwayDev | |
| - Add src/sync/ module with SyncManager - Add NGIT_SYNC_RELAY_URL config option - Subscribe to kind 30617 on configured relay - Validate synced events through Nip34WritePolicy - Integration test with two TestRelay instances | |||