Phase 902: export mesh view snapshot + mixin pick helper + RPC import consolidation (v0.8.869)
Non-breaking refactor — pickGuildExportMeshFetchMixinMethods() eliminates duplicate mixin builds; buildExportMeshFetchRegistryDiagnosticsSnapshot() surfaces export mesh registry on platform RPC view; audit/digest RPC mixins import consolidated platform-export-mesh-fetch-mixin directly. Default gossip v1 unchanged; fleet v2 cutover still deferred. Verification: test:ci-phase902, pear run boot, pearcord.log scan.
This commit is contained in:
@@ -92,6 +92,8 @@ Application facade: one `PearcordPlatform` class that wires identity, database,
|
||||
|
||||
**Phase 822 (v0.8.789):** Triple-peer topology via `guild-mesh-topology` + `getMeshStabilityStats`. Bundle: `npm run test:ci-phase822`.
|
||||
|
||||
**Phase 902 (v0.8.869):** Export mesh view snapshot + mixin pick helper + RPC import consolidation. Bundle: `npm run test:ci-phase902`.
|
||||
|
||||
**Phase 901 (v0.8.868):** Export mesh registry entry split + lookup/alignment validation. Bundle: `npm run test:ci-phase901`.
|
||||
|
||||
**Phase 900 (v0.8.867):** Export mesh registry root move + consolidated mesh fetch mixin. Bundle: `npm run test:ci-phase900`.
|
||||
|
||||
@@ -59,9 +59,19 @@ function buildGuildExportMeshFetchMixinsFromRegistry (registry) {
|
||||
return mixins
|
||||
}
|
||||
|
||||
/** Pick one registry entry's methods from a consolidated mixin (Phase 902). */
|
||||
function pickGuildExportMeshFetchMixinMethods (entry, mixin) {
|
||||
return {
|
||||
[entry.resolveWaiterMethod]: mixin[entry.resolveWaiterMethod],
|
||||
[entry.fetchFromMeshMethod]: mixin[entry.fetchFromMeshMethod],
|
||||
[entry.fetchOnceMethod]: mixin[entry.fetchOnceMethod]
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
buildGuildExportMeshFetchMixin,
|
||||
buildGuildExportMeshFetchMixinsFromRegistry,
|
||||
pickGuildExportMeshFetchMixinMethods,
|
||||
buildGuildExportMeshGossipRequestBase,
|
||||
buildGuildExportMeshGossipWaitCallback
|
||||
}
|
||||
|
||||
@@ -33,9 +33,17 @@ function buildExportMeshFetchRegistrySnapshot () {
|
||||
})
|
||||
}
|
||||
|
||||
function buildExportMeshFetchRegistryDiagnosticsSnapshot () {
|
||||
return {
|
||||
exportMeshFetchRegistryKeys: listExportMeshFetchRegistryKeys(),
|
||||
exportMeshFetchRegistrySnapshot: buildExportMeshFetchRegistrySnapshot()
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
listExportMeshFetchRegistryKeys,
|
||||
lookupExportMeshFetchRegistryEntry,
|
||||
lookupExportMeshFetchRegistryEntryByPullConfig,
|
||||
buildExportMeshFetchRegistrySnapshot
|
||||
buildExportMeshFetchRegistrySnapshot,
|
||||
buildExportMeshFetchRegistryDiagnosticsSnapshot
|
||||
}
|
||||
|
||||
@@ -22,11 +22,13 @@ function buildRpcWireViewSnapshot () {
|
||||
function buildGuildGossipRpcDiagnosticsSnapshot () {
|
||||
const { listGuildGossipRpcRequestMethodKeys } = require('./gossip-rpc-handler-map')
|
||||
const { buildGuildGossipRpcRegistrySnapshot } = require('./gossip-rpc-registry')
|
||||
const { buildExportMeshFetchRegistryDiagnosticsSnapshot } = require('./gossip-rpc-export-mesh-registry-lookup')
|
||||
const methods = listGuildGossipRpcRequestMethodKeys()
|
||||
return {
|
||||
guildGossipRpcHandlerCount: methods.length,
|
||||
guildGossipRpcRequestMethods: methods,
|
||||
...buildGuildGossipRpcRegistrySnapshot()
|
||||
...buildGuildGossipRpcRegistrySnapshot(),
|
||||
...buildExportMeshFetchRegistryDiagnosticsSnapshot()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
const { platformAuditArchiveRpcRespondersMixin } = require('./platform-audit-archive-rpc-responders-mixin')
|
||||
const { platformTargetedExportRpcPullMixin } = require('./platform-targeted-export-rpc-pull-mixin')
|
||||
const { platformAuditExportMeshFetchMixin } = require('./platform-audit-export-mesh-fetch-mixin')
|
||||
const { platformAuditExportMeshFetchMixin } = require('./platform-export-mesh-fetch-mixin')
|
||||
|
||||
const platformAuditArchiveRpcMixin = {
|
||||
...platformAuditArchiveRpcRespondersMixin,
|
||||
|
||||
@@ -4,7 +4,7 @@ const {
|
||||
platformAutomationDigestSnapshotRpcRespondersMixin
|
||||
} = require('./platform-automation-digest-snapshot-rpc-responders-mixin')
|
||||
const { platformTargetedExportRpcPullMixin } = require('./platform-targeted-export-rpc-pull-mixin')
|
||||
const { platformAutomationDigestMeshFetchMixin } = require('./platform-automation-digest-mesh-fetch-mixin')
|
||||
const { platformAutomationDigestMeshFetchMixin } = require('./platform-export-mesh-fetch-mixin')
|
||||
|
||||
const platformAutomationDigestSnapshotRpcMixin = {
|
||||
...platformAutomationDigestSnapshotRpcRespondersMixin,
|
||||
|
||||
@@ -1,18 +1,20 @@
|
||||
'use strict'
|
||||
|
||||
const {
|
||||
buildGuildExportMeshFetchMixin,
|
||||
buildGuildExportMeshFetchMixinsFromRegistry
|
||||
buildGuildExportMeshFetchMixinsFromRegistry,
|
||||
pickGuildExportMeshFetchMixinMethods
|
||||
} = require('../../../gossip-rpc-export-mesh-bind')
|
||||
const { exportMeshFetchRegistry } = require('../../../gossip-rpc-export-mesh-registry')
|
||||
|
||||
/** Consolidated export mesh fetch mixins from registry entries (Phase 900–901). */
|
||||
/** Consolidated export mesh fetch mixins from registry entries (Phase 900–902). */
|
||||
const platformExportMeshFetchMixin = buildGuildExportMeshFetchMixinsFromRegistry(exportMeshFetchRegistry)
|
||||
const platformAuditExportMeshFetchMixin = buildGuildExportMeshFetchMixin(
|
||||
exportMeshFetchRegistry.auditExportArchive
|
||||
const platformAuditExportMeshFetchMixin = pickGuildExportMeshFetchMixinMethods(
|
||||
exportMeshFetchRegistry.auditExportArchive,
|
||||
platformExportMeshFetchMixin
|
||||
)
|
||||
const platformAutomationDigestMeshFetchMixin = buildGuildExportMeshFetchMixin(
|
||||
exportMeshFetchRegistry.automationDigestSnapshot
|
||||
const platformAutomationDigestMeshFetchMixin = pickGuildExportMeshFetchMixinMethods(
|
||||
exportMeshFetchRegistry.automationDigestSnapshot,
|
||||
platformExportMeshFetchMixin
|
||||
)
|
||||
|
||||
module.exports = {
|
||||
|
||||
Reference in New Issue
Block a user