From ca8c494fc40ea43dadbbb25b426d9e6f053e69f1 Mon Sep 17 00:00:00 2001 From: Michelle Tang Date: Tue, 26 May 2026 11:43:39 -0400 Subject: [PATCH] Reset KT for username changes in storage service. --- .../org/thoughtcrime/securesms/storage/StorageSyncHelper.kt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/src/main/java/org/thoughtcrime/securesms/storage/StorageSyncHelper.kt b/app/src/main/java/org/thoughtcrime/securesms/storage/StorageSyncHelper.kt index 725e58b2fc..787b0f319c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/storage/StorageSyncHelper.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/storage/StorageSyncHelper.kt @@ -10,6 +10,7 @@ import org.signal.core.util.Util import org.signal.core.util.UuidUtil import org.signal.core.util.logging.Log import org.signal.core.util.toByteArray +import org.signal.libsignal.net.KeyTransparency import org.thoughtcrime.securesms.backup.v2.MessageBackupTier import org.thoughtcrime.securesms.components.settings.app.subscription.InAppPaymentsRepository.getSubscriber import org.thoughtcrime.securesms.components.settings.app.subscription.InAppPaymentsRepository.isUserManuallyCancelled @@ -17,8 +18,10 @@ import org.thoughtcrime.securesms.components.settings.app.subscription.InAppPaym import org.thoughtcrime.securesms.database.NotificationProfileTables import org.thoughtcrime.securesms.database.SignalDatabase import org.thoughtcrime.securesms.database.model.InAppPaymentSubscriberRecord +import org.thoughtcrime.securesms.database.model.KeyTransparencyStore import org.thoughtcrime.securesms.database.model.RecipientRecord import org.thoughtcrime.securesms.dependencies.AppDependencies +import org.thoughtcrime.securesms.dependencies.KeyTransparencyApi import org.thoughtcrime.securesms.jobs.RetrieveProfileAvatarJob import org.thoughtcrime.securesms.jobs.StorageSyncJob import org.thoughtcrime.securesms.keyvalue.AccountValues @@ -306,6 +309,9 @@ object StorageSyncHelper { SignalStore.account.username = update.new.proto.username SignalStore.account.usernameSyncState = AccountValues.UsernameSyncState.IN_SYNC SignalStore.account.usernameSyncErrorCount = 0 + + Log.i(TAG, "Resetting KT data due to username change in storage service.") + KeyTransparencyApi.reset(aci = SignalStore.account.requireAci().libSignalAci, field = KeyTransparency.AccountDataField.USERNAME_HASH, keyTransparencyStore = KeyTransparencyStore) } if (update.new.proto.usernameLink != null) {