{"record":{"id":"ee2407688c17a584","repo":"deepseek-ai/deepseek-harness","slug":"typert-loader-pkgname-subject-must-be-an-ob","errorCode":null,"errorMessage":"typert-loader: ${pkgName} ${subject} must be an object","messagePattern":"typert-loader: (.+?) (.+?) must be an object","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/typert/loader/src/index.ts","lineNumber":146,"sourceCode":"    }\n  }\n  for (const value of objects) {\n    const object = requireObject(pkgName, value, 'object')\n    requireDocumentation(pkgName, object, 'object')\n    requireString(pkgName, object, 'name', 'object')\n    requireString(pkgName, object, 'exportName', 'object')\n    requireMembers(pkgName, object.members, `object \"${object.name as string}\"`)\n    requireTypes(pkgName, object.types, `object \"${object.name as string}\"`)\n  }\n  for (const value of requireArray(pkgName, manifest.invocations, 'TYPERT.invocations')) {\n    requireInvocation(pkgName, value)\n  }\n  return manifest as unknown as TypertContribution\n}\n\nfunction requireObject(pkgName: string, value: unknown, subject: string): Record<string, unknown> {\n  if (typeof value !== 'object' || value === null || Array.isArray(value)) {\n    throw new Error(`typert-loader: ${pkgName} ${subject} must be an object`)\n  }\n  return value as Record<string, unknown>\n}\n\nfunction requireArray(pkgName: string, value: unknown, subject: string): unknown[] {\n  if (!Array.isArray(value)) throw new Error(`typert-loader: ${pkgName} ${subject} must be an array`)\n  return value\n}\n\nfunction requireString(pkgName: string, value: Record<string, unknown>, key: string, subject: string): void {\n  if (typeof value[key] !== 'string' || value[key].length === 0) {\n    throw new Error(`typert-loader: ${pkgName} ${subject} has a missing or empty ${key}`)\n  }\n}\n\nfunction requireDocumentation(pkgName: string, value: Record<string, unknown>, subject: string): void {\n  requireArray(pkgName, value.tags, `${subject}.tags`)\n  for (const key of ['description', 'summary', 'jsDoc'] as const) {","sourceCodeStart":128,"sourceCodeEnd":164,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/typert/loader/src/index.ts#L128-L164","documentation":"Error \"typert-loader: ${pkgName} ${subject} must be an object\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/typert/loader/src/index.ts:146 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix the manifest so the named subject is an object."],"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"}