feat(ui-flow): sync-guild-mesh-triple recovery IPC (Phase 795)

Manual triple-mesh recovery emits guild-mesh-topology and requests sync
fanout with a structural state push.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-06-03 22:25:38 -04:00
co-authored by Cursor
parent cf7fff4338
commit 7f8cb5e8af
2 changed files with 16 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.
**Phase 795 (v0.8.762):** `sync-guild-mesh-triple` → guild-mesh-topology emit + structural push. Bundle: `npm run test:ci-phase795`.
**Phase 794 (v0.8.761):** `sync-guild-channel-settings` → channel-settings emit + structural push. Bundle: `npm run test:ci-phase794`.
**Phase 793 (v0.8.760):** `sync-guild-sounds` → guild-sound emit + structural push. Bundle: `npm run test:ci-phase793`.
+14
View File
@@ -863,6 +863,20 @@ async function dispatchUiMessage (platform, msg, hooks = {}) {
pushState({ structural: true, light: false, source: 'sync-guild-channel-settings' })
return true
}
if (t === 'sync-guild-mesh-triple') {
if (platform.mode === 'guild' && platform.guild?.guild?.id) {
platform.emit('guild-mesh-topology', {
guildId: platform.guild.guild.id,
meshPeerCount: platform.guild?.peers?.size ?? 0,
manualRecovery: true
})
if (typeof platform.requestGuildSyncFanout === 'function') {
platform.requestGuildSyncFanout()
}
}
pushState({ structural: true, light: false, source: 'sync-guild-mesh-triple' })
return true
}
if (t === 'sync-guild-mesh-reconnect') {
if (platform.mode === 'guild' && platform.guild?.guild?.id) {
if (typeof platform.runOfflineRecoverySync === 'function') {