{"record":{"id":"c9b28be89a920baa","repo":"ruvnet/ruflo","slug":"darwin-explicitly-requested-but-unavailable","errorCode":null,"errorMessage":"Darwin explicitly requested but unavailable","messagePattern":"Darwin explicitly requested but unavailable","errorType":"exception","errorClass":"DarwinUnavailableError","httpStatus":null,"severity":"error","filePath":"v3/@claude-flow/cli/src/services/flywheel-proposer.ts","lineNumber":196,"sourceCode":"}\n\nexport async function proposeFlywheelCandidates(input: ProposeCandidatesInput): Promise<CandidateArchive> {\n  const baselineRef = policyCandidateId(input.baselinePolicy);\n  const runLocal = async (substitution?: string) => finalizeArchive({\n    requested: input.mode,\n    effective: 'local',\n    substitution,\n    promotionAllowed: substitution ? input.allowSubstitutionPromotion === true : true,\n    baselineRef,\n    safetyEnvelope: input.safetyEnvelope,\n    seed: input.seed,\n    candidates: await input.localProposer(input.baselinePolicy, input.seed),\n    completed: true,\n  });\n\n  if (input.mode === 'local') return runLocal();\n  if (!input.darwinInvoker) {\n    if (input.mode === 'darwin') throw new DarwinUnavailableError('Darwin explicitly requested but unavailable');\n    return runLocal('darwin-unavailable');\n  }\n\n  try {\n    const maxWallTimeMs = input.maxWallTimeMs ?? 60_000;\n    let timeout: NodeJS.Timeout | undefined;\n    const result = await Promise.race([\n      input.darwinInvoker({\n        baselinePolicy: input.baselinePolicy,\n        seed: input.seed,\n        budget: {\n          maxEvaluationCostMicros: input.safetyEnvelope.maxEvaluationCostMicros,\n          maxConcurrency: input.maxConcurrency ?? 2,\n          maxWallTimeMs,\n        },\n      }),\n      new Promise<never>((_, reject) => {\n        timeout = setTimeout(() => reject(new DarwinUnavailableError('Darwin exceeded wall-time budget')), maxWallTimeMs);","sourceCodeStart":178,"sourceCodeEnd":214,"githubUrl":"https://github.com/ruvnet/ruflo/blob/fa13ee4ad60ac2090b1480656eb233521790d640/v3/@claude-flow/cli/src/services/flywheel-proposer.ts#L178-L214","documentation":"proposeFlywheelCandidates raises DarwinUnavailableError when mode is explicitly 'darwin' but no Darwin proposer is available; unlike local mode, an explicit darwin request must not silently substitute.","triggerScenarios":"Thrown at v3/@claude-flow/cli/src/services/flywheel-proposer.ts:196 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Do not pass the Darwin option on this platform/config","Enable Darwin support prerequisites before requesting it"],"exampleFix":"Remove the explicit Darwin request, or enable/install the Darwin proposer backend before requesting it.","handlingStrategy":"fallback","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-23T08:17:48.524Z"}