{"record":{"id":"4a268661a44fe3d3","repo":"deepseek-ai/deepseek-harness","slug":"typert-subject-strict-codec-has-no-parse-met","errorCode":null,"errorMessage":"typert: ${subject} strict codec has no parse() method","messagePattern":"typert: (.+?) strict codec has no parse\\(\\) method","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packages/typert/registry/src/service.ts","lineNumber":701,"sourceCode":"        `typert: invocation \"${descriptor.id}\" scope wire \"${descriptor.scope.wire}\" must select its only lookup parameter`,\n      )\n    }\n  }\n  if (descriptor.invocation.kind === 'context') {\n    validateSegment('Context key', descriptor.invocation.context)\n    validateWireName('Context wire field', descriptor.invocation.wire)\n    if (wires.has(descriptor.invocation.wire)) {\n      throw new Error(`typert: invocation \"${descriptor.id}\" repeats wire field \"${descriptor.invocation.wire}\"`)\n    }\n    validateCodec(descriptor.invocation.codec, `${descriptor.id} Context`)\n  }\n}\n\nfunction validateCodec(codec: InvocationDescriptor['result'], subject: string): void {\n  if (codec.mode === 'src-json') return\n  validateNonempty(`${subject} type symbol`, codec.typeSymbol)\n  if (typeof codec.schema.parse !== 'function') {\n    throw new Error(`typert: ${subject} strict codec has no parse() method`)\n  }\n}\n\nfunction validateWireName(subject: string, value: string): void {\n  if (value === '.' || value === '..' || !/^[A-Za-z0-9_$.-]+$/.test(value)) {\n    throw new Error(`typert: invalid ${subject} \"${value}\" — must contain only RPC endpoint segment characters`)\n  }\n}\n\nfunction validateSegment(subject: string, value: string): void {\n  if (value.length === 0 || value.includes('#')) {\n    throw new Error(`typert: invalid ${subject} \"${value}\" — must be nonempty and must not contain \"#\"`)\n  }\n}\n\nfunction validateNonempty(subject: string, value: string): void {\n  if (value.length === 0) throw new Error(`typert: invalid ${subject} — must be nonempty`)\n}","sourceCodeStart":683,"sourceCodeEnd":719,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/typert/registry/src/service.ts#L683-L719","documentation":"Error \"typert: ${subject} strict codec has no parse() method\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/typert/registry/src/service.ts:701 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide a strict codec with a parse() method for the named subject."],"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"}