Wire user prefs startup recovery into session boot and view (P410-19).

Call ensurePrefsRecoveredOnStartup after settings ready, log
userPrefs.startup-recovery spans, and expose userPrefsRecovery in view().

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-06-02 11:43:51 -04:00
co-authored by Cursor
parent 7a86efac40
commit 5c387d416d
+24
View File
@@ -1399,6 +1399,17 @@ class PearcordPlatform extends EventEmitter {
})
this.userSettings._prefsMirror = await this._ensurePrefsMirrorStore()
await this.userSettings.ready()
const prefsRecovery = await this.userSettings.ensurePrefsRecoveredOnStartup()
if (prefsRecovery?.recovered) {
this.log.info('userPrefs startup recovery', {
spanKind: 'userPrefs.startup-recovery',
userId: snap.user.id,
source: prefsRecovery.source,
reason: prefsRecovery.reason || null,
backupUsed: !!prefsRecovery.backupUsed,
issueCount: (prefsRecovery.issues || []).length
})
}
const sessionPrefs = await this.userSettings.getPrefs()
this._ingestGuildPresenceCacheFromPrefs(sessionPrefs)
this._ingestDiscoveryExploreBaselineFromPrefs(sessionPrefs)
@@ -1656,6 +1667,17 @@ class PearcordPlatform extends EventEmitter {
this._wireDiscoveryEvents()
this.notifications.on('notification', (n) => this.emit('notification', n))
this.notifications.on('prefs', () => this.emit('notification-prefs'))
const prefsRecovery = await this.userSettings.ensurePrefsRecoveredOnStartup()
if (prefsRecovery?.recovered) {
this.log.info('userPrefs startup recovery', {
spanKind: 'userPrefs.startup-recovery',
userId: user.id,
source: prefsRecovery.source,
reason: prefsRecovery.reason || null,
backupUsed: !!prefsRecovery.backupUsed,
issueCount: (prefsRecovery.issues || []).length
})
}
const bootPrefs = await this.userSettings.getPrefs()
this._ingestGuildPresenceCacheFromPrefs(bootPrefs)
this._ingestDiscoveryExploreBaselineFromPrefs(bootPrefs)
@@ -21543,6 +21565,7 @@ class PearcordPlatform extends EventEmitter {
? await this.userSettings.getPrefs()
: null
const userPrefsStats = this.userSettings?.getStats?.() || null
const userPrefsRecovery = this.userSettings?.getPrefsRecovery?.() || null
const serverRail = buildServerRailLayout(
this.guilds,
userPrefs?.serverFolders,
@@ -22075,6 +22098,7 @@ class PearcordPlatform extends EventEmitter {
notificationUnread,
userPrefs,
userPrefsStats,
userPrefsRecovery,
serverRail,
folderColors: FOLDER_COLORS,
profileCosmetics,