mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-27 07:52:24 +00:00
Channel grid: always query bundled default relays (fix videos on nos.lol never showing)
Root cause of "a known video never shows on the channel": the video was a whitelisted creator's NIP-71 note that lives ONLY on nos.lol, but the channel fetch queried nostrClient.relays — the user's CAPPED NIP-65 read set — which dropped nos.lol, so we never queried the one relay that had it. Confirmed by per-relay probe: snort/damus/primal returned 0, nos.lol returned the 2 videos. loadUserVideos now unions the user's relays with DEFAULT_RELAY_URLS (nos.lol, damus, primal, snort) for the scoped channel fetch, so a creator's videos on any bundled default relay are found regardless of the read cap. Channel pages are a deliberate request for one creator, so the slightly wider fan-out is fine. Co-Authored-By: Claude Opus 4.8 <[email protected]>
This commit is contained in:
1 parent
31848a1e51
commit
8d331be1d5
1 file changed
+8
-1
@@ -5611,7 +5611,14 @@ async function loadUserVideos(pubkey) {
|
||||
const knownRelays = Array.isArray(nostrClient.relays)
|
||||
? nostrClient.relays
|
||||
: Array.from(nostrClient.relays || []);
|
||||
const relayList = knownRelays.filter((url) => isValidRelayUrl(url));
|
||||
// ALWAYS include the bundled defaults. A creator's videos can live only on
|
||||
// a default relay (e.g. a NIP-71 video that's only on nos.lol) that the
|
||||
// user's capped NIP-65 read set excludes — otherwise a known, whitelisted
|
||||
// video never shows on the channel because we never query the one relay
|
||||
// that has it.
|
||||
const relayList = [
|
||||
...new Set([...knownRelays, ...DEFAULT_RELAY_URLS]),
|
||||
].filter((url) => isValidRelayUrl(url));
|
||||
|
||||
// Route one fetch through the app's PROVEN path (the same one "My Videos"
|
||||
// uses on refresh). It streams into the shared cache, so this grid, its
|
||||
|
||||
Reference in new issue
Block a user