Phase 788: sync-guild-mesh-reconnect IPC (v0.8.755)
Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
|
||||
Pearcord desktop UI IPC dispatch and automated flow scenarios for Bare smokes. Mirrors `apps/pearcord` pear-pipe message handling.
|
||||
|
||||
**Phase 788 (v0.8.755):** `sync-guild-mesh-reconnect` → offline recovery + structural push. Bundle: `npm run test:ci-phase788`.
|
||||
|
||||
**Phase 787 (v0.8.754):** `sync-guild-roles` → guild-member-roles emit + structural push. Bundle: `npm run test:ci-phase787`.
|
||||
|
||||
**Phase 786 (v0.8.753):** `sync-guild-typing` → typing emit + light push. Bundle: `npm run test:ci-phase786`.
|
||||
|
||||
@@ -783,6 +783,23 @@ async function dispatchUiMessage (platform, msg, hooks = {}) {
|
||||
pushState({ structural: true, light: false, source: 'sync-guild-roles' })
|
||||
return true
|
||||
}
|
||||
if (t === 'sync-guild-mesh-reconnect') {
|
||||
if (platform.mode === 'guild' && platform.guild?.guild?.id) {
|
||||
if (typeof platform.runOfflineRecoverySync === 'function') {
|
||||
await platform.runOfflineRecoverySync().catch(() => null)
|
||||
} else if (typeof platform.requestGuildSyncFanout === 'function') {
|
||||
platform.requestGuildSyncFanout()
|
||||
}
|
||||
platform.emit('guild-mesh-reconnected', {
|
||||
guildId: platform.guild.guild.id,
|
||||
meshPeerCount: platform.guild?.peers?.size ?? 0,
|
||||
peerId: null,
|
||||
manualRecovery: true
|
||||
})
|
||||
}
|
||||
pushState({ structural: true, light: false, source: 'sync-guild-mesh-reconnect' })
|
||||
return true
|
||||
}
|
||||
if (t === 'sync-guild-voice') {
|
||||
if (platform.mode === 'guild' && platform.guild?.guild?.id) {
|
||||
platform.emit('voice-state')
|
||||
|
||||
Reference in New Issue
Block a user