diff --git a/lib/components/keyserver-connection-handler.js b/lib/components/keyserver-connection-handler.js
--- a/lib/components/keyserver-connection-handler.js
+++ b/lib/components/keyserver-connection-handler.js
@@ -29,7 +29,6 @@
 
 type Props = {
   ...BaseSocketProps,
-  +keyserverID: string,
   +socketComponent: React.ComponentType<BaseSocketProps>,
 };
 
@@ -37,7 +36,8 @@
 const CANCELLED_ERROR = 'cancelled';
 
 function KeyserverConnectionHandler(props: Props) {
-  const { socketComponent: Socket, keyserverID, ...rest } = props;
+  const { socketComponent: Socket, ...socketProps } = props;
+  const { keyserverID } = props;
 
   const dispatchActionPromise = useDispatchActionPromise();
   const callLogOut = useLogOut();
@@ -226,7 +226,7 @@
   if (keyserverID !== ashoatKeyserverID) {
     return null;
   }
-  return <Socket {...rest} />;
+  return <Socket {...socketProps} />;
 }
 
 const Handler: React.ComponentType<Props> = React.memo<Props>(
diff --git a/lib/components/keyserver-connections-handler.js b/lib/components/keyserver-connections-handler.js
--- a/lib/components/keyserver-connections-handler.js
+++ b/lib/components/keyserver-connections-handler.js
@@ -6,8 +6,10 @@
 import { type BaseSocketProps } from '../socket/socket.react.js';
 import { useSelector } from '../utils/redux-utils.js';
 
+type BaseProps = $ReadOnly<$Diff<BaseSocketProps, { +keyserverID: string }>>;
+
 type Props = {
-  ...BaseSocketProps,
+  ...BaseProps,
   +socketComponent: React.ComponentType<BaseSocketProps>,
 };
 function KeyserverConnectionsHandler(props: Props): React.Node {
diff --git a/lib/socket/socket.react.js b/lib/socket/socket.react.js
--- a/lib/socket/socket.react.js
+++ b/lib/socket/socket.react.js
@@ -80,6 +80,7 @@
   clientRequestSocketTimeout - clientRequestVisualTimeout;
 
 export type BaseSocketProps = {
+  +keyserverID: string,
   +detectUnsupervisedBackgroundRef?: (
     detectUnsupervisedBackground: (alreadyClosed: boolean) => boolean,
   ) => void,