@claude-flow/cli 3.7.0-alpha.44 → 3.7.0-alpha.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +9 -0
  2. package/dist/src/mcp-tools/embeddings-tools.d.ts.map +1 -1
  3. package/dist/src/mcp-tools/embeddings-tools.js +40 -0
  4. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
  5. package/dist/src/mcp-tools/hive-consensus-runtime.d.ts +149 -0
  6. package/dist/src/mcp-tools/hive-consensus-runtime.d.ts.map +1 -0
  7. package/dist/src/mcp-tools/hive-consensus-runtime.js +296 -0
  8. package/dist/src/mcp-tools/hive-consensus-runtime.js.map +1 -0
  9. package/dist/src/mcp-tools/hive-mind-tools.d.ts +7 -0
  10. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -1
  11. package/dist/src/mcp-tools/hive-mind-tools.js +185 -4
  12. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
  13. package/dist/tsconfig.tsbuildinfo +1 -1
  14. package/package.json +5 -4
  15. package/dist/src/ruvector/flash-attention.d.ts +0 -195
  16. package/dist/src/ruvector/flash-attention.d.ts.map +0 -1
  17. package/dist/src/ruvector/flash-attention.js +0 -643
  18. package/dist/src/ruvector/flash-attention.js.map +0 -1
  19. package/dist/src/ruvector/moe-router.d.ts +0 -206
  20. package/dist/src/ruvector/moe-router.d.ts.map +0 -1
  21. package/dist/src/ruvector/moe-router.js +0 -626
  22. package/dist/src/ruvector/moe-router.js.map +0 -1
  23. package/dist/src/services/event-stream.d.ts +0 -25
  24. package/dist/src/services/event-stream.d.ts.map +0 -1
  25. package/dist/src/services/event-stream.js +0 -27
  26. package/dist/src/services/event-stream.js.map +0 -1
  27. package/dist/src/services/loop-worker-runner.d.ts +0 -16
  28. package/dist/src/services/loop-worker-runner.d.ts.map +0 -1
  29. package/dist/src/services/loop-worker-runner.js +0 -34
  30. package/dist/src/services/loop-worker-runner.js.map +0 -1
  31. package/dist/src/services/runtime-capabilities.d.ts +0 -22
  32. package/dist/src/services/runtime-capabilities.d.ts.map +0 -1
  33. package/dist/src/services/runtime-capabilities.js +0 -45
  34. package/dist/src/services/runtime-capabilities.js.map +0 -1
package/README.md CHANGED
@@ -395,6 +395,15 @@ User Guide section index:
395
395
 
396
396
  ---
397
397
 
398
+ ## Contributing
399
+
400
+ Humans and AI agents are both welcome. The one rule that matters: **file an issue before opening a PR** — even a 3-line one — so we can collaborate on the shape of the change before you sink time into it.
401
+
402
+ | Read | Where |
403
+ |------|-------|
404
+ | **Contributor guide** — full conventions, testing, publishing, contrastive eval, AI-agent specifics | [`docs/AGENT_CONTRIBUTOR.md`](docs/AGENT_CONTRIBUTOR.md) |
405
+ | **Pinned issue — read this first** | [How to contribute (#2035)](https://github.com/ruvnet/ruflo/issues/2035) |
406
+
398
407
  ## Support
399
408
 
400
409
  | Resource | Link |
@@ -1 +1 @@
1
- {"version":3,"file":"embeddings-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/embeddings-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAmJ1C,eAAO,MAAM,eAAe,EAAE,OAAO,EAyzBpC,CAAC"}
1
+ {"version":3,"file":"embeddings-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/embeddings-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAmJ1C,eAAO,MAAM,eAAe,EAAE,OAAO,EAo2BpC,CAAC"}
@@ -900,5 +900,45 @@ export const embeddingsTools = [
900
900
  return { success: true, ...getRabitqStatus() };
901
901
  },
902
902
  },
903
+ {
904
+ // ADR-121 Phase 5 (full) — sidecar MCP tool. Proxies through
905
+ // @claude-flow/embeddings's probeRuvectorSidecar so LLM agents
906
+ // can ask "is the optimized ruvector backend reachable?" before
907
+ // dispatching embedding-heavy work that would benefit from it.
908
+ // Composable: pair with `embeddings_status` for the full local
909
+ // capability picture, or with `agentdb_health` for the full
910
+ // memory-substrate picture.
911
+ name: 'embeddings_check_ruvector_sidecar',
912
+ description: 'Check whether the ruvector CLI MCP sidecar is reachable and report its version + MCP tool surface. Use when a multi-step embedding pipeline could delegate to the optimized native Rust backend instead of going through this JS layer — the report tells you whether that path is available. For "is anything broken?" use ruflo doctor; for "should I use ruvector for this batch?" use this tool. Never throws.',
913
+ category: 'embeddings',
914
+ inputSchema: {
915
+ type: 'object',
916
+ properties: {
917
+ timeoutMs: {
918
+ type: 'number',
919
+ description: 'Per-shellout timeout (default 5000ms).',
920
+ },
921
+ },
922
+ },
923
+ handler: async (input) => {
924
+ // Deep import — the top-level @claude-flow/embeddings barrel's
925
+ // type re-exports don't resolve cleanly through the CLI's
926
+ // bundler-mode TypeScript at workspace-symlink time (the dist
927
+ // file is present + has the export, but TS sees stale types).
928
+ // The dist sub-module path is stable across alpha bumps because
929
+ // `files: ['dist']` ships it.
930
+ // Use the `./<file>` wildcard sub-path (no `.js` suffix) — the
931
+ // exports map appends `.js` for the import target.
932
+ const mod = await import('@claude-flow/embeddings/ruvector-mcp-probe');
933
+ const timeoutMs = typeof input?.timeoutMs === 'number' ? input.timeoutMs : 5_000;
934
+ const report = await mod.probeRuvectorSidecar({ timeoutMs });
935
+ return {
936
+ success: true,
937
+ ...report,
938
+ // Single-line summary suitable for inline display.
939
+ summary: mod.formatRuvectorAvailability(report),
940
+ };
941
+ },
942
+ },
903
943
  ];
904
944
  //# sourceMappingURL=embeddings-tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"embeddings-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/embeddings-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"embeddings-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/embeddings-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Hive-Mind Consensus Runtime — ADR-095 G2.2.
3
+ *
4
+ * Before this module, `hive-mind_*` MCP tools were a JSON-file state machine
5
+ * that hand-rolled raft/byzantine/quorum voting on top of `state.consensus`
6
+ * and never touched `@claude-flow/swarm`'s real `ConsensusEngine`. That worked
7
+ * for a single MCP server but ignored every cross-host machinery G2 was meant
8
+ * to unlock: real RequestVote/AppendEntries RPCs, Ed25519-signed PBFT
9
+ * messages, FederationTransport over ADR-104 WS, BFT quorum derived from
10
+ * actual cluster size.
11
+ *
12
+ * This module owns a process-level `ConsensusEngine` plus a pluggable
13
+ * `ConsensusTransport`. `hive-mind_init` calls `init()` here; the consensus /
14
+ * broadcast / shutdown MCP tools delegate to it.
15
+ *
16
+ * Transport selection:
17
+ * - `transport: 'local'` → LocalTransport (in-process registry).
18
+ * Matches the legacy single-process path;
19
+ * real engine, just no WS.
20
+ * - `transport: 'federation'` → FederationTransport over an
21
+ * agentic-flow/transport/loader wire.
22
+ * Real cross-host messaging. Requires
23
+ * `agentic-flow` to be resolvable; if
24
+ * it's not, init returns
25
+ * `transport: 'local'` with `degraded:
26
+ * true` and a fallbackReason — the
27
+ * engine still works locally, the caller
28
+ * just knows the cross-host wire didn't
29
+ * come up.
30
+ * - `transport: 'auto'` (default)→ Probe for `agentic-flow`; if loadable
31
+ * AND `peers` were supplied with
32
+ * addresses, use federation; else local.
33
+ *
34
+ * Why peers are passed in (not auto-discovered): the federation plugin's
35
+ * DiscoveryService is the canonical source of peers, but wiring it into the
36
+ * MCP runtime is a separate concern (it has its own lifecycle / consent
37
+ * gates). Until that lands as G2.3, callers explicitly supply the peer
38
+ * list; the runtime is honest about what it received.
39
+ */
40
+ import type { ConsensusEngine as ConsensusEngineType, ConsensusTransport as ConsensusTransportType, ConsensusVote, ConsensusProposal, ConsensusResult, ConsensusAlgorithm } from '@claude-flow/swarm';
41
+ export type HiveTransportKind = 'local' | 'federation' | 'auto';
42
+ export type HiveAlgorithm = 'raft' | 'byzantine' | 'gossip';
43
+ export interface HivePeerConfig {
44
+ /** Consensus node id used by Raft/PBFT/Gossip as `from`. */
45
+ readonly nodeId: string;
46
+ /**
47
+ * Wire-level address (e.g. `wss://host:port`). Required for
48
+ * `transport: 'federation'`; ignored for `transport: 'local'`.
49
+ */
50
+ readonly address?: string;
51
+ /**
52
+ * Ed25519 SPKI PEM public key for inbound signature verification.
53
+ * When provided, FederationTransport will fail-closed on unverifiable
54
+ * messages from this peer.
55
+ */
56
+ readonly publicKeyPem?: string;
57
+ }
58
+ export interface HiveRuntimeInitOptions {
59
+ readonly nodeId: string;
60
+ readonly algorithm?: HiveAlgorithm;
61
+ readonly transport?: HiveTransportKind;
62
+ readonly peers?: readonly HivePeerConfig[];
63
+ /** Default per-send timeout for transports. */
64
+ readonly timeoutMs?: number;
65
+ /** Consensus threshold (0-1). Forwarded to ConsensusEngine. */
66
+ readonly threshold?: number;
67
+ }
68
+ export interface HiveRuntimeInitResult {
69
+ readonly initialized: true;
70
+ readonly nodeId: string;
71
+ readonly algorithm: HiveAlgorithm;
72
+ /** What we actually got — may differ from requested if federation degraded. */
73
+ readonly transport: 'local' | 'federation';
74
+ /** True when the caller asked for federation but we fell back to local. */
75
+ readonly degraded: boolean;
76
+ /** Human-readable reason for the degradation. */
77
+ readonly fallbackReason?: string;
78
+ readonly peerCount: number;
79
+ readonly source: 'engine';
80
+ }
81
+ export interface HiveRuntimeStatus {
82
+ readonly initialized: boolean;
83
+ readonly nodeId?: string;
84
+ readonly algorithm?: HiveAlgorithm;
85
+ readonly transport: 'local' | 'federation' | null;
86
+ readonly degraded: boolean;
87
+ readonly peers: readonly string[];
88
+ readonly engine: {
89
+ readonly algorithm: ConsensusAlgorithm;
90
+ readonly totalProposals: number;
91
+ readonly pendingProposals: number;
92
+ readonly acceptedProposals: number;
93
+ readonly rejectedProposals: number;
94
+ readonly expiredProposals: number;
95
+ } | null;
96
+ }
97
+ declare class HiveConsensusRuntime {
98
+ private engine;
99
+ private transport;
100
+ private wire;
101
+ private transportKind;
102
+ private nodeId;
103
+ private algorithm;
104
+ private peers;
105
+ private degraded;
106
+ private fallbackReason;
107
+ isInitialized(): boolean;
108
+ /**
109
+ * Lazy-initialize the consensus engine + transport. Idempotent on the
110
+ * same nodeId/algorithm/transport tuple — subsequent calls return the
111
+ * existing state. Different parameters trigger a clean shutdown + reinit.
112
+ */
113
+ init(opts: HiveRuntimeInitOptions): Promise<HiveRuntimeInitResult>;
114
+ /**
115
+ * Probe for the agentic-flow QUIC/WS transport loader. Returns the wire
116
+ * when loadable; an explanatory reason when not. Never throws — failure
117
+ * is data, not control flow, so the runtime can degrade cleanly.
118
+ */
119
+ private tryLoadFederationWire;
120
+ /** Propose a value through the real ConsensusEngine. */
121
+ propose(value: unknown, proposerId?: string): Promise<ConsensusProposal>;
122
+ /** Record a vote against an active proposal. */
123
+ vote(proposalId: string, vote: ConsensusVote): Promise<void>;
124
+ /**
125
+ * Block until a proposal resolves (accepted / rejected / expired).
126
+ * Used by the MCP tool when callers want a synchronous result instead
127
+ * of polling `proposal-status`.
128
+ */
129
+ awaitConsensus(proposalId: string): Promise<ConsensusResult>;
130
+ /**
131
+ * Broadcast a free-form payload to all known peers via the transport.
132
+ * Gossip-style, no reply expected. Wraps the payload so peers don't
133
+ * confuse it with protocol messages — `type: 'hive-broadcast'`.
134
+ */
135
+ broadcast(payload: unknown, priority?: 'low' | 'normal' | 'high' | 'critical'): Promise<{
136
+ delivered: number;
137
+ transport: 'local' | 'federation';
138
+ }>;
139
+ status(): HiveRuntimeStatus;
140
+ shutdown(): Promise<void>;
141
+ /** Test seam: replace the singleton's underlying engine + transport. */
142
+ __setForTest(engine: ConsensusEngineType, transport: ConsensusTransportType, nodeId: string, kind?: 'local' | 'federation'): void;
143
+ private toInitResult;
144
+ }
145
+ /** Process-level singleton — one engine per MCP server. */
146
+ export declare const hiveConsensusRuntime: HiveConsensusRuntime;
147
+ /** Re-export the singleton's type for tests / advanced consumers. */
148
+ export type { HiveConsensusRuntime };
149
+ //# sourceMappingURL=hive-consensus-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hive-consensus-runtime.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/hive-consensus-runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,296 @@
1
+ /**
2
+ * Hive-Mind Consensus Runtime — ADR-095 G2.2.
3
+ *
4
+ * Before this module, `hive-mind_*` MCP tools were a JSON-file state machine
5
+ * that hand-rolled raft/byzantine/quorum voting on top of `state.consensus`
6
+ * and never touched `@claude-flow/swarm`'s real `ConsensusEngine`. That worked
7
+ * for a single MCP server but ignored every cross-host machinery G2 was meant
8
+ * to unlock: real RequestVote/AppendEntries RPCs, Ed25519-signed PBFT
9
+ * messages, FederationTransport over ADR-104 WS, BFT quorum derived from
10
+ * actual cluster size.
11
+ *
12
+ * This module owns a process-level `ConsensusEngine` plus a pluggable
13
+ * `ConsensusTransport`. `hive-mind_init` calls `init()` here; the consensus /
14
+ * broadcast / shutdown MCP tools delegate to it.
15
+ *
16
+ * Transport selection:
17
+ * - `transport: 'local'` → LocalTransport (in-process registry).
18
+ * Matches the legacy single-process path;
19
+ * real engine, just no WS.
20
+ * - `transport: 'federation'` → FederationTransport over an
21
+ * agentic-flow/transport/loader wire.
22
+ * Real cross-host messaging. Requires
23
+ * `agentic-flow` to be resolvable; if
24
+ * it's not, init returns
25
+ * `transport: 'local'` with `degraded:
26
+ * true` and a fallbackReason — the
27
+ * engine still works locally, the caller
28
+ * just knows the cross-host wire didn't
29
+ * come up.
30
+ * - `transport: 'auto'` (default)→ Probe for `agentic-flow`; if loadable
31
+ * AND `peers` were supplied with
32
+ * addresses, use federation; else local.
33
+ *
34
+ * Why peers are passed in (not auto-discovered): the federation plugin's
35
+ * DiscoveryService is the canonical source of peers, but wiring it into the
36
+ * MCP runtime is a separate concern (it has its own lifecycle / consent
37
+ * gates). Until that lands as G2.3, callers explicitly supply the peer
38
+ * list; the runtime is honest about what it received.
39
+ */
40
+ class HiveConsensusRuntime {
41
+ engine = null;
42
+ transport = null;
43
+ wire = null;
44
+ transportKind = null;
45
+ nodeId = null;
46
+ algorithm = 'raft';
47
+ peers = [];
48
+ degraded = false;
49
+ fallbackReason;
50
+ isInitialized() {
51
+ return this.engine !== null;
52
+ }
53
+ /**
54
+ * Lazy-initialize the consensus engine + transport. Idempotent on the
55
+ * same nodeId/algorithm/transport tuple — subsequent calls return the
56
+ * existing state. Different parameters trigger a clean shutdown + reinit.
57
+ */
58
+ async init(opts) {
59
+ const requestedAlgorithm = opts.algorithm ?? 'raft';
60
+ const requestedTransport = opts.transport ?? 'auto';
61
+ const peers = [...(opts.peers ?? [])];
62
+ // If already initialized with the same shape, return existing state.
63
+ if (this.engine && this.nodeId === opts.nodeId && this.algorithm === requestedAlgorithm) {
64
+ return this.toInitResult();
65
+ }
66
+ // Different shape — tear down before re-instantiating.
67
+ if (this.engine) {
68
+ await this.shutdown();
69
+ }
70
+ const swarm = await import('@claude-flow/swarm');
71
+ // Resolve transport. 'auto' prefers federation when the loader is
72
+ // available AND we have peer addresses; otherwise local.
73
+ let resolvedKind;
74
+ let resolvedTransport;
75
+ let degraded = false;
76
+ let fallbackReason;
77
+ if (requestedTransport === 'local') {
78
+ resolvedKind = 'local';
79
+ resolvedTransport = new swarm.LocalTransport(opts.nodeId, {
80
+ defaultTimeoutMs: opts.timeoutMs,
81
+ });
82
+ }
83
+ else {
84
+ // 'federation' or 'auto' → probe agentic-flow loader.
85
+ const probe = await this.tryLoadFederationWire(opts);
86
+ if (probe.wire) {
87
+ // Build the addressOf map from peers config.
88
+ const addressMap = new Map();
89
+ const pubkeyMap = new Map();
90
+ for (const p of peers) {
91
+ if (p.address)
92
+ addressMap.set(p.nodeId, p.address);
93
+ if (p.publicKeyPem)
94
+ pubkeyMap.set(p.nodeId, p.publicKeyPem);
95
+ }
96
+ this.wire = probe.wire;
97
+ resolvedKind = 'federation';
98
+ resolvedTransport = new swarm.FederationTransport(probe.wire, {
99
+ nodeId: opts.nodeId,
100
+ addressOf: (id) => addressMap.get(id),
101
+ peerIds: () => peers.map(p => p.nodeId),
102
+ defaultTimeoutMs: opts.timeoutMs,
103
+ resolvePeerPublicKey: pubkeyMap.size > 0 ? (id) => pubkeyMap.get(id) : undefined,
104
+ });
105
+ }
106
+ else {
107
+ // Couldn't load federation wire. 'federation' requested → degrade
108
+ // honestly. 'auto' → silently fall back to local.
109
+ if (requestedTransport === 'federation') {
110
+ degraded = true;
111
+ fallbackReason = probe.reason ?? 'agentic-flow loader unavailable';
112
+ }
113
+ resolvedKind = 'local';
114
+ resolvedTransport = new swarm.LocalTransport(opts.nodeId, {
115
+ defaultTimeoutMs: opts.timeoutMs,
116
+ });
117
+ }
118
+ }
119
+ // Build the engine with the resolved transport. We pass `transport`
120
+ // through `config.transport` (typed `unknown` on `ConsensusConfig` in
121
+ // swarm's types.ts — the engine narrows it via a structural check).
122
+ const engine = new swarm.ConsensusEngine(opts.nodeId, {
123
+ algorithm: requestedAlgorithm,
124
+ threshold: opts.threshold ?? 0.66,
125
+ timeoutMs: opts.timeoutMs ?? 30_000,
126
+ maxRounds: 10,
127
+ requireQuorum: true,
128
+ transport: resolvedTransport,
129
+ });
130
+ await engine.initialize();
131
+ // Register peers with the consensus engine so its protocol-internal
132
+ // bookkeeping (Raft's `peers` map, BFT's node set, gossip neighbors)
133
+ // matches the transport's peer list.
134
+ for (const p of peers) {
135
+ if (p.nodeId === opts.nodeId)
136
+ continue;
137
+ engine.addNode(p.nodeId);
138
+ }
139
+ this.engine = engine;
140
+ this.transport = resolvedTransport;
141
+ this.transportKind = resolvedKind;
142
+ this.nodeId = opts.nodeId;
143
+ this.algorithm = requestedAlgorithm;
144
+ this.peers = peers;
145
+ this.degraded = degraded;
146
+ this.fallbackReason = fallbackReason;
147
+ return this.toInitResult();
148
+ }
149
+ /**
150
+ * Probe for the agentic-flow QUIC/WS transport loader. Returns the wire
151
+ * when loadable; an explanatory reason when not. Never throws — failure
152
+ * is data, not control flow, so the runtime can degrade cleanly.
153
+ */
154
+ async tryLoadFederationWire(_opts) {
155
+ // agentic-flow is an *optional* peer dep — when it isn't installed,
156
+ // dynamic import throws and we degrade. The bare-string specifier
157
+ // is wrapped in a `new Function(...)` so the TS compiler doesn't try
158
+ // to resolve types at build time (the same pattern the federation
159
+ // plugin's loader uses, see ADR-120 step 2 comments).
160
+ const importDynamic = new Function('s', 'return import(s)');
161
+ let mod;
162
+ try {
163
+ mod = await importDynamic('agentic-flow/transport/loader');
164
+ }
165
+ catch (err) {
166
+ return { wire: null, reason: `agentic-flow not installed (${err.message ?? 'unknown'})` };
167
+ }
168
+ const m = mod;
169
+ const fn = typeof m.loadQuicTransport === 'function'
170
+ ? m.loadQuicTransport
171
+ : m.default?.loadQuicTransport;
172
+ if (typeof fn !== 'function') {
173
+ return { wire: null, reason: 'agentic-flow loader does not expose loadQuicTransport' };
174
+ }
175
+ try {
176
+ const wire = await fn();
177
+ if (!wire || typeof wire.send !== 'function' || typeof wire.onMessage !== 'function') {
178
+ return { wire: null, reason: 'agentic-flow loader returned a wire without send/onMessage' };
179
+ }
180
+ return { wire };
181
+ }
182
+ catch (err) {
183
+ return { wire: null, reason: `agentic-flow loader threw: ${err.message ?? 'unknown'}` };
184
+ }
185
+ }
186
+ /** Propose a value through the real ConsensusEngine. */
187
+ async propose(value, proposerId) {
188
+ if (!this.engine)
189
+ throw new Error('hive-consensus-runtime: not initialized');
190
+ return this.engine.propose(value, proposerId ?? this.nodeId ?? 'unknown');
191
+ }
192
+ /** Record a vote against an active proposal. */
193
+ async vote(proposalId, vote) {
194
+ if (!this.engine)
195
+ throw new Error('hive-consensus-runtime: not initialized');
196
+ await this.engine.vote(proposalId, vote);
197
+ }
198
+ /**
199
+ * Block until a proposal resolves (accepted / rejected / expired).
200
+ * Used by the MCP tool when callers want a synchronous result instead
201
+ * of polling `proposal-status`.
202
+ */
203
+ async awaitConsensus(proposalId) {
204
+ if (!this.engine)
205
+ throw new Error('hive-consensus-runtime: not initialized');
206
+ return this.engine.awaitConsensus(proposalId);
207
+ }
208
+ /**
209
+ * Broadcast a free-form payload to all known peers via the transport.
210
+ * Gossip-style, no reply expected. Wraps the payload so peers don't
211
+ * confuse it with protocol messages — `type: 'hive-broadcast'`.
212
+ */
213
+ async broadcast(payload, priority = 'normal') {
214
+ if (!this.transport)
215
+ throw new Error('hive-consensus-runtime: not initialized');
216
+ const peers = this.transport.peers();
217
+ await this.transport.broadcast({
218
+ type: 'hive-broadcast',
219
+ payload: { value: payload, priority, sentAt: new Date().toISOString() },
220
+ });
221
+ return { delivered: peers.length, transport: this.transportKind };
222
+ }
223
+ status() {
224
+ if (!this.engine || !this.transport) {
225
+ return {
226
+ initialized: false,
227
+ transport: null,
228
+ degraded: false,
229
+ peers: [],
230
+ engine: null,
231
+ };
232
+ }
233
+ return {
234
+ initialized: true,
235
+ nodeId: this.nodeId,
236
+ algorithm: this.algorithm,
237
+ transport: this.transportKind,
238
+ degraded: this.degraded,
239
+ peers: [...this.transport.peers()],
240
+ engine: this.engine.getStats(),
241
+ };
242
+ }
243
+ async shutdown() {
244
+ const engine = this.engine;
245
+ const transport = this.transport;
246
+ const wire = this.wire;
247
+ this.engine = null;
248
+ this.transport = null;
249
+ this.wire = null;
250
+ this.transportKind = null;
251
+ this.nodeId = null;
252
+ this.peers = [];
253
+ this.degraded = false;
254
+ this.fallbackReason = undefined;
255
+ if (engine) {
256
+ try {
257
+ await engine.shutdown();
258
+ }
259
+ catch { /* best-effort */ }
260
+ }
261
+ if (transport) {
262
+ try {
263
+ await transport.close();
264
+ }
265
+ catch { /* best-effort */ }
266
+ }
267
+ if (wire && typeof wire.close === 'function') {
268
+ try {
269
+ await wire.close();
270
+ }
271
+ catch { /* best-effort */ }
272
+ }
273
+ }
274
+ /** Test seam: replace the singleton's underlying engine + transport. */
275
+ __setForTest(engine, transport, nodeId, kind = 'local') {
276
+ this.engine = engine;
277
+ this.transport = transport;
278
+ this.nodeId = nodeId;
279
+ this.transportKind = kind;
280
+ }
281
+ toInitResult() {
282
+ return {
283
+ initialized: true,
284
+ nodeId: this.nodeId,
285
+ algorithm: this.algorithm,
286
+ transport: this.transportKind,
287
+ degraded: this.degraded,
288
+ fallbackReason: this.fallbackReason,
289
+ peerCount: this.peers.length,
290
+ source: 'engine',
291
+ };
292
+ }
293
+ }
294
+ /** Process-level singleton — one engine per MCP server. */
295
+ export const hiveConsensusRuntime = new HiveConsensusRuntime();
296
+ //# sourceMappingURL=hive-consensus-runtime.js.map