ruvnet/ruflo · error
WASM analysis failed, falling back to JS
Error message
WASM analysis failed, falling back to JS
What it means
Log warning in checkCompletion: the WASM dependency-graph analysis (analyzeWithWasm) threw, so cycle/ready/blocked detection is recomputed with the JavaScript fallback implementation.
Source
Thrown at v3/plugins/gastown-bridge/src/convoy/observer.ts:439
openIssues.push(issueId);
}
}
// Use WASM for graph analysis if available
let hasCycles = false;
let cycleIssues: string[] = [];
let readyIssues: ReadyIssueInfo[] = [];
let blockedIssues: BlockerInfo[] = [];
if (this.config.useWasm && this.wasmModule) {
try {
const wasmResult = this.analyzeWithWasm(beads);
hasCycles = wasmResult.hasCycles;
cycleIssues = wasmResult.cycleIssues;
readyIssues = wasmResult.readyIssues;
blockedIssues = wasmResult.blockedIssues;
} catch (error) {
this.logger.warn('WASM analysis failed, falling back to JS', {
error: error instanceof Error ? error.message : String(error),
});
const jsResult = this.analyzeWithJS(beads, convoy.trackedIssues);
hasCycles = jsResult.hasCycles;
cycleIssues = jsResult.cycleIssues;
readyIssues = jsResult.readyIssues;
blockedIssues = jsResult.blockedIssues;
}
} else {
const jsResult = this.analyzeWithJS(beads, convoy.trackedIssues);
hasCycles = jsResult.hasCycles;
cycleIssues = jsResult.cycleIssues;
readyIssues = jsResult.readyIssues;
blockedIssues = jsResult.blockedIssues;
}
const progress: ConvoyProgress = {
total: convoy.trackedIssues.length,View on GitHub (pinned to fa13ee4ad6)
Solutions
- Check the WASM analysis error; the JS fallback is used, so results remain correct but slower — reinstall the WASM module to restore speed.
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at v3/plugins/gastown-bridge/src/convoy/observer.ts:439 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/fce092f698d88bee.
Report an issue: GitHub.