diff --git a/keyserver/src/fetchers/thread-fetchers.js b/keyserver/src/fetchers/thread-fetchers.js
--- a/keyserver/src/fetchers/thread-fetchers.js
+++ b/keyserver/src/fetchers/thread-fetchers.js
@@ -162,34 +162,11 @@
   return rawThreadInfosFromServerThreadInfos(viewer, serverResult);
 }
 
-const shimCommunityRoot = {
-  [threadTypes.COMMUNITY_ROOT]: threadTypes.COMMUNITY_SECRET_SUBTHREAD,
-  [threadTypes.COMMUNITY_ANNOUNCEMENT_ROOT]:
-    threadTypes.COMMUNITY_SECRET_SUBTHREAD,
-  [threadTypes.COMMUNITY_OPEN_ANNOUNCEMENT_SUBTHREAD]:
-    threadTypes.COMMUNITY_OPEN_SUBTHREAD,
-  [threadTypes.COMMUNITY_SECRET_ANNOUNCEMENT_SUBTHREAD]:
-    threadTypes.COMMUNITY_SECRET_SUBTHREAD,
-  [threadTypes.GENESIS]: threadTypes.COMMUNITY_SECRET_SUBTHREAD,
-};
-
 function rawThreadInfosFromServerThreadInfos(
   viewer: Viewer,
   serverResult: FetchServerThreadInfosResult,
 ): FetchThreadInfosResult {
   const viewerID = viewer.id;
-  const codeVersionBelow70 = !hasMinCodeVersion(viewer.platformDetails, {
-    native: 70,
-  });
-  const codeVersionBelow87 = !hasMinCodeVersion(viewer.platformDetails, {
-    native: 87,
-  });
-  const codeVersionBelow102 = !hasMinCodeVersion(viewer.platformDetails, {
-    native: 102,
-  });
-  const codeVersionBelow104 = !hasMinCodeVersion(viewer.platformDetails, {
-    native: 104,
-  });
   const codeVersionBelow209 = !hasMinCodeVersion(viewer.platformDetails, {
     native: 209,
   });
@@ -207,11 +184,6 @@
       serverThreadInfo,
       viewerID,
       {
-        includeVisibilityRules: codeVersionBelow70,
-        filterMemberList: codeVersionBelow70,
-        shimThreadTypes: codeVersionBelow87 ? shimCommunityRoot : null,
-        hideThreadStructure: codeVersionBelow102,
-        filterDetailedThreadEditPermissions: codeVersionBelow104,
         filterThreadEditAvatarPermission: codeVersionBelow213,
         excludePinInfo: codeVersionBelow209,
         filterManageInviteLinksPermission: codeVersionBelow221,
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
@@ -699,13 +699,6 @@
 }
 
 type RawThreadInfoOptions = {
-  +includeVisibilityRules?: ?boolean,
-  +filterMemberList?: ?boolean,
-  +hideThreadStructure?: ?boolean,
-  +shimThreadTypes?: ?{
-    +[inType: ThreadType]: ThreadType,
-  },
-  +filterDetailedThreadEditPermissions?: boolean,
   +filterThreadEditAvatarPermission?: boolean,
   +excludePinInfo?: boolean,
   +filterManageInviteLinksPermission?: boolean,
@@ -715,12 +708,6 @@
   viewerID: string,
   options?: RawThreadInfoOptions,
 ): ?RawThreadInfo {
-  const includeVisibilityRules = options?.includeVisibilityRules;
-  const filterMemberList = options?.filterMemberList;
-  const hideThreadStructure = options?.hideThreadStructure;
-  const shimThreadTypes = options?.shimThreadTypes;
-  const filterDetailedThreadEditPermissions =
-    options?.filterDetailedThreadEditPermissions;
   const filterThreadEditAvatarPermission =
     options?.filterThreadEditAvatarPermission;
   const excludePinInfo = options?.excludePinInfo;
@@ -729,11 +716,6 @@
 
   const filterThreadPermissions = _omitBy(
     (v, k) =>
-      (filterDetailedThreadEditPermissions &&
-        [
-          threadPermissions.EDIT_THREAD_COLOR,
-          threadPermissions.EDIT_THREAD_DESCRIPTION,
-        ].includes(k)) ||
       (filterThreadEditAvatarPermission &&
         [
           threadPermissions.EDIT_THREAD_AVATAR,
@@ -753,14 +735,6 @@
   const members = [];
   let currentUser;
   for (const serverMember of serverThreadInfo.members) {
-    if (
-      filterMemberList &&
-      serverMember.id !== viewerID &&
-      !serverMember.role &&
-      !memberHasAdminPowers(serverMember)
-    ) {
-      continue;
-    }
     if (
       serverThreadInfo.id === genesis.id &&
       serverMember.id !== viewerID &&
@@ -808,15 +782,6 @@
     return null;
   }
 
-  let { type } = serverThreadInfo;
-  if (
-    shimThreadTypes &&
-    shimThreadTypes[type] !== null &&
-    shimThreadTypes[type] !== undefined
-  ) {
-    type = shimThreadTypes[type];
-  }
-
   const rolesWithFilteredThreadPermissions = _mapValues(role => ({
     ...role,
     permissions: filterThreadPermissions(role.permissions),
@@ -824,7 +789,7 @@
 
   let rawThreadInfo: any = {
     id: serverThreadInfo.id,
-    type,
+    type: serverThreadInfo.type,
     name: serverThreadInfo.name,
     description: serverThreadInfo.description,
     color: serverThreadInfo.color,
@@ -834,14 +799,9 @@
     roles: rolesWithFilteredThreadPermissions,
     currentUser,
     repliesCount: serverThreadInfo.repliesCount,
+    containingThreadID: serverThreadInfo.containingThreadID,
+    community: serverThreadInfo.community,
   };
-  if (!hideThreadStructure) {
-    rawThreadInfo = {
-      ...rawThreadInfo,
-      containingThreadID: serverThreadInfo.containingThreadID,
-      community: serverThreadInfo.community,
-    };
-  }
   const sourceMessageID = serverThreadInfo.sourceMessageID;
   if (sourceMessageID) {
     rawThreadInfo = { ...rawThreadInfo, sourceMessageID };
@@ -849,12 +809,6 @@
   if (serverThreadInfo.avatar) {
     rawThreadInfo = { ...rawThreadInfo, avatar: serverThreadInfo.avatar };
   }
-  if (includeVisibilityRules) {
-    return {
-      ...rawThreadInfo,
-      visibilityRules: rawThreadInfo.type,
-    };
-  }
   if (!excludePinInfo) {
     return {
       ...rawThreadInfo,