diff --git a/services/identity/src/client_service.rs b/services/identity/src/client_service.rs
--- a/services/identity/src/client_service.rs
+++ b/services/identity/src/client_service.rs
@@ -120,8 +120,7 @@
     let username_in_reserved_usernames_table = self
       .client
       .get_user_id_from_reserved_usernames_table(&message.username)
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .is_some();
 
     if username_in_reserved_usernames_table {
@@ -165,8 +164,7 @@
       .insert_workflow(WorkflowInProgress::Registration(Box::new(
         registration_state,
       )))
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = RegistrationStartResponse {
       session_id,
@@ -186,8 +184,7 @@
     let Some(original_username) = self
       .client
       .get_original_username_from_reserved_usernames_table(&message.username)
-      .await
-      .map_err(handle_db_error)?
+      .await?
     else {
       return Err(tonic::Status::permission_denied(
         tonic_status_messages::USERNAME_NOT_RESERVED,
@@ -226,8 +223,7 @@
       .insert_workflow(WorkflowInProgress::Registration(Box::new(
         registration_state,
       )))
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = RegistrationStartResponse {
       session_id,
@@ -244,11 +240,8 @@
     let platform_metadata = get_platform_metadata(&request)?;
     let message = request.into_inner();
 
-    if let Some(WorkflowInProgress::Registration(state)) = self
-      .client
-      .get_workflow(message.session_id)
-      .await
-      .map_err(handle_db_error)?
+    if let Some(WorkflowInProgress::Registration(state)) =
+      self.client.get_workflow(message.session_id).await?
     {
       let server_registration = comm_opaque2::server::Registration::new();
       let password_file = server_registration
@@ -266,8 +259,7 @@
           platform_metadata,
           login_time,
         )
-        .await
-        .map_err(handle_db_error)?;
+        .await?;
 
       // Create access token
       let token = AccessTokenData::with_created_time(
@@ -280,11 +272,7 @@
 
       let access_token = token.access_token.clone();
 
-      self
-        .client
-        .put_access_token_data(token)
-        .await
-        .map_err(handle_db_error)?;
+      self.client.put_access_token_data(token).await?;
 
       let response = AuthResponse {
         user_id,
@@ -310,8 +298,7 @@
     let user_id_and_password_file = self
       .client
       .get_user_info_and_password_file_from_username(&message.username)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let UserInfoAndPasswordFile {
       user_id,
@@ -328,8 +315,7 @@
       let username_in_reserved_usernames_table = self
         .client
         .get_user_id_from_reserved_usernames_table(&message.username)
-        .await
-        .map_err(handle_db_error)?
+        .await?
         .is_some();
 
       if username_in_reserved_usernames_table {
@@ -390,8 +376,7 @@
     let session_id = self
       .client
       .insert_workflow(WorkflowInProgress::Login(Box::new(login_state)))
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Response::new(OpaqueLoginStartResponse {
       session_id,
@@ -408,11 +393,8 @@
     let platform_metadata = get_platform_metadata(&request)?;
     let message = request.into_inner();
 
-    let Some(WorkflowInProgress::Login(state)) = self
-      .client
-      .get_workflow(message.session_id)
-      .await
-      .map_err(handle_db_error)?
+    let Some(WorkflowInProgress::Login(state)) =
+      self.client.get_workflow(message.session_id).await?
     else {
       return Err(tonic::Status::not_found(
         tonic_status_messages::SESSION_NOT_FOUND,
@@ -428,8 +410,7 @@
       self
         .client
         .remove_device(state.user_id.clone(), device_to_remove)
-        .await
-        .map_err(handle_db_error)?;
+        .await?;
     }
 
     let login_time = chrono::Utc::now();
@@ -441,8 +422,7 @@
         platform_metadata,
         login_time,
       )
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     // Create access token
     let token = AccessTokenData::with_created_time(
@@ -455,11 +435,7 @@
 
     let access_token = token.access_token.clone();
 
-    self
-      .client
-      .put_access_token_data(token)
-      .await
-      .map_err(handle_db_error)?;
+    self.client.put_access_token_data(token).await?;
 
     let response = AuthResponse {
       user_id: state.user_id,
@@ -502,8 +478,7 @@
     let user_id = if let Some(user_id) = self
       .client
       .get_user_id_from_user_info(wallet_address.clone(), &AuthType::Wallet)
-      .await
-      .map_err(handle_db_error)?
+      .await?
     {
       self
         .check_device_id_taken(&flattened_device_key_upload, Some(&user_id))
@@ -517,16 +492,14 @@
           platform_metadata,
           login_time,
         )
-        .await
-        .map_err(handle_db_error)?;
+        .await?;
 
       user_id
     } else {
       let Some(user_id) = self
         .client
         .get_user_id_from_reserved_usernames_table(&wallet_address)
-        .await
-        .map_err(handle_db_error)?
+        .await?
       else {
         return Err(tonic::Status::not_found(
           tonic_status_messages::USER_NOT_FOUND,
@@ -564,8 +537,7 @@
           message.farcaster_id,
           None,
         )
-        .await
-        .map_err(handle_db_error)?;
+        .await?;
 
       user_id
     };
@@ -581,11 +553,7 @@
 
     let access_token = token.access_token.clone();
 
-    self
-      .client
-      .put_access_token_data(token)
-      .await
-      .map_err(handle_db_error)?;
+    self.client.put_access_token_data(token).await?;
 
     let response = AuthResponse {
       user_id,
@@ -617,8 +585,7 @@
     let username_in_reserved_usernames_table = self
       .client
       .get_user_id_from_reserved_usernames_table(&wallet_address)
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .is_some();
 
     if username_in_reserved_usernames_table {
@@ -655,8 +622,7 @@
         message.farcaster_id,
         initial_device_list,
       )
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     // Create access token
     let token = AccessTokenData::with_created_time(
@@ -669,11 +635,7 @@
 
     let access_token = token.access_token.clone();
 
-    self
-      .client
-      .put_access_token_data(token)
-      .await
-      .map_err(handle_db_error)?;
+    self.client.put_access_token_data(token).await?;
 
     let response = AuthResponse {
       user_id,
@@ -790,17 +752,13 @@
     let user_identity = self
       .client
       .get_user_identity(&user_id)
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .ok_or_else(|| {
         tonic::Status::not_found(tonic_status_messages::USER_NOT_FOUND)
       })?;
 
-    let Some(device_list) = self
-      .client
-      .get_current_device_list(&user_id)
-      .await
-      .map_err(handle_db_error)?
+    let Some(device_list) =
+      self.client.get_current_device_list(&user_id).await?
     else {
       warn!("User {} does not have valid device list. Secondary device auth impossible.", redact_sensitive_data(&user_id));
       return Err(tonic::Status::aborted(
@@ -825,11 +783,7 @@
       &mut OsRng,
     );
     let access_token = token.access_token.clone();
-    self
-      .client
-      .put_access_token_data(token)
-      .await
-      .map_err(handle_db_error)?;
+    self.client.put_access_token_data(token).await?;
 
     self
       .client
@@ -839,8 +793,7 @@
         platform_metadata,
         login_time,
       )
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = AuthResponse {
       user_id,
@@ -868,20 +821,17 @@
       self.client.get_user_identity(&user_id),
       self.client.get_current_device_list(&user_id)
     );
-    let user_identity =
-      identity_response.map_err(handle_db_error)?.ok_or_else(|| {
-        tonic::Status::not_found(tonic_status_messages::USER_NOT_FOUND)
-      })?;
-
-    let device_list = device_list_response
-      .map_err(handle_db_error)?
-      .ok_or_else(|| {
-        warn!(
-          "User {} does not have a valid device list.",
-          redact_sensitive_data(&user_id)
-        );
-        tonic::Status::aborted(tonic_status_messages::DEVICE_LIST_ERROR)
-      })?;
+    let user_identity = identity_response?.ok_or_else(|| {
+      tonic::Status::not_found(tonic_status_messages::USER_NOT_FOUND)
+    })?;
+
+    let device_list = device_list_response?.ok_or_else(|| {
+      warn!(
+        "User {} does not have a valid device list.",
+        redact_sensitive_data(&user_id)
+      );
+      tonic::Status::aborted(tonic_status_messages::DEVICE_LIST_ERROR)
+    })?;
 
     if !device_list.device_ids.contains(&device_id) {
       return Err(tonic::Status::permission_denied(
@@ -900,11 +850,7 @@
       &mut OsRng,
     );
     let access_token = token.access_token.clone();
-    self
-      .client
-      .put_access_token_data(token)
-      .await
-      .map_err(handle_db_error)?;
+    self.client.put_access_token_data(token).await?;
 
     let response = AuthResponse {
       user_id,
@@ -920,16 +866,15 @@
     _request: tonic::Request<Empty>,
   ) -> Result<tonic::Response<GenerateNonceResponse>, tonic::Status> {
     let nonce_data = generate_nonce_data(&mut OsRng);
-    match self
+    self
       .client
       .add_nonce_to_nonces_table(nonce_data.clone())
-      .await
-    {
-      Ok(_) => Ok(Response::new(GenerateNonceResponse {
-        nonce: nonce_data.nonce,
-      })),
-      Err(e) => Err(handle_db_error(e)),
-    }
+      .await?;
+
+    let response = GenerateNonceResponse {
+      nonce: nonce_data.nonce,
+    };
+    Ok(Response::new(response))
   }
 
   #[tracing::instrument(skip_all)]
@@ -947,8 +892,7 @@
         message.device_id.clone(),
         message.access_token,
       )
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Response::new(VerifyUserAccessTokenResponse { token_valid });
     debug!(
@@ -970,17 +914,13 @@
       &message.signature,
     )?;
 
-    let filtered_user_details = self
-      .client
-      .filter_out_taken_usernames(user_details)
-      .await
-      .map_err(handle_db_error)?;
+    let filtered_user_details =
+      self.client.filter_out_taken_usernames(user_details).await?;
 
     self
       .client
       .add_usernames_to_reserved_usernames_table(filtered_user_details)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Response::new(Empty {});
     Ok(response)
@@ -1001,8 +941,7 @@
     self
       .client
       .delete_username_from_reserved_usernames_table(username)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Response::new(Empty {});
     Ok(response)
@@ -1043,10 +982,9 @@
         .client
         .get_user_id_from_user_info(user_ident.clone(), &auth_type),
     );
-    let is_reserved = get_user_id_from_reserved_usernames_table_result
-      .map_err(handle_db_error)?
-      .is_some();
-    let user_id = user_id_result.map_err(handle_db_error)?;
+    let is_reserved =
+      get_user_id_from_reserved_usernames_table_result?.is_some();
+    let user_id = user_id_result?;
 
     Ok(Response::new(FindUserIdResponse {
       user_id,
@@ -1064,8 +1002,7 @@
     let farcaster_users = self
       .client
       .get_farcaster_users(message.farcaster_ids)
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .into_iter()
       .map(|d| d.0)
       .collect();
@@ -1079,11 +1016,8 @@
     &self,
     username: &str,
   ) -> Result<(), tonic::Status> {
-    let username_taken = self
-      .client
-      .username_taken(username.to_string())
-      .await
-      .map_err(handle_db_error)?;
+    let username_taken =
+      self.client.username_taken(username.to_string()).await?;
     if username_taken {
       return Err(tonic::Status::already_exists(
         tonic_status_messages::USERNAME_ALREADY_EXISTS,
@@ -1099,8 +1033,7 @@
     let wallet_address_taken = self
       .client
       .wallet_address_taken(wallet_address.to_string())
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
     if wallet_address_taken {
       return Err(tonic::Status::already_exists(
         tonic_status_messages::WALLET_ADDRESS_TAKEN,
@@ -1116,8 +1049,7 @@
     let fid_already_registered = !self
       .client
       .get_farcaster_users(vec![farcaster_id.to_string()])
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .is_empty();
     if fid_already_registered {
       return Err(tonic::Status::already_exists(
@@ -1133,11 +1065,8 @@
     requesting_user_id: Option<&str>,
   ) -> Result<(), tonic::Status> {
     let device_id = key_upload.device_id_key.as_str();
-    let Some(existing_device_user_id) = self
-      .client
-      .find_user_id_for_device(device_id)
-      .await
-      .map_err(handle_db_error)?
+    let Some(existing_device_user_id) =
+      self.client.find_user_id_for_device(device_id).await?
     else {
       // device ID doesn't exist
       return Ok(());
@@ -1165,12 +1094,7 @@
     &self,
     nonce: &str,
   ) -> Result<(), tonic::Status> {
-    match self
-      .client
-      .get_nonce_from_nonces_table(nonce)
-      .await
-      .map_err(handle_db_error)?
-    {
+    match self.client.get_nonce_from_nonces_table(nonce).await? {
       None => {
         return Err(tonic::Status::invalid_argument(
           tonic_status_messages::INVALID_NONCE,
@@ -1183,11 +1107,12 @@
           tonic_status_messages::NONCE_EXPIRED,
         ));
       }
-      Some(nonce_data) => self
-        .client
-        .remove_nonce_from_nonces_table(&nonce_data.nonce)
-        .await
-        .map_err(handle_db_error)?,
+      Some(nonce_data) => {
+        self
+          .client
+          .remove_nonce_from_nonces_table(&nonce_data.nonce)
+          .await?
+      }
     };
     Ok(())
   }
@@ -1206,8 +1131,7 @@
     let maybe_keyserver_device_id = self
       .client
       .get_keyserver_device_id_for_user(user_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let Some(existing_keyserver_device_id) = maybe_keyserver_device_id else {
       return Ok(None);
@@ -1405,8 +1329,7 @@
     notif_prekey: message.notif_prekey()?,
     notif_prekey_signature: message.notif_prekey_signature()?,
     notif_one_time_keys: message.one_time_notif_prekeys()?,
-    device_type: DeviceType::try_from(DBDeviceTypeInt(message.device_type()?))
-      .map_err(handle_db_error)?,
+    device_type: DeviceType::try_from(DBDeviceTypeInt(message.device_type()?))?,
   };
 
   Ok(flattened_device_key_upload)
diff --git a/services/identity/src/grpc_services/authenticated.rs b/services/identity/src/grpc_services/authenticated.rs
--- a/services/identity/src/grpc_services/authenticated.rs
+++ b/services/identity/src/grpc_services/authenticated.rs
@@ -16,7 +16,7 @@
 use comm_lib::auth::AuthService;
 use comm_opaque2::grpc::protocol_error_to_grpc_status;
 use tonic::{Request, Response, Status};
-use tracing::{debug, error, trace, warn};
+use tracing::{debug, error, trace};
 
 use super::protos::auth::{
   identity_client_service_server::IdentityClientService,
@@ -67,13 +67,11 @@
   // This function cannot be `async`, yet must call the async db call
   // Force tokio to resolve future in current thread without an explicit .await
   let valid_token = tokio::task::block_in_place(move || {
-    handle
-      .block_on(new_db_client.verify_access_token(
-        user_id,
-        device_id,
-        access_token,
-      ))
-      .map_err(handle_db_error)
+    handle.block_on(new_db_client.verify_access_token(
+      user_id,
+      device_id,
+      access_token,
+    ))
   })?;
 
   if !valid_token {
@@ -145,8 +143,7 @@
         content_key.into(),
         notif_key.into(),
       )
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Response::new(Empty {});
     Ok(response)
@@ -163,8 +160,7 @@
     let devices_map = self
       .db_client
       .get_keys_for_user(user_id, true)
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .ok_or_else(|| {
         tonic::Status::not_found(tonic_status_messages::USER_NOT_FOUND)
       })?;
@@ -204,8 +200,7 @@
     let identifier = self
       .db_client
       .get_user_identity(user_id)
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .ok_or_else(|| {
         tonic::Status::not_found(tonic_status_messages::USER_NOT_FOUND)
       })?;
@@ -226,8 +221,7 @@
     let identifier = self
       .db_client
       .get_user_identity(&message.user_id)
-      .await
-      .map_err(handle_db_error)?
+      .await?
       .ok_or_else(|| {
         tonic::Status::not_found(tonic_status_messages::USER_NOT_FOUND)
       })?;
@@ -235,8 +229,7 @@
     let Some(keyserver_info) = self
       .db_client
       .get_keyserver_keys_for_user(&message.user_id)
-      .await
-      .map_err(handle_db_error)?
+      .await?
     else {
       return Err(Status::not_found(
         tonic_status_messages::KEYSERVER_NOT_FOUND,
@@ -246,8 +239,7 @@
     let primary_device_data = self
       .db_client
       .get_primary_device_data(&message.user_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
     let primary_device_keys = primary_device_data.device_key_info;
 
     let response = Response::new(KeyserverKeysResponse {
@@ -276,8 +268,7 @@
         &message.content_one_time_prekeys,
         &message.notif_one_time_prekeys,
       )
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     Ok(tonic::Response::new(Empty {}))
   }
@@ -293,8 +284,7 @@
     let Some((username, password_file)) = self
       .db_client
       .get_username_and_password_file(&user_id)
-      .await
-      .map_err(handle_db_error)?
+      .await?
     else {
       return Err(tonic::Status::permission_denied(
         tonic_status_messages::WALLET_USER,
@@ -326,8 +316,7 @@
     let session_id = self
       .db_client
       .insert_workflow(WorkflowInProgress::Update(Box::new(update_state)))
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = UpdateUserPasswordStartResponse {
       session_id,
@@ -346,11 +335,8 @@
 
     let message = request.into_inner();
 
-    let Some(WorkflowInProgress::Update(state)) = self
-      .db_client
-      .get_workflow(message.session_id)
-      .await
-      .map_err(handle_db_error)?
+    let Some(WorkflowInProgress::Update(state)) =
+      self.db_client.get_workflow(message.session_id).await?
     else {
       return Err(tonic::Status::not_found(
         tonic_status_messages::SESSION_NOT_FOUND,
@@ -370,8 +356,7 @@
     self
       .db_client
       .update_user_password(user_id, password_file)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Empty {};
     Ok(Response::new(response))
@@ -384,23 +369,17 @@
   ) -> Result<tonic::Response<Empty>, tonic::Status> {
     let (user_id, device_id) = get_user_and_device_id(&request)?;
 
-    self
-      .db_client
-      .remove_device(&user_id, &device_id)
-      .await
-      .map_err(handle_db_error)?;
+    self.db_client.remove_device(&user_id, &device_id).await?;
 
     self
       .db_client
       .delete_otks_table_rows_for_user_device(&user_id, &device_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     self
       .db_client
       .delete_access_token_data(&user_id, &device_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let device_list = self
       .db_client
@@ -485,15 +464,10 @@
         // on our own. (Side effect would skip the primary device).
         false,
       )
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     debug!(user_id, "Attempting to delete user's access tokens");
-    self
-      .db_client
-      .delete_all_tokens_for_user(&user_id)
-      .await
-      .map_err(handle_db_error)?;
+    self.db_client.delete_all_tokens_for_user(&user_id).await?;
 
     // We must delete the one-time keys first because doing so requires device
     // IDs from the devices table
@@ -501,15 +475,13 @@
     self
       .db_client
       .delete_otks_table_rows_for_user(&user_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     debug!(user_id, "Attempting to delete user's devices");
     let device_ids = self
       .db_client
       .delete_devices_data_for_user(&user_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     spawn_delete_tunnelbroker_data_task(device_ids);
 
@@ -539,14 +511,12 @@
     self
       .db_client
       .delete_access_token_data(&user_id, &device_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     self
       .db_client
       .delete_otks_table_rows_for_user_device(&user_id, &device_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     spawn_delete_tunnelbroker_data_task([device_id].into());
 
@@ -566,8 +536,7 @@
     let user_is_password_authenticated = self
       .db_client
       .user_is_password_authenticated(&user_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     if user_is_password_authenticated {
       return Err(tonic::Status::permission_denied(
@@ -575,11 +544,7 @@
       ));
     }
 
-    let device_ids = self
-      .db_client
-      .delete_user(user_id.clone())
-      .await
-      .map_err(handle_db_error)?;
+    let device_ids = self.db_client.delete_user(user_id.clone()).await?;
     spawn_delete_tunnelbroker_data_task(device_ids);
     spawn_delete_backup_data_task(user_id, self.comm_auth_service.clone());
 
@@ -600,8 +565,7 @@
     let maybe_username_and_password_file = self
       .db_client
       .get_username_and_password_file(&user_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let Some((username, password_file_bytes)) =
       maybe_username_and_password_file
@@ -628,8 +592,7 @@
       .insert_workflow(WorkflowInProgress::PasswordUserDeletion(Box::new(
         delete_state,
       )))
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Response::new(DeletePasswordUserStartResponse {
       session_id,
@@ -647,11 +610,8 @@
     let message = request.into_inner();
 
     debug!("Attempting to finish deleting password user: {}", user_id);
-    let Some(WorkflowInProgress::PasswordUserDeletion(state)) = self
-      .db_client
-      .get_workflow(message.session_id)
-      .await
-      .map_err(handle_db_error)?
+    let Some(WorkflowInProgress::PasswordUserDeletion(state)) =
+      self.db_client.get_workflow(message.session_id).await?
     else {
       return Err(tonic::Status::not_found(
         tonic_status_messages::SESSION_NOT_FOUND,
@@ -663,11 +623,7 @@
       .finish(&message.opaque_login_upload)
       .map_err(protocol_error_to_grpc_status)?;
 
-    let device_ids = self
-      .db_client
-      .delete_user(user_id.clone())
-      .await
-      .map_err(handle_db_error)?;
+    let device_ids = self.db_client.delete_user(user_id.clone()).await?;
     spawn_delete_tunnelbroker_data_task(device_ids);
     spawn_delete_backup_data_task(user_id, self.comm_auth_service.clone());
 
@@ -698,8 +654,7 @@
     let mut db_result = self
       .db_client
       .get_device_list_history(user_id, since)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     // these should be sorted already, but just in case
     db_result.sort_by_key(|list| list.timestamp);
@@ -734,11 +689,8 @@
     );
 
     // 1. Fetch device lists
-    let device_lists = self
-      .db_client
-      .get_current_device_lists(user_ids)
-      .await
-      .map_err(handle_db_error)?;
+    let device_lists =
+      self.db_client.get_current_device_lists(user_ids).await?;
     trace!("Found device lists for {} users", device_lists.keys().len());
 
     // 2. Fetch platform details
@@ -756,8 +708,7 @@
     let platform_details = self
       .db_client
       .get_devices_platform_details(flattened_user_device_ids)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
     trace!(
       "Found platform details for {} users",
       platform_details.keys().len()
@@ -808,8 +759,7 @@
     self
       .db_client
       .apply_devicelist_update(&user_id, update, Some(validator), true)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     Ok(Response::new(Empty {}))
   }
@@ -825,8 +775,7 @@
     let mut get_farcaster_users_response = self
       .db_client
       .get_farcaster_users(vec![message.farcaster_id.clone()])
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     if get_farcaster_users_response.len() > 1 {
       error!(
@@ -849,8 +798,7 @@
     self
       .db_client
       .add_farcaster_id(user_id, message.farcaster_id)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let response = Empty {};
     Ok(Response::new(response))
@@ -863,11 +811,7 @@
   ) -> Result<Response<Empty>, tonic::Status> {
     let (user_id, _) = get_user_and_device_id(&request)?;
 
-    self
-      .db_client
-      .remove_farcaster_id(user_id)
-      .await
-      .map_err(handle_db_error)?;
+    self.db_client.remove_farcaster_id(user_id).await?;
 
     let response = Empty {};
     Ok(Response::new(response))
@@ -884,8 +828,7 @@
     let users_table_results = self
       .db_client
       .find_db_user_identities(user_ids.clone())
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     // Look up only user IDs that haven't been found in users table
     let reserved_user_ids_to_query: Vec<String> = user_ids
@@ -895,8 +838,7 @@
     let reserved_user_identifiers = self
       .db_client
       .query_reserved_usernames_by_user_ids(reserved_user_ids_to_query)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     let identities = users_table_results
       .into_iter()
@@ -927,8 +869,7 @@
     self
       .db_client
       .update_device_platform_details(user_id, device_id, platform_details)
-      .await
-      .map_err(handle_db_error)?;
+      .await?;
 
     Ok(Response::new(Empty {}))
   }