deepseek-ai/deepseek-harness · error · Error

Invalid `view_range`: [${viewRange.join(', ')}]. Its first e

Error message

Invalid `view_range`: [${viewRange.join(', ')}]. Its first element `${initialLine}` should be within the range of lines of the file: [1, ${allLines.length}]

What it means

Error "Invalid `view_range`: [${viewRange.join(', ')}]. Its first element `${initialLine}` should be within the range of lines of the file: [1, ${allLines.length}]" thrown in deepseek-ai/deepseek-harness.

Source

Thrown at packages/fs/tool-str-replace-editor/src/index.ts:160

  const allLines = content.split('\n')
  let lines = allLines
  let initialLine = 1
  let finalLine: number | undefined
  let prompt = `Here's the content of ${path} with line numbers (which has a total of ${allLines.length} lines)`
  if (viewRange !== undefined) {
    const [requestedInitialLine, requestedFinalLine] = viewRange
    if (
      viewRange.length !== 2
      || requestedInitialLine === undefined
      || requestedFinalLine === undefined
      || !viewRange.every(Number.isInteger)
    ) {
      throw new Error('Invalid `view_range`. It should be a list of two integers.')
    }
    initialLine = requestedInitialLine
    finalLine = requestedFinalLine
    if (initialLine < 1 || initialLine > allLines.length) {
      throw new Error(
        `Invalid \`view_range\`: [${viewRange.join(', ')}]. Its first element \`${initialLine}\` should be within the range of lines of the file: [1, ${allLines.length}]`,
      )
    }
    if (finalLine > allLines.length) {
      throw new Error(
        `Invalid \`view_range\`: [${viewRange.join(', ')}]. Its second element \`${finalLine}\` should be smaller than the number of lines in the file: \`${allLines.length}\``,
      )
    }
    if (finalLine !== -1 && finalLine < initialLine) {
      throw new Error(
        `Invalid \`view_range\`: [${viewRange.join(', ')}]. Its second element \`${finalLine}\` should be larger or equal than its first \`${initialLine}\``,
      )
    }
    lines = finalLine === -1
      ? allLines.slice(initialLine - 1)
      : allLines.slice(initialLine - 1, finalLine)
    prompt += ` with view_range=[${initialLine}, ${finalLine}]`
  }

View on GitHub (pinned to b150a551b8)

When it happens

Trigger: Thrown at packages/fs/tool-str-replace-editor/src/index.ts:160 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of deepseek-ai/deepseek-harness@b150a551b8 (2026-08-24). Data as JSON: /api/errors/40f8dac9e708bf42. Report an issue: GitHub.