{"record":{"id":"96b52d0a4a135719","repo":"ruvnet/ruflo","slug":"unknown","errorCode":"UNKNOWN","errorMessage":"Execution cancelled","messagePattern":"Execution cancelled","errorType":"exception","errorClass":"GasTownError","httpStatus":null,"severity":"error","filePath":"v3/plugins/gastown-bridge/src/formula/executor.ts","lineNumber":773,"sourceCode":"        const getReadySteps = (): Step[] => {\n          const ready: Step[] = [];\n          for (const step of orderedSteps) {\n            if (completed.has(step.id) || inProgress.has(step.id)) continue;\n            const deps = stepDeps.get(step.id);\n            if (!deps || [...deps].every(d => completed.has(d))) {\n              ready.push(step);\n            }\n          }\n          return ready;\n        };\n\n        // Execute in parallel waves\n        while (completed.size < orderedSteps.length) {\n          // Check for cancellation\n          if (signal.aborted) {\n            progress.status = 'cancelled';\n            this.emit('execution:cancelled', executionId);\n            throw new GasTownError(\n              'Execution cancelled',\n              GasTownErrorCode.UNKNOWN,\n              { executionId }\n            );\n          }\n\n          const readySteps = getReadySteps();\n          if (readySteps.length === 0 && inProgress.size === 0) {\n            // Deadlock - should not happen with valid DAG\n            break;\n          }\n\n          // Limit parallel execution\n          const batchSize = Math.min(readySteps.length, maxParallel - inProgress.size);\n          const batch = readySteps.slice(0, batchSize);\n\n          if (batch.length === 0) {\n            // Wait for in-progress steps to complete","sourceCodeStart":755,"sourceCodeEnd":791,"githubUrl":"https://github.com/ruvnet/ruflo/blob/fa13ee4ad60ac2090b1480656eb233521790d640/v3/plugins/gastown-bridge/src/formula/executor.ts#L755-L791","documentation":"Formula execution noticed signal.aborted while scheduling the next wave of parallel steps — the caller's AbortSignal cancelled the run. Execution stops with this error (status set accordingly) rather than continuing to launch steps; it is the intended cancellation path, not a crash.","triggerScenarios":"Thrown at v3/plugins/gastown-bridge/src/formula/executor.ts:773 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the cancellation source (AbortSignal/timeout) and restart the operation if the cancellation was unintended.","Handle cancellation as a control-flow path: clean up partial state and surface a resumable status to the caller."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fa13ee4ad60ac2090b1480656eb233521790d640","analyzedAt":"2026-08-18T21:34:22.708Z","contentChangedAt":"2026-08-18T21:34:22.708Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}