{"record":{"id":"570d3624e20e400d","repo":"deepseek-ai/deepseek-harness","slug":"definetool-options-name-timeoutms-must-be-a-p","errorCode":null,"errorMessage":"defineTool(${options.name}): timeoutMs must be a positive finite number","messagePattern":"defineTool\\((.+?)\\): timeoutMs must be a positive finite number","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/core/tools/src/schema.ts","lineNumber":564,"sourceCode":"  options: DefineToolOptions<S, O>,\n): ToolDefinition {\n  // Object-literal methods do not use `this`; retaining references is safe.\n  // oxlint-disable-next-line typescript/unbound-method\n  const userExecute = options.execute\n  // oxlint-disable-next-line typescript/unbound-method\n  const userFinalizeContent = options.finalizeContent\n  // oxlint-disable-next-line typescript/unbound-method\n  const userRender = options.output.render\n  // oxlint-disable-next-line typescript/unbound-method\n  const userPresentationMeta = options.output.presentationMeta\n  // oxlint-disable-next-line typescript/unbound-method\n  const userPresentCall = options.presentCall\n  // oxlint-disable-next-line typescript/unbound-method\n  const userPresentResult = options.presentResult\n  // oxlint-disable-next-line typescript/unbound-method\n  const userIsConcurrencySafe = options.isConcurrencySafe\n  if (options.timeoutMs !== undefined && (!Number.isFinite(options.timeoutMs) || options.timeoutMs <= 0)) {\n    throw new Error(`defineTool(${options.name}): timeoutMs must be a positive finite number`)\n  }\n  const parameters = parameterSchemaSpecToJsonSchema(options.parameters)\n  const outputSchema = valueSchemaSpecToJsonSchema(options.output.schema)\n  const validate = (args: unknown): string[] => validateJsonSchemaValue(parameters, args, '')\n  const tool: ToolDefinition = {\n    name: options.name,\n    description: options.description,\n    parameters: parameters as unknown as Record<string, unknown>,\n    output: {\n      schema: outputSchema,\n      render(args: unknown, value: JsonValue): ContentBlock[] {\n        return userRender(args as InferArgs<S>, value as unknown as InferValue<NoInfer<O>>)\n      },\n      ...userPresentationMeta !== undefined ? {\n        presentationMeta(args: unknown, value: JsonValue): JsonValue {\n          return userPresentationMeta(args as InferArgs<S>, value as unknown as InferValue<NoInfer<O>>)\n        },\n      } : {},","sourceCodeStart":546,"sourceCodeEnd":582,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/core/tools/src/schema.ts#L546-L582","documentation":"Error \"defineTool(${options.name}): timeoutMs must be a positive finite number\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/core/tools/src/schema.ts:564 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"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"}