{"record":{"id":"870c2a9cc6ecd3e0","repo":"deepseek-ai/deepseek-harness","slug":"credentials-local-record-key-in-filename-870c2a","errorCode":null,"errorMessage":"credentials-local: record \"${key}\" in ${filename} has unknown field \"${field}\"","messagePattern":"credentials-local: record \"(.+?)\" in (.+?) has unknown field \"(.+?)\"","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/credentials/credentials-local/src/index.ts","lineNumber":364,"sourceCode":"    }\n  }\n  if (kind === 'grant') {\n    assertFields(key, fields, ['kind', 'payload'], filename)\n    if (!('payload' in fields)) {\n      throw new Error(`credentials-local: record \"${key}\" in ${filename} has no payload`)\n    }\n    assertJsonValue(`record \"${key}\" payload in ${filename}`, fields['payload'], new Set())\n    return { kind: 'grant', payload: fields['payload'] }\n  }\n  if (kind === undefined) throw new Error(`credentials-local: record \"${key}\" in ${filename} has no kind`)\n  throw new Error(`credentials-local: record \"${key}\" in ${filename} has unknown kind ${JSON.stringify(kind)}`)\n}\n\n/** Reject a field the tag does not define, so a typo is not silently dropped. */\nfunction assertFields(key: string, fields: Record<string, unknown>, allowed: string[], filename: string): void {\n  for (const field of Object.keys(fields)) {\n    if (!allowed.includes(field)) {\n      throw new Error(`credentials-local: record \"${key}\" in ${filename} has unknown field \"${field}\"`)\n    }\n  }\n}\n\n/** Admit an api-key record's provider environment: POSIX names over non-empty strings. */\nfunction parseRecordEnv(key: string, env: unknown, filename: string): Record<string, string> | undefined {\n  if (env === undefined) return undefined\n  if (typeof env !== 'object' || env === null || Array.isArray(env)) {\n    throw new TypeError(`credentials-local: record \"${key}\" in ${filename} has a non-mapping env`)\n  }\n  const parsed: Record<string, string> = {}\n  for (const [name, value] of Object.entries(env as Record<string, unknown>)) {\n    credentialRef(name)\n    if (typeof value !== 'string' || value.length === 0) {\n      throw new TypeError(\n        `credentials-local: record \"${key}\" env \"${name}\" in ${filename} must be a non-empty string`,\n      )\n    }","sourceCodeStart":346,"sourceCodeEnd":382,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/credentials/credentials-local/src/index.ts#L346-L382","documentation":"Error \"credentials-local: record \"${key}\" in ${filename} has unknown field \"${field}\"\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/credentials/credentials-local/src/index.ts:364 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"}