{"record":{"id":"e1323957ae272cb7","repo":"deepseek-ai/deepseek-harness","slug":"llm-deepseek-only-reasoningeffort-off-can-be-co","errorCode":null,"errorMessage":"llm-deepseek: only reasoningEffort \"off\" can be configured when thinking is disabled","messagePattern":"llm-deepseek: only reasoningEffort \"off\" can be configured when thinking is disabled","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/llm/llm-deepseek/src/index.ts","lineNumber":279,"sourceCode":"}\n\n/**\n * The one explicit resolve step from raw config to validated connection\n * facts. Programmatic construction may bypass Schemastery normalization, so\n * every default and bound is re-judged here — for the composition entry at\n * load (fail loud) and for each settings snapshot at its first use.\n * @param config - raw plugin config or resolved settings snapshot.\n * @param environment - this run's environment layers, or `undefined` outside\n * the product CLI. Every layer may supply an endpoint: the product trusts the\n * project it is launched in, so a checkout can point its own agent at the\n * gateway that checkout is meant to use.\n * @returns validated connection facts plus the credential reference.\n */\nexport function resolveAdapterOptions(config: Config, environment?: LaunchEnvironmentSnapshot): ResolvedDeepSeekOptions {\n  if (config.thinking === 'disabled'\n    && config.reasoningEffort !== undefined\n    && config.reasoningEffort !== 'off') {\n    throw new Error('llm-deepseek: only reasoningEffort \"off\" can be configured when thinking is disabled')\n  }\n  if (config.defaultContextWindow !== undefined\n    && (!Number.isInteger(config.defaultContextWindow) || config.defaultContextWindow <= 0)) {\n    throw new Error('llm-deepseek: defaultContextWindow must be a positive integer')\n  }\n  if (config.maxTokens !== undefined\n    && (!Number.isSafeInteger(config.maxTokens) || config.maxTokens <= 0)) {\n    throw new Error('llm-deepseek: maxTokens must be a positive safe integer')\n  }\n  const streamIdleTimeoutMs = config.streamIdleTimeoutMs ?? DEFAULT_STREAM_IDLE_TIMEOUT_MS\n  if (!Number.isFinite(streamIdleTimeoutMs)\n    || streamIdleTimeoutMs <= 0\n    || streamIdleTimeoutMs > MAX_TIMER_DELAY_MS) {\n    throw new Error(\n      `llm-deepseek: streamIdleTimeoutMs must be a positive finite number no greater than ${MAX_TIMER_DELAY_MS}`,\n    )\n  }\n  const maxRequestFilesBytes = config.maxRequestFilesBytes ?? DEFAULT_MAX_REQUEST_FILES_BYTES","sourceCodeStart":261,"sourceCodeEnd":297,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/llm/llm-deepseek/src/index.ts#L261-L297","documentation":"Error \"llm-deepseek: only reasoningEffort \"off\" can be configured when thinking is disabled\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/llm/llm-deepseek/src/index.ts:279 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set reasoningEffort to \"off\", or enable thinking for the model."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b150a551b8d465e31e418e1b2eaf5e79bbb7d28e","analyzedAt":"2026-08-24T18:12:29.105Z","schemaVersion":2},"datasetVersion":"2026-08-24T22:17:12.610Z"}