feat(ipc): Phase 833 sync-guild-mesh-quad-unread

Emit notification and guild-sync-ready with quadUnread after quad mesh
channel unread fanout recovery.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-06-04 04:13:05 -04:00
co-authored by Cursor
parent 82951546bf
commit f700867924
2 changed files with 25 additions and 0 deletions
+2
View File
@@ -2,6 +2,8 @@
Pearcord desktop UI IPC dispatch and automated flow scenarios for Bare smokes. Mirrors `apps/pearcord` pear-pipe message handling. Pearcord desktop UI IPC dispatch and automated flow scenarios for Bare smokes. Mirrors `apps/pearcord` pear-pipe message handling.
**Phase 833 (v0.8.800):** `sync-guild-mesh-quad-unread` recovery IPC. Bundle: `npm run test:ci-phase833`.
**Phase 832 (v0.8.799):** `sync-guild-mesh-quad-roster` recovery IPC. Bundle: `npm run test:ci-phase832`. **Phase 832 (v0.8.799):** `sync-guild-mesh-quad-roster` recovery IPC. Bundle: `npm run test:ci-phase832`.
**Phase 831 (v0.8.798):** `sync-guild-mesh-quad-presence` recovery IPC. Bundle: `npm run test:ci-phase831`. **Phase 831 (v0.8.798):** `sync-guild-mesh-quad-presence` recovery IPC. Bundle: `npm run test:ci-phase831`.
+23
View File
@@ -1450,6 +1450,29 @@ async function dispatchUiMessage (platform, msg, hooks = {}) {
}) })
return true return true
} }
if (t === 'sync-guild-mesh-quad-unread') {
if (platform.mode === 'guild' && platform.guild?.guild?.id) {
const gid = platform.guild.guild.id
const peerN = platform.guild?.peers?.size ?? 0
platform.emit('guild-mesh-topology', {
guildId: gid,
meshPeerCount: peerN,
manualRecovery: true,
quadMesh: true
})
platform.emit('notification')
platform.emit('guild-sync-ready', { guildId: gid, quadUnread: 1, channels: 1 })
if (typeof platform.requestGuildSyncFanout === 'function') {
platform.requestGuildSyncFanout()
}
}
pushState({
structural: true,
light: false,
source: 'sync-guild-mesh-quad-unread'
})
return true
}
if (t === 'sync-guild-mesh-quad-roster') { if (t === 'sync-guild-mesh-quad-roster') {
if (platform.mode === 'guild' && platform.guild?.guild?.id) { if (platform.mode === 'guild' && platform.guild?.guild?.id) {
const gid = platform.guild.guild.id const gid = platform.guild.guild.id