{"record":{"id":"c7023fccd84459c1","repo":"deepseek-ai/deepseek-harness","slug":"path-maxdelayms-must-be-a-positive-finite-numbe","errorCode":null,"errorMessage":"${path}.maxDelayMs must be a positive finite number no greater than ${MAX_TIMER_DELAY_MS}","messagePattern":"(.+?)\\.maxDelayMs must be a positive finite number no greater than (.+?)","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/llm/llm/src/retry-policy.ts","lineNumber":131,"sourceCode":"const BACKOFF_KEYS: ReadonlySet<string> = new Set(['initialDelayMs', 'maxDelayMs', 'jitterRatio'])\n\nfunction validateKeys(value: object, allowed: ReadonlySet<string>, path: string): void {\n  for (const key of Object.keys(value)) {\n    if (!allowed.has(key)) throw new Error(`${path}: unknown key \"${key}\"`)\n  }\n}\n\nfunction resolveBackoff(config: BackoffConfig | undefined, path: string): ResolvedRetryBackoff {\n  if (config !== undefined) validateKeys(config, BACKOFF_KEYS, path)\n  const initialDelayMs = config?.initialDelayMs ?? DEFAULT_INITIAL_DELAY_MS\n  const maxDelayMs = config?.maxDelayMs ?? DEFAULT_MAX_DELAY_MS\n  const jitterRatio = config?.jitterRatio ?? DEFAULT_JITTER_RATIO\n\n  if (!Number.isFinite(initialDelayMs) || initialDelayMs <= 0 || initialDelayMs > MAX_TIMER_DELAY_MS) {\n    throw new Error(`${path}.initialDelayMs must be a positive finite number no greater than ${MAX_TIMER_DELAY_MS}`)\n  }\n  if (!Number.isFinite(maxDelayMs) || maxDelayMs <= 0 || maxDelayMs > MAX_TIMER_DELAY_MS) {\n    throw new Error(`${path}.maxDelayMs must be a positive finite number no greater than ${MAX_TIMER_DELAY_MS}`)\n  }\n  if (initialDelayMs > maxDelayMs) {\n    throw new Error(`${path}.initialDelayMs must be less than or equal to maxDelayMs`)\n  }\n  if (!Number.isFinite(jitterRatio) || jitterRatio < 0 || jitterRatio > 1) {\n    throw new Error(`${path}.jitterRatio must be between 0 and 1`)\n  }\n\n  return Object.freeze({ initialDelayMs, maxDelayMs, jitterRatio })\n}\n\n/**\n * Validate, default, and detach one provider-owned retry policy.\n * @param config - optional provider configuration; omission selects normal defaults.\n * @param path - diagnostic path naming the provider config that owns the value.\n * @returns an immutable policy safe to capture in provider registration state.\n */\nexport function resolveRetryPolicy(","sourceCodeStart":113,"sourceCodeEnd":149,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/llm/llm/src/retry-policy.ts#L113-L149","documentation":"Error \"${path}.maxDelayMs must be a positive finite number no greater than ${MAX_TIMER_DELAY_MS}\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/llm/llm/src/retry-policy.ts:131 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set maxDelayMs to a positive finite number no greater than the stated timer cap."],"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"}