ruvnet/ruflo · error
Inbound rejected: ${sourceNodeId} not in discovery (from ${a
Error message
Inbound rejected: ${sourceNodeId} not in discovery (from ${address}) What it means
Log warning in dispatchInbound: the claimed sourceNodeId does not match any peer in the discovery table (unknown node), so the sender cannot be authenticated; the message is audited and rejected.
Source
Thrown at v3/@claude-flow/plugin-agent-federation/src/application/inbound-dispatcher.ts:294
const meta = (message.metadata ?? {}) as Record<string, unknown>;
const sourceNodeId = typeof meta.sourceNodeId === 'string' ? meta.sourceNodeId : null;
if (!sourceNodeId) {
await deps.audit.log('message_rejected', {
sourceNodeId: undefined,
metadata: { address, reason: 'MISSING_METADATA' },
});
deps.logger.warn(`Inbound rejected: no sourceNodeId in metadata (from ${address})`);
return { accepted: false, reason: 'MISSING_METADATA' };
}
const peer = deps.discovery.getPeer(sourceNodeId);
if (!peer) {
await deps.audit.log('message_rejected', {
sourceNodeId,
metadata: { address, reason: 'PEER_UNKNOWN' },
});
deps.logger.warn(`Inbound rejected: ${sourceNodeId} not in discovery (from ${address})`);
return { accepted: false, reason: 'PEER_UNKNOWN' };
}
if (peer.state === FederationNodeState.SUSPENDED) {
await deps.audit.log('message_rejected', {
sourceNodeId,
metadata: { address, reason: 'PEER_SUSPENDED' },
});
return { accepted: false, reason: 'PEER_SUSPENDED' };
}
if (peer.state === FederationNodeState.EVICTED) {
await deps.audit.log('message_rejected', {
sourceNodeId,
metadata: { address, reason: 'PEER_EVICTED' },
});
return { accepted: false, reason: 'PEER_EVICTED' };
}View on GitHub (pinned to fa13ee4ad6)
Solutions
- Add the sending node to the discovery registry or fix its node ID; unknown nodes are rejected.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at v3/@claude-flow/plugin-agent-federation/src/application/inbound-dispatcher.ts:294 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18).
Data as JSON: /api/errors/8c60205ad82de71e.
Report an issue: GitHub.