upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/src/discovery.rs
AgeCommit message (Collapse)Author
9 daysFix discovery: use separate client with only index relaysYour Name
fetch_events_from requires relays in pool; use dedicated client with only working relays and fetch_events for reliable queries.
9 daysFix discovery: use fetch_events_from with index_relays onlyYour Name
The nostr-sdk pool fetch_events returns empty when most relays are dead. Target only the known-working index relays for discovery queries.
9 daysFix discovery: wait for relay connections, add per-npub logging, suppress ↵Your Name
relay pool spam
10 daysfeat: initial implementation of grasp-mirror daemonYour Name
GRASP mirror daemon that discovers repos from watched npubs and mirrors git data + Nostr events across all known GRASP servers for redundancy. Features: - Configurable npub watch list via .env (MIRROR_NPUBS) - TOML config for GRASP server list, index relays, storage paths - NIP-11 verification of GRASP servers on startup - Discovery of repos via kind:30617 announcements on index relays - Git mirroring (bare clone + push --mirror) to missing GRASP servers - Nostr event forwarding to all GRASP server embedded relays - SQLite state tracking for sync status and event dedup - Optional signing key for updating announcements with new clone URLs - CLI subcommands: daemon, status, verify, mirror-once Architecture: config.rs - TOML + .env config loading db.rs - SQLite state tracking health.rs - NIP-11 GRASP server verification discovery.rs - Relay subscription, kind:30617 parsing git_mirror.rs - Bare clone + push to GRASP servers nostr_mirror.rs - Event forwarding to all GRASP relays signing.rs - Optional announcement updates main.rs - CLI entry point, daemon loop