Phase 876: gossip RPC pull shared helpers + handler map (v0.8.843)

Extract gossip-rpc-pull.js and gossip-rpc-handler-map.js; deduplicate
meshPeerIdHex, peer resolution, wire prep, and multi-peer RPC fanout across
audit archive, digest snapshot, message search, and mesh view mixins.
Non-breaking refactor only — default gossip v1 unchanged. test:ci-phase876.
This commit is contained in:
Raven Scott
2026-06-04 18:00:29 -04:00
parent 8ef089af2d
commit 22e0b9904a
8 changed files with 250 additions and 199 deletions
@@ -33,17 +33,8 @@ const {
const platformGuildWireMixin = {
_bindGuildGossipRpcHandlers (guildInstance) {
const enabled = !!sharedScope.isRpcGossipRequestEnabled?.()
const next = enabled
? {
GUILD_SYNC_REQUEST: (payload) => this._handleGuildSyncRequestRpc(payload),
MEMBER_PAGE_REQUEST: (payload) => this._handleMemberPageRequestRpc(payload),
MESSAGE_SEARCH_REQUEST: (payload) => this._handleMessageSearchRequestRpc(payload),
AUDIT_EXPORT_ARCHIVE_REQUEST: (payload) =>
this._handleAuditExportArchiveRequestRpc(payload),
AUTOMATION_DIGEST_EXPORT_SNAPSHOT_REQUEST: (payload) =>
this._handleAutomationDigestExportSnapshotRequestRpc(payload)
}
: null
const { buildGuildGossipRpcHandlerMap } = require('../../../gossip-rpc-handler-map')
const next = enabled ? buildGuildGossipRpcHandlerMap(this) : null
const hadHandlers = !!guildInstance._gossipRpcHandlers
guildInstance._gossipRpcHandlers = next
if (next && !hadHandlers && guildInstance._channels?.size) {