ruvnet/ruflo · error
Inbound authorization failed for ${sourceNodeId} (addr=${add
Error message
Inbound authorization failed for ${sourceNodeId} (addr=${address}) What it means
Logged in dispatchInbound after the ADR-325 inbound authorization evaluator threw or returned a malformed decision (missing/non-boolean allowed) while authorizing a federated peer message. In enforce mode it accompanies a message_rejected audit entry and an accepted:false/AUTHORIZATION_ERROR result, so the inbound envelope is dropped rather than dispatched.
Source
Thrown at v3/@claude-flow/plugin-agent-federation/src/application/inbound-dispatcher.ts:416
address,
sourceNodeId,
messageType: message.type,
message,
peer,
signatureVersion,
messageSizeBytes: new TextEncoder().encode(canonicalEnvelope).byteLength,
});
if (!decision || typeof decision.allowed !== 'boolean') {
throw new TypeError('Inbound authorization evaluator returned an invalid decision');
}
authorizationDecision = decision;
} catch {
if (authorizationMode === 'enforce') {
await deps.audit.log('message_rejected', {
sourceNodeId,
metadata: { address, reason: 'AUTHORIZATION_ERROR', messageType: message.type },
});
deps.logger.warn(`Inbound authorization failed for ${sourceNodeId} (addr=${address})`);
return { accepted: false, reason: 'AUTHORIZATION_ERROR' };
}
deps.logger.warn(
`Inbound authorization observation failed for ${sourceNodeId} (mode=${authorizationMode})`,
);
}
} else if (authorizationMode === 'enforce') {
await deps.audit.log('message_rejected', {
sourceNodeId,
metadata: { address, reason: 'AUTHORIZATION_ERROR', messageType: message.type },
});
deps.logger.warn('Inbound rejected: enforce mode has no authorization evaluator');
return { accepted: false, reason: 'AUTHORIZATION_ERROR' };
}
if (authorizationDecision && !authorizationDecision.allowed) {
if (authorizationMode === 'enforce') {
await deps.audit.log('message_rejected', {View on GitHub (pinned to fa13ee4ad6)
Solutions
- Inspect the authorization evaluator error for the node; fix the evaluator or its policy input.
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at v3/@claude-flow/plugin-agent-federation/src/application/inbound-dispatcher.ts:416 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/103197c1c54fa617.
Report an issue: GitHub.