feat(rpc): Phase 869 guild sync request/response pull (v0.8.836)

Add opt-in protomux-rpc GUILD_SYNC_REQUEST pull when PEARCORD_RPC_WIRE=v2|dual
and PEARCORD_RPC_REQUEST_WIRE=1. Platform binds RPC responders on the mesh host,
joiner uses _tryGuildSyncRequestRpc with event-fanout fallback unchanged by default.

Includes mux-wire/gossip-request.js, live smoke, CI bundle test:ci-phase869, and
hardened dual-stack/v2 roundtrip smokes (bounded flush, longer timeouts). No
breaking change: default gossip event paths remain v1 unless env enables v2.
This commit is contained in:
Raven Scott
2026-06-04 16:38:41 -04:00
parent 0b9816e003
commit d7460405fe
8 changed files with 96 additions and 5 deletions
+17
View File
@@ -0,0 +1,17 @@
# Release v0.8.836 — Phase 869
## Summary
Opt-in protomux-rpc **request/response** for guild sync: joiner pulls a `GUILD_SYNC` bundle from the mesh host via `GUILD_SYNC_REQUEST` when `PEARCORD_RPC_WIRE=v2|dual` and `PEARCORD_RPC_REQUEST_WIRE=1`. Default gossip event fanout is unchanged.
## Changes
- `pearcord-shared/rpc-wire-env.js``isRpcGossipRequestEnabled()`
- `pearcord-drive/mux-wire/gossip-request.js``requestGossipFromPeer`
- `pearcord-guild/mesh.js``requestHandlers` on gossip attach
- `pearcord-platform``_bindGuildGossipRpcHandlers`, `_handleGuildSyncRequestRpc`, `_tryGuildSyncRequestRpc`
## Verification
- `npm run test:ci-phase869`
- `npm run test:protomux-rpc-guild-sync-request-live`