Phase 825: sync-guild-mesh-triple-recovery-burst IPC (v0.8.792)
Combine offline recovery sync with sync burst and guild-mesh-reconnected emit for triple-peer mesh recovery chrome refresh. 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.
|
Pearcord desktop UI IPC dispatch and automated flow scenarios for Bare smokes. Mirrors `apps/pearcord` pear-pipe message handling.
|
||||||
|
|
||||||
|
**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`.
|
**Phase 824 (v0.8.791):** `sync-guild-mesh-triple-sync-burst` recovery IPC. Bundle: `npm run test:ci-phase824`.
|
||||||
|
|
||||||
**Phase 823 (v0.8.790):** `sync-guild-mesh-triple-push-halt-clear` recovery IPC. Bundle: `npm run test:ci-phase823`.
|
**Phase 823 (v0.8.790):** `sync-guild-mesh-triple-push-halt-clear` recovery IPC. Bundle: `npm run test:ci-phase823`.
|
||||||
|
|||||||
@@ -1364,6 +1364,42 @@ async function dispatchUiMessage (platform, msg, hooks = {}) {
|
|||||||
pushState({ structural: true, light: false, source: 'sync-guild-mesh-triple-sync-burst' })
|
pushState({ structural: true, light: false, source: 'sync-guild-mesh-triple-sync-burst' })
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
if (t === 'sync-guild-mesh-triple-recovery-burst') {
|
||||||
|
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
|
||||||
|
})
|
||||||
|
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
|
||||||
|
})
|
||||||
|
platform.emit('guild-sync-ready', { guildId: gid, recoveryBurst: 1 })
|
||||||
|
}
|
||||||
|
pushState({
|
||||||
|
structural: true,
|
||||||
|
light: false,
|
||||||
|
source: 'sync-guild-mesh-triple-recovery-burst'
|
||||||
|
})
|
||||||
|
return true
|
||||||
|
}
|
||||||
if (t === 'sync-guild-mesh-triple-push-halt-clear') {
|
if (t === 'sync-guild-mesh-triple-push-halt-clear') {
|
||||||
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
|
||||||
|
|||||||
Reference in New Issue
Block a user