{"level":30,"time":"2025-11-28T10:15:47.694Z","msg":"[startup_config] Set Windows Application User Model ID (AUMID) {\"AUMID\":\"org.whispersystems.signal-desktop\"}"}
{"level":30,"time":"2025-11-28T10:15:47.710Z","msg":"[base_config] config/start: Did not find user config file (or it was empty), cache is now empty object"}
{"level":30,"time":"2025-11-28T10:15:47.770Z","msg":"[base_config] config/start: Did not find ephemeral config file (or it was empty), cache is now empty object"}
{"level":30,"time":"2025-11-28T10:15:47.817Z","msg":"[app/main] making app single instance"}
{"level":30,"time":"2025-11-28T10:15:49.651Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.654Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.654Z","msg":"[app/main] initializing localeOverride setting null"}
{"level":30,"time":"2025-11-28T10:15:49.654Z","msg":"[app/main] app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2025-11-28T10:15:49.654Z","msg":"[app/main] app.ready: preferred system locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2025-11-28T10:15:49.654Z","msg":"[app/main] locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2025-11-28T10:15:49.654Z","msg":"[app/main] locale: Preferred locales: en-US, en"}
{"level":30,"time":"2025-11-28T10:15:49.654Z","msg":"[app/main] locale: Locale Override: null"}
{"level":30,"time":"2025-11-28T10:15:49.655Z","msg":"[app/main] locale: Matched locale: en"}
{"level":40,"time":"2025-11-28T10:15:49.673Z","msg":"[setupI18nMain] intl.onWarn [@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.github.io/docs/getting-started/message-distribution"}
{"level":30,"time":"2025-11-28T10:15:49.673Z","msg":"[app/main] locale: Text info direction for en: ltr"}
{"level":40,"time":"2025-11-28T10:15:49.673Z","msg":"[app/main] getSQLKey: got key from config, but it wasn't a string"}
{"level":30,"time":"2025-11-28T10:15:49.674Z","msg":"[app/main] key/initialize: Generating new encryption key, since we did not find it on disk"}
{"level":30,"time":"2025-11-28T10:15:49.674Z","msg":"[app/main] getSQLKey: updating plaintext key in the config"}
{"level":30,"time":"2025-11-28T10:15:49.674Z","msg":"[base_config] config/set: Saving user config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.675Z","msg":"[base_config] config/set: Saved user config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.676Z","msg":"[SystemTraySettingCache] getSystemTraySetting got no value, returning Uninitialized"}
{"level":30,"time":"2025-11-28T10:15:49.676Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.678Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.678Z","msg":"[app/main] app.ready: setting system-tray-setting to DoNotUseSystemTray"}
{"level":30,"time":"2025-11-28T10:15:49.678Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.680Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.680Z","msg":"[app/main] app ready"}
{"level":30,"time":"2025-11-28T10:15:49.681Z","msg":"[app/main] starting version 7.80.1"}
{"level":30,"time":"2025-11-28T10:15:49.681Z","msg":"[app/main] media access status [object Undefined] [object Undefined] [object Undefined]"}
{"level":30,"time":"2025-11-28T10:15:49.682Z","msg":"[app/main] MainSQL: migrateSchemaVersion: Migrating from schema_version 0 to user_version 0"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: updateSchema:\n  Current user_version: 0;\n  Most recent db schema: 1541;\n  SQLite version: 3.50.4;\n  SQLCipher version: 4.10.0 community;\n  (deprecated) schema_version: 0;\n"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(1)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(2)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(3)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(4)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(6)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(7)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(8)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(9)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(10)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(11)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(12)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(13)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(14)] success"}
{"level":30,"time":"2025-11-28T10:15:49.689Z","msg":"[app/main] MainSQL: [updateSchema(15)] success"}
{"level":30,"time":"2025-11-28T10:15:49.691Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.692Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.692Z","msg":"[app/main] initializing spellcheck setting true"}
{"level":30,"time":"2025-11-28T10:15:49.693Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.694Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:49.694Z","msg":"[app/main] saving theme-setting value system"}
{"level":30,"time":"2025-11-28T10:15:49.694Z","msg":"[app/main] got fast spellcheck setting true"}
{"level":30,"time":"2025-11-28T10:15:49.694Z","msg":"[app/main] Initializing BrowserWindow config: {\"show\":false,\"width\":800,\"height\":610,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"backgroundColor\":\"#121212\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enablePreferredSizeMode\":true,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.wrapper.js\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\"}"}
{"level":30,"time":"2025-11-28T10:15:49.715Z","msg":"[spell_check] spellcheck: user locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2025-11-28T10:15:49.715Z","msg":"[spell_check] spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2025-11-28T10:15:49.715Z","msg":"[spell_check] spellcheck: setting languages to: [\"en-US\",\"en\"]"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(16)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(17)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(18)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(19)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(20)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(21)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(22)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(23)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(24)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(25)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(26)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(27)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(28)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(29)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(30)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(31)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(32)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(33)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(34)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(35)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(36)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(37)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(38)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(39)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(40)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(41)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(42)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(43)] About to iterate through 0 conversations"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(43)] About to iterate through 0 messages"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(43)] Updated 0 messages"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(43)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(44)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(45)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(46)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(47)] our UUID not found"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(47)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(48)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(49)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(50)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(51)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(52)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(53)] About to iterate through 0 conversations"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(53)] Updated 0 conversations"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(53)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(54)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(55)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(56)] success"}
{"level":30,"time":"2025-11-28T10:15:49.716Z","msg":"[app/main] MainSQL: [updateSchema(57)] success"}
{"level":30,"time":"2025-11-28T10:15:49.717Z","msg":"[app/main] MainSQL: [updateSchema(58)] success"}
{"level":30,"time":"2025-11-28T10:15:49.717Z","msg":"[app/main] MainSQL: [updateSchema(59)] success"}
{"level":30,"time":"2025-11-28T10:15:49.717Z","msg":"[app/main] MainSQL: [updateSchema(60)] success"}
{"level":30,"time":"2025-11-28T10:15:49.757Z","msg":"[app/main] spellcheck: dictionary download begin: en"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] spellcheck: dictionary download begin: en-US"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(61)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(62)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(63)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(64)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(65)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(66)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(67)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(68)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(69)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(70)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(71)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(72)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(73)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(74)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(75)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(76)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(77)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(78)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(79)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(80)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(81)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(82)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(83)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(84)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(85)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(86)] success"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(87)] (cleanup)/kyberPreKeys: Our PNI not found"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(87)] (cleanup)/preKeys: Our PNI not found"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(87)] (cleanup)/signedPreKeys: Our PNI not found"}
{"level":30,"time":"2025-11-28T10:15:49.758Z","msg":"[app/main] MainSQL: [updateSchema(87)] success"}
{"level":30,"time":"2025-11-28T10:15:49.790Z","msg":"[app/main] MainSQL: [updateSchema(88)] updating 0 conversations"}
{"level":30,"time":"2025-11-28T10:15:49.790Z","msg":"[app/main] MainSQL: [updateSchema(88)] Our UUID not found"}
{"level":30,"time":"2025-11-28T10:15:49.790Z","msg":"[app/main] MainSQL: [updateSchema(88)] Our PNI not found"}
{"level":30,"time":"2025-11-28T10:15:49.790Z","msg":"[app/main] MainSQL: [updateSchema(88)] updating 0 sessions"}
{"level":30,"time":"2025-11-28T10:15:49.791Z","msg":"[app/main] MainSQL: [updateSchema(88)] updating messages"}
{"level":30,"time":"2025-11-28T10:15:49.791Z","msg":"[app/main] MainSQL: [updateSchema(88)] updated 0 messages"}
{"level":30,"time":"2025-11-28T10:15:49.791Z","msg":"[app/main] MainSQL: [updateSchema(88)] updating 0 preKeys"}
{"level":30,"time":"2025-11-28T10:15:49.791Z","msg":"[app/main] MainSQL: [updateSchema(88)] updating 0 signedPreKeys"}
{"level":30,"time":"2025-11-28T10:15:49.791Z","msg":"[app/main] MainSQL: [updateSchema(88)] updating 0 kyberPreKeys"}
{"level":30,"time":"2025-11-28T10:15:49.791Z","msg":"[app/main] MainSQL: [updateSchema(88)] updated 0 jobs"}
{"level":30,"time":"2025-11-28T10:15:49.791Z","msg":"[app/main] MainSQL: [updateSchema(88)] success"}
{"level":30,"time":"2025-11-28T10:15:49.796Z","msg":"[app/main] MainSQL: [updateSchema(89)] success"}
{"level":30,"time":"2025-11-28T10:15:49.797Z","msg":"[app/main] MainSQL: [updateSchema(90)] removed screenshotData from 0 message"}
{"level":30,"time":"2025-11-28T10:15:49.797Z","msg":"[app/main] MainSQL: [updateSchema(90)] success"}
{"level":30,"time":"2025-11-28T10:15:49.803Z","msg":"[app/main] MainSQL: [updateSchema(91)] Found 0 keys"}
{"level":30,"time":"2025-11-28T10:15:49.804Z","msg":"[app/main] MainSQL: [updateSchema(91)] success"}
{"level":30,"time":"2025-11-28T10:15:49.804Z","msg":"[app/main] MainSQL: [updateSchema(920)] kyberPreKeys: Our PNI not found"}
{"level":30,"time":"2025-11-28T10:15:49.804Z","msg":"[app/main] MainSQL: [updateSchema(920)] signedPreKeys: Our PNI not found"}
{"level":30,"time":"2025-11-28T10:15:49.804Z","msg":"[app/main] MainSQL: [updateSchema(920)] Done with deletions, starting vacuum..."}
{"level":30,"time":"2025-11-28T10:15:49.804Z","msg":"[app/main] MainSQL: [updateSchema(920)] success, needs vacuum"}
{"level":30,"time":"2025-11-28T10:15:49.808Z","msg":"[app/main] MainSQL: running vacuum"}
{"level":30,"time":"2025-11-28T10:15:49.815Z","msg":"[app/main] MainSQL: done running vacuum"}
{"level":30,"time":"2025-11-28T10:15:49.815Z","msg":"[app/main] MainSQL: [updateSchema(930)] success"}
{"level":30,"time":"2025-11-28T10:15:49.815Z","msg":"[app/main] MainSQL: [updateSchema(940)] success"}
{"level":30,"time":"2025-11-28T10:15:49.815Z","msg":"[app/main] MainSQL: [updateSchema(950)] success"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(960)] Our ACI not found"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(960)] not running, pni is normalized"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(960)] success"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(970)] success"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(980)] success"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(990)] success"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(1000)] success"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(1010)] success"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(1020)] not linked"}
{"level":30,"time":"2025-11-28T10:15:49.816Z","msg":"[app/main] MainSQL: [updateSchema(1020)] success"}
{"level":30,"time":"2025-11-28T10:15:49.821Z","msg":"[app/main] MainSQL: [updateSchema(1030)] success"}
{"level":30,"time":"2025-11-28T10:15:49.821Z","msg":"[app/main] MainSQL: [updateSchema(1040)] loaded 0 existing jobs"}
{"level":30,"time":"2025-11-28T10:15:49.823Z","msg":"[app/main] MainSQL: [updateSchema(1040)] transferred 0 rows, removed 0"}
{"level":30,"time":"2025-11-28T10:15:49.823Z","msg":"[app/main] MainSQL: [updateSchema(1040)] success"}
{"level":30,"time":"2025-11-28T10:15:49.823Z","msg":"[app/main] MainSQL: [updateSchema(1050)] success"}
{"level":30,"time":"2025-11-28T10:15:49.823Z","msg":"[app/main] MainSQL: [updateSchema(1060)] success"}
{"level":30,"time":"2025-11-28T10:15:49.824Z","msg":"[app/main] MainSQL: [updateSchema(1070)] success"}
{"level":30,"time":"2025-11-28T10:15:49.824Z","msg":"[app/main] MainSQL: [updateSchema(1080)] success"}
{"level":30,"time":"2025-11-28T10:15:49.824Z","msg":"[app/main] MainSQL: [updateSchema(1090)] success"}
{"level":30,"time":"2025-11-28T10:15:49.824Z","msg":"[app/main] MainSQL: [updateSchema(1100)] success"}
{"level":30,"time":"2025-11-28T10:15:49.825Z","msg":"[app/main] MainSQL: [updateSchema(1110)] success"}
{"level":30,"time":"2025-11-28T10:15:49.826Z","msg":"[app/main] MainSQL: [updateSchema(1120)] success"}
{"level":30,"time":"2025-11-28T10:15:49.826Z","msg":"[app/main] MainSQL: [updateSchema(1130)] success"}
{"level":30,"time":"2025-11-28T10:15:49.826Z","msg":"[app/main] MainSQL: [updateSchema(1140)] success"}
{"level":30,"time":"2025-11-28T10:15:49.827Z","msg":"[app/main] MainSQL: [updateSchema(1150)] success"}
{"level":30,"time":"2025-11-28T10:15:49.827Z","msg":"[app/main] MainSQL: [updateSchema(1160)] success"}
{"level":30,"time":"2025-11-28T10:15:49.827Z","msg":"[app/main] MainSQL: [updateSchema(1170)] success"}
{"level":30,"time":"2025-11-28T10:15:49.828Z","msg":"[app/main] MainSQL: [updateSchema(1180)] success"}
{"level":30,"time":"2025-11-28T10:15:49.831Z","msg":"[app/main] MainSQL: [updateSchema(1190)] success"}
{"level":30,"time":"2025-11-28T10:15:49.831Z","msg":"[app/main] MainSQL: [updateSchema(1200)] success"}
{"level":30,"time":"2025-11-28T10:15:49.833Z","msg":"[app/main] MainSQL: [updateSchema(1210)] success"}
{"level":30,"time":"2025-11-28T10:15:49.834Z","msg":"[app/main] MainSQL: [updateSchema(1220)] no identity/registration id"}
{"level":30,"time":"2025-11-28T10:15:49.834Z","msg":"[app/main] MainSQL: [updateSchema(1220)] success"}
{"level":30,"time":"2025-11-28T10:15:49.834Z","msg":"[app/main] MainSQL: [updateSchema(1230)] success"}
{"level":30,"time":"2025-11-28T10:15:49.834Z","msg":"[app/main] MainSQL: [updateSchema(1240)] success"}
{"level":30,"time":"2025-11-28T10:15:49.837Z","msg":"[app/main] MainSQL: [updateSchema(1250)] success"}
{"level":30,"time":"2025-11-28T10:15:49.837Z","msg":"[app/main] MainSQL: [updateSchema(1260)] success"}
{"level":30,"time":"2025-11-28T10:15:49.845Z","msg":"[app/main] MainSQL: [updateSchema(1270)] success"}
{"level":30,"time":"2025-11-28T10:15:49.845Z","msg":"[app/main] MainSQL: [updateSchema(1280)] success"}
{"level":30,"time":"2025-11-28T10:15:49.851Z","msg":"[app/main] MainSQL: [updateSchema(1290)] success"}
{"level":30,"time":"2025-11-28T10:15:49.852Z","msg":"[app/main] MainSQL: [updateSchema(1300)] success"}
{"level":30,"time":"2025-11-28T10:15:49.852Z","msg":"[app/main] MainSQL: [updateSchema(1310)] success"}
{"level":30,"time":"2025-11-28T10:15:49.853Z","msg":"[app/main] MainSQL: [updateSchema(1320)] success"}
{"level":30,"time":"2025-11-28T10:15:49.853Z","msg":"[app/main] MainSQL: [updateSchema(1330)] success"}
{"level":30,"time":"2025-11-28T10:15:49.853Z","msg":"[app/main] MainSQL: [updateSchema(1340)] success"}
{"level":30,"time":"2025-11-28T10:15:49.853Z","msg":"[app/main] MainSQL: [updateSchema(1350)] success"}
{"level":30,"time":"2025-11-28T10:15:49.854Z","msg":"[app/main] MainSQL: [updateSchema(1360)] success"}
{"level":30,"time":"2025-11-28T10:15:49.854Z","msg":"[app/main] MainSQL: [updateSchema(1370)] success"}
{"level":30,"time":"2025-11-28T10:15:49.854Z","msg":"[app/main] MainSQL: [updateSchema(1380)] success"}
{"level":30,"time":"2025-11-28T10:15:49.871Z","msg":"[app/main] MainSQL: [updateSchema(1390)] success"}
{"level":30,"time":"2025-11-28T10:15:49.876Z","msg":"[app/main] MainSQL: [updateSchema(1400)] success"}
{"level":30,"time":"2025-11-28T10:15:49.876Z","msg":"[app/main] MainSQL: [updateSchema(1410)] success"}
{"level":30,"time":"2025-11-28T10:15:49.877Z","msg":"[app/main] MainSQL: [updateSchema(1420)] success"}
{"level":30,"time":"2025-11-28T10:15:49.879Z","msg":"[app/main] MainSQL: [updateSchema(1430)] success"}
{"level":30,"time":"2025-11-28T10:15:49.879Z","msg":"[app/main] MainSQL: [updateSchema(1440)] success"}
{"level":30,"time":"2025-11-28T10:15:49.882Z","msg":"[app/main] MainSQL: [updateSchema(1450)] success"}
{"level":30,"time":"2025-11-28T10:15:49.882Z","msg":"[app/main] MainSQL: [updateSchema(1460)] success"}
{"level":30,"time":"2025-11-28T10:15:49.882Z","msg":"[app/main] MainSQL: [updateSchema(1470)] success"}
{"level":30,"time":"2025-11-28T10:15:49.883Z","msg":"[app/main] MainSQL: [updateSchema(1480)] Removed 0 duplicate all chats chat folders"}
{"level":30,"time":"2025-11-28T10:15:49.883Z","msg":"[app/main] MainSQL: [updateSchema(1480)] success"}
{"level":30,"time":"2025-11-28T10:15:49.883Z","msg":"[app/main] MainSQL: [updateSchema(1490)] Removed 0 notification profiles with non-lowercase ids"}
{"level":30,"time":"2025-11-28T10:15:49.883Z","msg":"[app/main] MainSQL: [updateSchema(1490)] success"}
{"level":30,"time":"2025-11-28T10:15:49.884Z","msg":"[app/main] MainSQL: [updateSchema(1500)] success"}
{"level":30,"time":"2025-11-28T10:15:49.884Z","msg":"[app/main] MainSQL: [updateSchema(1510)] Updated 0 all chats chat folders"}
{"level":30,"time":"2025-11-28T10:15:49.884Z","msg":"[app/main] MainSQL: [updateSchema(1510)] success"}
{"level":30,"time":"2025-11-28T10:15:49.885Z","msg":"[app/main] MainSQL: [updateSchema(1520)] success"}
{"level":30,"time":"2025-11-28T10:15:49.886Z","msg":"[app/main] MainSQL: [updateSchema(1530)] success"}
{"level":30,"time":"2025-11-28T10:15:49.886Z","msg":"[app/main] MainSQL: [updateSchema(1540)] success"}
{"level":30,"time":"2025-11-28T10:15:49.886Z","msg":"[app/main] MainSQL: [updateSchema(1541)] Updated 0 poll messages"}
{"level":30,"time":"2025-11-28T10:15:49.886Z","msg":"[app/main] MainSQL: [updateSchema(1541)] success"}
{"level":30,"time":"2025-11-28T10:15:49.890Z","msg":"[app/main] MainSQL: enableFTS5SecureDelete: enabling"}
{"level":30,"time":"2025-11-28T10:15:49.891Z","msg":"[app/main] MainSQL: updateSchema: optimize took 1ms"}
{"level":30,"time":"2025-11-28T10:15:49.913Z","msg":"[app/main] spellcheck: dictionary download success: en"}
{"level":30,"time":"2025-11-28T10:15:49.914Z","msg":"[app/main] spellcheck: dictionary download success: en-US"}
{"level":30,"time":"2025-11-28T10:15:49.914Z","msg":"[app/main] spellcheck: dictionary initialized: en"}
{"level":30,"time":"2025-11-28T10:15:49.915Z","msg":"[app/main] spellcheck: dictionary initialized: en-US"}
{"level":30,"time":"2025-11-28T10:15:50.214Z","msg":"[app/main] got fast theme-setting value system"}
{"level":30,"time":"2025-11-28T10:15:50.762Z","msg":"[app/main] main window webContents did-finish-load"}
{"level":30,"time":"2025-11-28T10:15:50.763Z","msg":"[app/main] showing main window"}
{"level":30,"time":"2025-11-28T10:15:50.771Z","msg":"[SystemTrayService] System tray service: created"}
{"level":30,"time":"2025-11-28T10:15:50.771Z","msg":"[SystemTrayService] System tray service: updating main window. Previously, there was not a window, and now there is"}
{"level":30,"time":"2025-11-28T10:15:50.771Z","msg":"[SystemTrayService] System tray service: rendering no tray"}
{"level":30,"time":"2025-11-28T10:15:50.771Z","msg":"[app/main] Begin ensuring permissions"}
{"level":30,"time":"2025-11-28T10:15:50.780Z","msg":"[app/main] Ensuring file permissions for 4 files"}
{"level":30,"time":"2025-11-28T10:15:50.781Z","msg":"[app/main] Finish ensuring permissions in 10ms"}
{"level":30,"time":"2025-11-28T10:15:50.810Z","msg":"[attachments] deleteAllBadges: deleted 0 files"}
{"level":30,"time":"2025-11-28T10:15:50.811Z","msg":"[app/main] MainSQL: removeKnownStickers: About to iterate through 0 stickers"}
{"level":30,"time":"2025-11-28T10:15:50.811Z","msg":"[app/main] MainSQL: removeKnownStickers: Done processing 0 stickers"}
{"level":30,"time":"2025-11-28T10:15:50.811Z","msg":"[attachments] deleteAllStickers: deleted 0 files"}
{"level":30,"time":"2025-11-28T10:15:50.812Z","msg":"[app/main] MainSQL: removeKnownDraftAttachments: About to iterate through 0 conversations"}
{"level":30,"time":"2025-11-28T10:15:50.812Z","msg":"[app/main] MainSQL: removeKnownDraftAttachments: Done processing 0 conversations"}
{"level":30,"time":"2025-11-28T10:15:50.812Z","msg":"[attachments] deleteAllDraftAttachments: deleted 0 files"}
{"level":30,"time":"2025-11-28T10:15:50.812Z","msg":"[attachment_channel] cleanupOrphanedAttachments: found 0 attachments on disk"}
{"level":30,"time":"2025-11-28T10:15:50.813Z","msg":"[attachment_channel] cleanupOrphanedAttachments: found 0 downloads on disk"}
{"level":30,"time":"2025-11-28T10:15:50.813Z","msg":"[app/main] MainSQL: getKnownConversationAttachments: About to iterate through 0"}
{"level":30,"time":"2025-11-28T10:15:50.813Z","msg":"[app/main] MainSQL: getKnownConversationAttachments: Done processing"}
{"level":30,"time":"2025-11-28T10:15:50.813Z","msg":"[attachment_channel] cleanupOrphanedAttachments: Got 0 conversation attachments, 0 remain"}
{"level":30,"time":"2025-11-28T10:15:50.813Z","msg":"[attachment_channel] cleanupOrphanedAttachments: found 0 known downloads, 0 remain"}
{"level":30,"time":"2025-11-28T10:15:50.814Z","msg":"[attachment_channel] cleanupOrphanedAttachments: took 5ms"}
{"level":30,"time":"2025-11-28T10:15:50.814Z","msg":"[app/main] MainSQL: pageMessages(8b2fbb89606f3835): Starting iteration through 0 messages"}
{"level":50,"time":"2025-11-28T10:15:50.835Z","msg":"[app/main] [updater] Error starting update checks: Error: ENOENT: no such file or directory, watch '/usr/lib/signal-desktop/.signal-postinst'\n    at FSWatcher.<computed> (node:internal/fs/watchers:254:19)\n    at watch (node:fs:2549:36)\n    at initLinux ([REDACTED]/ts/updater/linux.main.js:93:28)\n    at Object.start ([REDACTED]/ts/updater/index.main.js:65:37)\n    at IpcMainImpl.readyForUpdates ([REDACTED]/app/main.main.js:829:19)\n    at Object.onceWrapper (node:events:634:26)\n    at IpcMainImpl.emit (node:events:519:28)\n    at Session.<anonymous> (node:electron/js2c/browser_init:2:106616)\n    at Session.emit (node:events:519:28)"}
{"level":30,"time":"2025-11-28T10:15:50.866Z","msg":"[app/main] MainSQL: finishPageMessages(8b2fbb89606f3835): reached the end after processing 0 messages"}
{"level":30,"time":"2025-11-28T10:15:50.866Z","msg":"[attachment_channel] cleanupOrphanedAttachments: 0 attachments and       0 downloads found on disk"}
{"level":30,"time":"2025-11-28T10:15:50.867Z","msg":"[attachments] deleteAll: deleted 0 files"}
{"level":30,"time":"2025-11-28T10:15:50.867Z","msg":"[attachments] deleteAllDownloads: deleted 0 files"}
{"level":30,"time":"2025-11-28T10:15:50.867Z","msg":"[attachment_channel] deleteOrphanedAttachments: took 54ms"}
{"level":30,"time":"2025-11-28T10:15:50.891Z","msg":"[PreventDisplaySleepService] Prevent display sleep service: allowing display sleep"}
{"level":30,"time":"2025-11-28T10:15:50.974Z","msg":"[createHTTPSAgent] createHTTPSAgent.createConnection(updates2.signal.org): connected to IPv6 addr after 50ms (attempts v4=0 v6=1)"}
{"level":30,"time":"2025-11-28T10:15:51.267Z","msg":"[app/main] Updating BrowserWindow config: {\"maximized\":false,\"autoHideMenuBar\":false,\"fullscreen\":false,\"width\":1908,\"height\":1018,\"x\":0,\"y\":0}"}
{"level":30,"time":"2025-11-28T10:15:51.267Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:15:51.273Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:16:11.394Z","msg":"[app/main] Top 10 queries by cumulative duration (ms) over last 21499ms: createOrUpdateItem: cumulative 54.76 | average: 1.3 | max: 5.33 | count: 42 ||| bulkAddKyberPreKeys: cumulative 18.77 | average: 4.69 | max: 8.61 | count: 4 ||| commitDecryptResult: cumulative 15.84 | average: 3.17 | max: 6.85 | count: 5 ||| removeAllConfiguration: cumulative 7.59 | average: 7.59 | max: 7.59 | count: 1 ||| insertSentProto: cumulative 7.55 | average: 3.78 | max: 5.99 | count: 2 ||| saveConversation: cumulative 7.29 | average: 3.64 | max: 5.62 | count: 2 ||| updateConversations: cumulative 5.78 | average: 5.78 | max: 5.78 | count: 1 ||| createOrUpdateSignedPreKey: cumulative 4.14 | average: 1.04 | max: 1.38 | count: 4 ||| bulkAddPreKeys: cumulative 3.95 | average: 1.98 | max: 2.04 | count: 2 ||| insertJob: cumulative 3.91 | average: 0.98 | max: 1.13 | count: 4; Total cumulative duration of all SQL queries during this epoch: 149.97ms"}
{"level":30,"time":"2025-11-28T10:16:11.394Z","msg":"[app/main] Resetting query stats"}
{"level":30,"time":"2025-11-28T10:16:11.620Z","msg":"[app/main] Top 10 queries by cumulative duration (ms) over last 226ms during 'Backup Import': saveMessages: cumulative 25.81 | average: 25.81 | max: 25.81 | count: 1 ||| saveConversations: cumulative 10.65 | average: 10.65 | max: 10.65 | count: 1 ||| enableFSyncAndCheckpoint: cumulative 9.26 | average: 9.26 | max: 9.26 | count: 1 ||| getAllKyberPreKeys: cumulative 7.74 | average: 7.74 | max: 7.74 | count: 1 ||| getConversationMessageStats: cumulative 6.9 | average: 2.3 | max: 3.27 | count: 3 ||| saveEditedMessages: cumulative 6.02 | average: 0.86 | max: 1.67 | count: 7 ||| getMessageById: cumulative 3.32 | average: 1.11 | max: 1.3 | count: 3 ||| getAllConversations: cumulative 3.12 | average: 3.12 | max: 3.12 | count: 1 ||| enableMessageInsertTriggersAndBackfill: cumulative 3.01 | average: 3.01 | max: 3.01 | count: 1 ||| saveMessage: cumulative 2.96 | average: 0.99 | max: 1.11 | count: 3; Total cumulative duration of all SQL queries during this epoch: 102.33ms"}
{"level":30,"time":"2025-11-28T10:16:11.636Z","msg":"[app/main] App loaded - time: 21956"}
{"level":30,"time":"2025-11-28T10:16:11.636Z","msg":"[app/main] SQL init - time: 222"}
{"level":30,"time":"2025-11-28T10:16:11.636Z","msg":"[app/main] Preload Compile - time: 171"}
{"level":30,"time":"2025-11-28T10:16:11.636Z","msg":"[app/main] Preload - time: 486"}
{"level":30,"time":"2025-11-28T10:16:11.636Z","msg":"[app/main] WebSocket connect - time: 18649"}
{"level":30,"time":"2025-11-28T10:16:11.636Z","msg":"[app/main] Processed count: 0"}
{"level":30,"time":"2025-11-28T10:16:11.636Z","msg":"[app/main] Messages per second: 0"}
{"level":30,"time":"2025-11-28T10:16:51.120Z","msg":"[app/main] MainSQL: deleteSentProtoRecipient: Deleting proto payload for timestamp 1764325009165"}
{"level":30,"time":"2025-11-28T10:17:03.235Z","msg":"[app/main] got fast theme-setting value system"}
{"level":30,"time":"2025-11-28T10:17:03.306Z","msg":"[app/main] got fast theme-setting value system"}
{"level":30,"time":"2025-11-28T10:17:04.449Z","msg":"[base_config] config/set: Saving user config to disk"}
{"level":30,"time":"2025-11-28T10:17:04.456Z","msg":"[base_config] config/set: Saved user config to disk"}
{"level":30,"time":"2025-11-28T10:17:04.662Z","msg":"[PreventDisplaySleepService] Prevent display sleep service: preventing display sleep"}
{"level":30,"time":"2025-11-28T10:17:06.776Z","msg":"[app/main] got fast theme-setting value system"}
{"level":30,"time":"2025-11-28T10:17:06.845Z","msg":"[app/main] got fast theme-setting value system"}
{"level":30,"time":"2025-11-28T10:17:07.928Z","msg":"[base_config] config/set: Saving user config to disk"}
{"level":30,"time":"2025-11-28T10:17:07.934Z","msg":"[base_config] config/set: Saved user config to disk"}
{"level":30,"time":"2025-11-28T10:17:51.478Z","msg":"[PreventDisplaySleepService] Prevent display sleep service: allowing display sleep"}
{"level":30,"time":"2025-11-28T10:17:51.494Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Found conversation [REDACTED]e8c"}
{"level":30,"time":"2025-11-28T10:17:51.494Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Marking calls before 1764324951097 read"}
{"level":30,"time":"2025-11-28T10:17:52.480Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Found conversation [REDACTED]e8c"}
{"level":30,"time":"2025-11-28T10:17:52.480Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Marking calls before 1764324951097 read"}
{"level":30,"time":"2025-11-28T10:18:05.372Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:05.402Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:06.172Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:06.178Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:07.337Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:07.344Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:07.866Z","msg":"[base_config] config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:07.868Z","msg":"[base_config] config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2025-11-28T10:18:18.199Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Found conversation [REDACTED]e8c"}
{"level":30,"time":"2025-11-28T10:18:18.199Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Marking calls before 1764324951097 read"}
{"level":30,"time":"2025-11-28T10:18:18.696Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Found conversation [REDACTED]e8c"}
{"level":30,"time":"2025-11-28T10:18:18.697Z","msg":"[app/main] MainSQL: markAllCallHistoryRead: Marking calls before 1764324951097 read"}
{"level":30,"time":"2025-11-28T10:18:22.205Z","msg":"[app/main] close event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2025-11-28T10:18:22.206Z","msg":"[app/main] maybeRequestCloseConfirmation: Checking to see if close confirmation is needed"}
{"level":30,"time":"2025-11-28T10:18:22.207Z","msg":"[app/main] maybeRequestCloseConfirmation: Response received"}
{"level":30,"time":"2025-11-28T10:18:22.208Z","msg":"[SystemTrayService] System tray service: rendering no tray"}
{"level":30,"time":"2025-11-28T10:18:22.208Z","msg":"[app/main] requestShutdown: Requesting close of mainWindow..."}
{"level":30,"time":"2025-11-28T10:18:22.243Z","msg":"[app/main] requestShutdown: Response received"}
{"level":30,"time":"2025-11-28T10:18:22.261Z","msg":"[app/main] before-quit event {\"readyForShutdown\":true,\"shouldQuit\":false,\"hasEventBeenPrevented\":false,\"windowCount\":1,\"mainWindowExists\":true,\"mainWindowIsFullScreen\":false}"}
{"level":30,"time":"2025-11-28T10:18:22.261Z","msg":"[SystemTrayService] System tray service: markShouldQuit"}
{"level":30,"time":"2025-11-28T10:18:22.261Z","msg":"[app/main] close event {\"readyForShutdown\":true,\"shouldQuit\":true}"}
{"level":30,"time":"2025-11-28T10:18:22.265Z","msg":"[app/main] main window closed event"}
{"level":30,"time":"2025-11-28T10:18:22.265Z","msg":"[SystemTrayService] System tray service: updating main window. Previously, there was a window, and now there is not"}
{"level":30,"time":"2025-11-28T10:18:22.265Z","msg":"[SystemTrayService] System tray service: rendering no tray"}
{"level":30,"time":"2025-11-28T10:18:22.265Z","msg":"[app/main] will-quit event {\"hasEventBeenPrevented\":false,\"windowCount\":0,\"mainWindowExists\":false}"}
{"level":30,"time":"2025-11-28T10:18:22.265Z","msg":"[app/main] quit event {\"hasEventBeenPrevented\":false,\"windowCount\":0,\"mainWindowExists\":false}"}
