fix: trigger feed initial fetch when cache pre-populates galleries
FeedTabContent's .task guarded loadInitial on galleries.isEmpty, but
FeedViewModel.init loads cached galleries synchronously — so on a warm
cache the guard was false and the fresh fetch never ran. cursor stayed
nil and loadMore silently no-oped on its cursor guard, breaking
infinite scroll until the user pulled to refresh. Switch the guard to
!hasFetchedInitial, which the viewmodel already tracks for exactly
this case.
authored by