{"record":{"id":"0506f93e826118f8","repo":"deepseek-ai/deepseek-harness","slug":"name-must-be-a-positive-integer","errorCode":null,"errorMessage":"${name} must be a positive integer","messagePattern":"(.+?) must be a positive integer","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/fs/tool-fs/src/read.ts","lineNumber":45,"sourceCode":"  limit: number\n  /** Maximum characters returned for a single line. */\n  maxLineLength: number\n  /** Maximum bytes returned for selected file lines. */\n  maxBytes: number\n  /** Files at or above this size stream; smaller files read whole into memory. */\n  streamMinSize: number\n}\n\n/** Validated `read` arguments after defaulting. */\ninterface ReadInput {\n  filePath: string\n  offset: number\n  limit: number\n}\n\nfunction parsePositiveInteger(value: number, name: string): number {\n  if (!Number.isFinite(value) || !Number.isInteger(value) || value < 1) {\n    throw new Error(`${name} must be a positive integer`)\n  }\n  return value\n}\n\n/**\n * Validate value constraints the schema DSL can't express. `maxLimit` is the deployment's line cap.\n * @param args - the schema-validated raw tool arguments; `offset`/`limit` must be positive integers when given.\n * @param maxLimit - the configured line cap: both the default `limit` and the largest one accepted.\n * @returns the validated input with `offset` defaulted to 1 and `limit` to `maxLimit`.\n */\nexport function parseReadArgs(args: { file_path: string; offset?: number; limit?: number }, maxLimit: number): ReadInput {\n  if (args.file_path.trim().length === 0) throw new Error('file_path must be a non-empty string')\n  const offset = args.offset === undefined ? 1 : parsePositiveInteger(args.offset, 'offset')\n  const limit = args.limit === undefined ? maxLimit : parsePositiveInteger(args.limit, 'limit')\n  if (limit > maxLimit) throw new Error(`limit must be less than or equal to ${maxLimit}`)\n  return { filePath: args.file_path, offset, limit }\n}\n","sourceCodeStart":27,"sourceCodeEnd":63,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/fs/tool-fs/src/read.ts#L27-L63","documentation":"Error \"${name} must be a positive integer\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/fs/tool-fs/src/read.ts:45 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"}