diff --git a/lib/selectors/thread-selectors.js b/lib/selectors/thread-selectors.js
--- a/lib/selectors/thread-selectors.js
+++ b/lib/selectors/thread-selectors.js
@@ -45,6 +45,7 @@
 } from '../types/minimally-encoded-thread-permissions-types.js';
 import type { BaseAppState } from '../types/redux-types.js';
 import {
+  threadTypeIsThick,
   threadTypeIsCommunityRoot,
   type ThreadType,
   threadTypeIsSidebar,
@@ -452,7 +453,8 @@
       if (
         threadIsPending(threadID) ||
         (rawThreadInfo.parentThreadID !== genesis().id &&
-          !threadTypeIsSidebar(rawThreadInfo.type))
+          !threadTypeIsSidebar(rawThreadInfo.type) &&
+          !threadTypeIsThick(rawThreadInfo.type))
       ) {
         continue;
       }
diff --git a/lib/shared/thread-utils.js b/lib/shared/thread-utils.js
--- a/lib/shared/thread-utils.js
+++ b/lib/shared/thread-utils.js
@@ -1267,21 +1267,39 @@
       const { searching, userInfoInputArray } = params;
 
       const { sourceMessageID } = baseThreadInfo;
-      const pendingThreadID = searching
-        ? getPendingThreadID(
-            pendingThreadType(userInfoInputArray.length, 'thin'),
-            [...userInfoInputArray.map(user => user.id), viewerID],
-            sourceMessageID,
-          )
-        : getPendingThreadID(
-            baseThreadInfo.type,
-            baseThreadInfo.members.map(member => member.id),
-            sourceMessageID,
-          );
-
-      const realizedThreadID = pendingToRealizedThreadIDs.get(pendingThreadID);
-      if (realizedThreadID && threadInfos[realizedThreadID]) {
-        return threadInfos[realizedThreadID];
+
+      if (searching) {
+        const pendingThinThreadID = getPendingThreadID(
+          pendingThreadType(userInfoInputArray.length, 'thin'),
+          [...userInfoInputArray.map(user => user.id), viewerID],
+          sourceMessageID,
+        );
+        const realizedThinThreadID =
+          pendingToRealizedThreadIDs.get(pendingThinThreadID);
+        if (realizedThinThreadID && threadInfos[realizedThinThreadID]) {
+          return threadInfos[realizedThinThreadID];
+        }
+        const pendingThickThreadID = getPendingThreadID(
+          pendingThreadType(userInfoInputArray.length, 'thick'),
+          [...userInfoInputArray.map(user => user.id), viewerID],
+          sourceMessageID,
+        );
+        const realizedThickThreadID =
+          pendingToRealizedThreadIDs.get(pendingThickThreadID);
+        if (realizedThickThreadID && threadInfos[realizedThickThreadID]) {
+          return threadInfos[realizedThickThreadID];
+        }
+      } else {
+        const pendingThinThreadID = getPendingThreadID(
+          baseThreadInfo.type,
+          baseThreadInfo.members.map(member => member.id),
+          sourceMessageID,
+        );
+        const realizedThreadID =
+          pendingToRealizedThreadIDs.get(pendingThinThreadID);
+        if (realizedThreadID && threadInfos[realizedThreadID]) {
+          return threadInfos[realizedThreadID];
+        }
       }
 
       const updatedThread = searching