@@ -69,18 +69,23 @@ export function WebsiteChannelHome({ channelId }: { channelId: string }) {
6969 const { tasks, isLoading : isLoadingFeed } = useChannelFeed (
7070 backendChannel ?. id ,
7171 ) ;
72- // Until the backend channel resolves there's no feed to ask for, and the feed
73- // query is disabled — which reports isLoading:false, indistinguishable from
74- // "this channel is empty". useBackendChannel reports loading for the whole
75- // identity-resolution window (settling if the resolve fails), so fold it in:
76- // we can't call a channel empty until we know which channel it is.
77- const isLoading = isLoadingChannels || isResolvingChannel || isLoadingFeed ;
7872 // Marking this channel read lives in ChannelHeader (rendered by every channel
7973 // surface), so opening Artifacts or CONTEXT.md counts as reading it too.
8074
8175 // Durable "PostHog agent" rows (CONTEXT.md being built, …) live on the
8276 // backend channel — the same id the feed tasks use, not the folder id.
83- const { messages : feedMessages } = useChannelFeedMessages ( backendChannel ?. id ) ;
77+ const { messages : feedMessages , isLoading : isLoadingMessages } =
78+ useChannelFeedMessages ( backendChannel ?. id ) ;
79+ // Until the backend channel resolves there's no feed to ask for, and the feed
80+ // query is disabled — which reports isLoading:false, indistinguishable from
81+ // "this channel is empty". useBackendChannel reports loading for the whole
82+ // identity-resolution window (settling if the resolve fails), so fold it in:
83+ // we can't call a channel empty until we know which channel it is.
84+ const isLoading =
85+ isLoadingChannels ||
86+ isResolvingChannel ||
87+ isLoadingFeed ||
88+ isLoadingMessages ;
8489 // The Slack-style "joined" opener, derived from the channel row so it renders
8590 // (and sorts first) even where the feed endpoint isn't deployed.
8691 const systemMessages = useMemo ( ( ) => {
0 commit comments