Commit Graph
20 Commits
Author SHA1 Message Date
google-labs-jules[bot]andPR0M3TH3AN 5b69722f72 Improve relay selection and fault tolerance for list fetching
- Updated `NostrClient.fetchListIncrementally` to prioritize user's NIP-65 read relays, cap concurrent requests, and temporarily mark failing relays as unreachable.
- Added `markRelayUnreachable` to `NostrClient` for temporary relay exclusion.
- Updated `SubscriptionsManager`, `HashtagPreferencesService`, and `UserBlockListManager` to use `relayManager.getReadRelayUrls()` for selecting relays, ensuring consistency with user preferences.
- Added structured logging for relay selection in `fetchListIncrementally`.
- Updated unit tests to mock `relayManager` behavior correctly.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-27 22:54:31 +00:00
thePR0M3TH3AN 5123944a7d update 2026-01-26 13:23:11 -05:00
thePR0M3TH3AN 27b71ba9bb Revert "perf(profile): implement stale-while-revalidate for lists and messages" 2026-01-26 13:18:51 -05:00
google-labs-jules[bot] d61074e200 perf(profile): implement stale-while-revalidate for lists and messages 2026-01-26 18:16:45 +00:00
google-labs-jules[bot] 1d8ab920ce Fix inconsistent subscriptions loading with persistent caching
Implements a stale-while-revalidate strategy for the SubscriptionsManager.
- Loads subscriptions from localStorage immediately to show UI state.
- Fetches fresh data from relays in the background.
- Preserves cached data if relays fail or return empty results (preventing "No subscriptions found" errors).
- Updates cache optimistically on subscribe/unsubscribe actions.
2026-01-16 16:18:02 +00:00
google-labs-jules[bot] d9c6cce97d Update subscription manager tests to remove legacy kind requirement
- Modified `tests/subscriptions-manager.test.mjs` to remove the assertion for legacy Kind 30002 support.
- Updated the test to verify that only the current `SUBSCRIPTION_SET_KIND` (30000) is queried.
- Fixed JSDOM `navigator` mocking in the test file to resolve `TypeError: Cannot set property navigator...` errors.
- Verified all tests pass with the new implementation.
2026-01-14 04:17:13 +00:00
thePR0M3TH3AN 3996986e63 Remove nostr shim and retarget imports 2026-01-06 15:32:21 -05:00
thePR0M3TH3AN 7db78b07f2 Restore legacy subscription list compatibility 2025-11-03 09:42:17 -05:00
thePR0M3TH3AN 2fae0a0e7c Update subscription and block lists to encrypted tag arrays 2025-10-30 15:51:21 -04:00
thePR0M3TH3AN bd40bd1997 Prefer nip44.v2 for private lists and update tests 2025-10-30 10:20:08 -04:00
thePR0M3TH3AN 078c8788b3 Add ensureLoaded helper for subscriptions and align error UX 2025-10-26 14:16:51 -04:00
thePR0M3TH3AN ba6b56dc26 Switch moderation hide flows to block 2025-10-25 21:54:31 -04:00
thePR0M3TH3AN 7d3a4fbd49 Wire moderation handlers for subscriptions list 2025-10-25 20:29:33 -04:00
thePR0M3TH3AN 36f5f8960a Allow direct signers to load and publish subscriptions offline 2025-10-21 21:43:04 -04:00
thePR0M3TH3AN d7405883d2 Ensure subscription publishing targets configured write relays 2025-10-20 22:59:29 -04:00
thePR0M3TH3AN c48a138785 Handle nip44.v2 subscription lists 2025-10-20 21:56:30 -04:00
thePR0M3TH3AN d7d12c3b74 Support nip44 subscription list decryption 2025-10-20 21:56:18 -04:00
thePR0M3TH3AN 2322b19a3f Improve subscriptions empty state rendering 2025-10-20 21:39:08 -04:00
thePR0M3TH3AN 34ef65db7b Gate subscriptions feed on nostr warmup 2025-10-18 22:37:10 -04:00
thePR0M3TH3AN b29e196a5c Parallelize subscription relay fetches 2025-10-18 21:41:21 -04:00