mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-30 09:22:24 +00:00
loadUserVideos rendered only the live relay fetch, and the render REPLACES the grid container. So when a relay holding a creator's video transiently failed or EOSE'd late, that video disappeared from the wall even though it was already known in memory/cache — the "channel doesn't pull in all of a creator's videos" bug (#20, symptom 1). Union the live events with the already-known author events (mergeChannelVideoSources, live wins on id collision) before building the renderable list, so the rendered set is a superset and can't shrink on a transient relay gap. Existing dedupe-by-root + access/delete filtering still decide precedence downstream, so newer versions and deletions still win. Helper + tests live in channelProfileVideos.js (channelProfile.js is at its size cap); the call site stays net-zero. Streaming/first-relay-wins render is still the separate 17d UX follow-up. Regression: tests/channel-video-merge.test.mjs. Co-Authored-By: Claude Opus 4.8 <[email protected]>