diff --git a/src/DeviceListener.ts b/src/DeviceListener.ts index f9904eaef1d..410f40add80 100644 --- a/src/DeviceListener.ts +++ b/src/DeviceListener.ts @@ -493,8 +493,6 @@ export default class DeviceListener extends TypedEventEmitter => { - if (!(await this.isKeyBackupUploadActive(logger))) { - dis.dispatch({ action: Action.ReportKeyBackupNotEnabled }); - } - }; - /** * Is key backup enabled? Use a cached answer if we have one. */ diff --git a/src/dispatcher/actions.ts b/src/dispatcher/actions.ts index 50f9c3497ad..49a3ce88685 100644 --- a/src/dispatcher/actions.ts +++ b/src/dispatcher/actions.ts @@ -229,12 +229,6 @@ export enum Action { */ PseudonymousAnalyticsReject = "pseudonymous_analytics_reject", - /** - * Fires after crypto is setup if key backup is not enabled - * Used to trigger auto rageshakes when configured - */ - ReportKeyBackupNotEnabled = "report_key_backup_not_enabled", - /** * Dispatched after leave room or space is finished */ diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index a5b5ec50cab..4f6fe35959d 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -1508,7 +1508,6 @@ "ask_to_join": "Enable ask to join", "automatic_debug_logs": "Automatically send debug logs on any error", "automatic_debug_logs_decryption": "Automatically send debug logs on decryption errors", - "automatic_debug_logs_key_backup": "Automatically send debug logs when key backup is not functioning", "beta_description": "What's next for %(brand)s? Labs are the best way to get things early, test out new features and help shape them before they actually launch.", "beta_feature": "This is a beta feature", "beta_feedback_leave_button": "To leave the beta, visit your settings.", diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx index 056e2707643..8c57e234ae1 100644 --- a/src/settings/Settings.tsx +++ b/src/settings/Settings.tsx @@ -352,7 +352,6 @@ export interface Settings { "developerMode": IBaseSetting; "automaticErrorReporting": IBaseSetting; "automaticDecryptionErrorReporting": IBaseSetting; - "automaticKeyBackNotEnabledReporting": IBaseSetting; "debug_scroll_panel": IBaseSetting; "debug_timeline_panel": IBaseSetting; "debug_registration": IBaseSetting; @@ -1320,11 +1319,6 @@ export const SETTINGS: Settings = { default: false, controller: new ReloadOnChangeController(), }, - "automaticKeyBackNotEnabledReporting": { - displayName: _td("labs|automatic_debug_logs_key_backup"), - supportedLevels: LEVELS_DEVICE_ONLY_SETTINGS_WITH_CONFIG, - default: false, - }, "debug_scroll_panel": { supportedLevels: LEVELS_DEVICE_ONLY_SETTINGS, default: false, diff --git a/src/stores/AutoRageshakeStore.ts b/src/stores/AutoRageshakeStore.ts index b7900012505..aeac62d5074 100644 --- a/src/stores/AutoRageshakeStore.ts +++ b/src/stores/AutoRageshakeStore.ts @@ -24,7 +24,6 @@ import defaultDispatcher from "../dispatcher/dispatcher"; import { AsyncStoreWithClient } from "./AsyncStoreWithClient"; import { type ActionPayload } from "../dispatcher/payloads"; import SettingsStore from "../settings/SettingsStore"; -import { Action } from "../dispatcher/actions"; // Minimum interval of 1 minute between reports const RAGESHAKE_INTERVAL = 60000; @@ -66,12 +65,7 @@ export default class AutoRageshakeStore extends AsyncStoreWithClient { return AutoRageshakeStore.internalInstance; } - protected async onAction(payload: ActionPayload): Promise { - switch (payload.action) { - case Action.ReportKeyBackupNotEnabled: - this.onReportKeyBackupNotEnabled(); - } - } + protected async onAction(_payload: ActionPayload): Promise {} protected async onReady(): Promise { if (!SettingsStore.getValue("automaticDecryptionErrorReporting")) return; @@ -187,16 +181,6 @@ export default class AutoRageshakeStore extends AsyncStoreWithClient { ); } } - - private async onReportKeyBackupNotEnabled(): Promise { - if (!SettingsStore.getValue("automaticKeyBackNotEnabledReporting")) return; - - await sendBugReport(SdkConfig.get().bug_report_endpoint_url, { - userText: `Auto-reporting key backup not enabled`, - sendLogs: true, - labels: ["web", Action.ReportKeyBackupNotEnabled], - }); - } } window.mxAutoRageshakeStore = AutoRageshakeStore.instance; diff --git a/test/unit-tests/DeviceListener-test.ts b/test/unit-tests/DeviceListener-test.ts index 153739dea60..4810d82001f 100644 --- a/test/unit-tests/DeviceListener-test.ts +++ b/test/unit-tests/DeviceListener-test.ts @@ -31,7 +31,6 @@ import * as SetupEncryptionToast from "../../src/toasts/SetupEncryptionToast"; import * as UnverifiedSessionToast from "../../src/toasts/UnverifiedSessionToast"; import * as BulkUnverifiedSessionsToast from "../../src/toasts/BulkUnverifiedSessionsToast"; import { isSecretStorageBeingAccessed } from "../../src/SecurityManager"; -import dis from "../../src/dispatcher/dispatcher"; import { Action } from "../../src/dispatcher/actions"; import SettingsStore from "../../src/settings/SettingsStore"; import { SettingLevel } from "../../src/settings/SettingLevel"; @@ -57,7 +56,6 @@ jest.mock("../../src/utils/device/snoozeBulkUnverifiedDeviceReminder", () => ({ const userId = "@user:server"; const deviceId = "my-device-id"; -const mockDispatcher = mocked(dis); const flushPromises = async () => await new Promise(process.nextTick); const readySecretStorageStatus: SecretStorageStatus = { @@ -498,27 +496,6 @@ describe("DeviceListener", () => { expect(mockCrypto.getActiveSessionBackupVersion).toHaveBeenCalled(); }); - it("dispatches keybackup event when key backup is not enabled", async () => { - mockCrypto!.isCrossSigningReady.mockResolvedValue(true); - - // current device is verified - mockCrypto!.getDeviceVerificationStatus.mockResolvedValue( - new DeviceVerificationStatus({ - trustCrossSignedDevices: true, - crossSigningVerified: true, - }), - ); - - mockCrypto.getActiveSessionBackupVersion.mockResolvedValue(null); - mockClient.getAccountDataFromServer.mockImplementation((eventType) => - eventType === BACKUP_DISABLED_ACCOUNT_DATA_KEY ? ({ disabled: true } as any) : null, - ); - await createAndStart(); - expect(mockDispatcher.dispatch).toHaveBeenCalledWith({ - action: Action.ReportKeyBackupNotEnabled, - }); - }); - it("does not check key backup status again after check is complete", async () => { mockCrypto.getActiveSessionBackupVersion.mockResolvedValue("1"); const instance = await createAndStart();