deepseek-ai/deepseek-harness · error · ScheduleInputError

invalid_time_zone

invalid_time_zone

Error message

time_zone must be UTC or a valid IANA Area/Location name.

What it means

Error "time_zone must be UTC or a valid IANA Area/Location name." thrown in deepseek-ai/deepseek-harness.

Source

Thrown at packages/schedule/schedule/src/domain.ts:253

  if (groups['zone'] === 'Z') return localEpoch
  const offsetHour = groupNumber(groups, 'offsetHour')
  const offsetMinute = groupNumber(groups, 'offsetMinute')
  if (offsetHour > 23 || offsetMinute > 59
    || (groups['sign'] === '-' && offsetHour === 0 && offsetMinute === 0)) {
    throw new ScheduleInputError('invalid_rule', 'The at numeric offset is invalid.')
  }
  const direction = groups['sign'] === '+' ? 1 : -1
  return localEpoch - direction * (offsetHour * 60 + offsetMinute) * 60_000
}

/**
 * Validate and canonicalize one raw IANA time-zone selector.
 * @param value - Candidate `UTC` or IANA Area/Location name.
 * @returns The runtime's canonical IANA name.
 */
export function canonicalizeTimeZone(value: string): string {
  if (value.length === 0 || value.trim() !== value || (value !== 'UTC' && !IANA_ZONE.test(value))) {
    throw new ScheduleInputError('invalid_time_zone', 'time_zone must be UTC or a valid IANA Area/Location name.')
  }
  let canonical: string
  try {
    canonical = new Intl.DateTimeFormat('en-US', { timeZone: value }).resolvedOptions().timeZone
  } catch (error: unknown) {
    throw new ScheduleInputError(
      'invalid_time_zone',
      'time_zone must be UTC or a valid IANA Area/Location name.',
      { cause: error },
    )
  }
  /* v8 ignore next -- Intl returns the requested canonical zone or an IANA canonical alias. */
  if (canonical !== 'UTC' && !IANA_ZONE.test(canonical)) {
    throw new ScheduleInputError('invalid_time_zone', 'time_zone must resolve to UTC or an IANA Area/Location name.')
  }
  return canonical
}

View on GitHub (pinned to b150a551b8)

Solutions

  1. Set time_zone to "UTC" or a valid IANA name such as Europe/Berlin.

When it happens

Trigger: Thrown at packages/schedule/schedule/src/domain.ts:253 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/40f9eccd4f00d265. Report an issue: GitHub.