ruvnet/ruflo · error · Error
SONA is disabled
Error message
SONA is disabled
What it means
A SONA trajectory/profile tool handler ran while the shared SONAState has enabled=false. The neural-optimization subsystem was switched off by configuration, so every SONA MCP tool refuses work with this sentinel error instead of silently no-oping.
Source
Thrown at v3/mcp/tools/sona-tools.ts:320
}
}
function getState(): SONAState {
return SONAState.getInstance();
}
// ============================================================================
// Tool Handlers
// ============================================================================
async function handleTrajectoryBegin(
input: z.infer<typeof trajectoryBeginSchema>,
context?: ToolContext
): Promise<{ trajectoryId: string; sessionId: string; startedAt: string }> {
const state = getState();
if (!state.enabled) {
throw new Error('SONA is disabled');
}
const trajectoryId = state.generateId('traj');
const sessionId = input.sessionId || state.generateId('session');
const trajectory: Trajectory = {
id: trajectoryId,
sessionId,
startedAt: new Date(),
steps: [],
context: input.context || {},
};
state.trajectories.set(trajectoryId, trajectory);
state.stats.trajectoryCount++;
return {
trajectoryId,View on GitHub (pinned to fa13ee4ad6)
Solutions
- Enable SONA in the configuration before calling SONA tools.
- Check the feature flag or environment variable that disables SONA.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at v3/mcp/tools/sona-tools.ts:320 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/5f7fb3971beb0865.
Report an issue: GitHub.