deepseek-ai/deepseek-harness · error · Error
typert: ${this.kind} invocation id "${descriptor.id}" is alr
Error message
typert: ${this.kind} invocation id "${descriptor.id}" is already registered What it means
Error "typert: ${this.kind} invocation id "${descriptor.id}" is already registered" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/typert/registry/src/service.ts:130
constructor(
private readonly kind: 'local' | 'remote',
report: ReportObserverError,
) {
this.changes = new ChangeSource(report)
}
validate(descriptors: readonly InvocationDescriptor[]): void {
const endpoints = new Set<string>()
const ids = new Set<string>()
for (const descriptor of descriptors) {
validateInvocation(descriptor)
const endpoint = typertEndpoint(descriptor)
if (endpoints.has(endpoint) || this.entries.has(endpoint)) {
throw new Error(`typert: ${this.kind} endpoint "${endpoint}" is already registered`)
}
if (ids.has(descriptor.id) || this.ids.has(descriptor.id)) {
throw new Error(`typert: ${this.kind} invocation id "${descriptor.id}" is already registered`)
}
endpoints.add(endpoint)
ids.add(descriptor.id)
}
}
commit(owner: object, descriptors: readonly InvocationDescriptor[]): void {
for (const descriptor of descriptors) {
const entry = { descriptor, owner }
const endpoint = typertEndpoint(descriptor)
this.entries.set(endpoint, entry)
this.ids.set(descriptor.id, entry)
this.history.add(endpoint)
}
for (const descriptor of descriptors) {
this.changes.emit({ kind: this.kind, key: typertEndpoint(descriptor) })
}
}View on GitHub (pinned to b150a551b8)
Solutions
- Use a unique invocation id, or unregister the existing descriptor first.
When it happens
Trigger: Thrown at packages/typert/registry/src/service.ts:130 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/18069907b5ea9ae3.
Report an issue: GitHub.