Phase 826: sync-guild-mesh-triple-churn-rejoin IPC (v0.8.793)

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-06-04 03:31:24 -04:00
co-authored by Cursor
parent cb07eca8bf
commit 804605c59b
2 changed files with 40 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 826 (v0.8.793):** `sync-guild-mesh-triple-churn-rejoin` recovery IPC. Bundle: `npm run test:ci-phase826`.
**Phase 825 (v0.8.792):** `sync-guild-mesh-triple-recovery-burst` recovery IPC. Bundle: `npm run test:ci-phase825`.
**Phase 824 (v0.8.791):** `sync-guild-mesh-triple-sync-burst` recovery IPC. Bundle: `npm run test:ci-phase824`.
+38
View File
@@ -1400,6 +1400,44 @@ async function dispatchUiMessage (platform, msg, hooks = {}) {
})
return true
}
if (t === 'sync-guild-mesh-triple-churn-rejoin') {
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,
churnRejoin: true
})
if (typeof platform.clearGuildSyncPushHalt === 'function') {
platform.clearGuildSyncPushHalt(gid)
}
if (typeof platform.runOfflineRecoverySync === 'function') {
await platform.runOfflineRecoverySync().catch(() => null)
}
if (typeof platform.requestGuildSyncBurst === 'function') {
platform.requestGuildSyncBurst({ clearPushHalt: true })
} else if (typeof platform.requestGuildSyncFanout === 'function') {
platform.requestGuildSyncFanout()
}
platform.emit('guild-sync-health')
platform.emit('guild-mesh-reconnected', {
guildId: gid,
meshPeerCount: peerN,
peerId: null,
manualRecovery: true,
churnRejoin: true
})
platform.emit('guild-sync-ready', { guildId: gid, churnRejoin: 1 })
}
pushState({
structural: true,
light: false,
source: 'sync-guild-mesh-triple-churn-rejoin'
})
return true
}
if (t === 'sync-guild-mesh-triple-push-halt-clear') {
if (platform.mode === 'guild' && platform.guild?.guild?.id) {
const gid = platform.guild.guild.id