deepseek-ai/deepseek-harness · error
domain '${this.name}': domain/changed listener failed: ${Str
Error message
domain '${this.name}': domain/changed listener failed: ${String(error)} What it means
Error "domain '${this.name}': domain/changed listener failed: ${String(error)}" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/storage/storage-domain/src/domain.ts:259
await this.unit.close()
this.closed = true
this.onClosed()
}
/**
* Dispatch one post-durability change notification, containing observer
* failures: the write is already committed (medium and memory both hold
* the new state), so a throwing listener must not retroactively reject it.
*/
private emitChanged(change: DomainChanged): void {
try {
this.ctx.emit('domain/changed', change)
} catch (error) {
// Swallows synchronous observer exceptions only: emit dispatches
// listeners inline and nothing else runs in the try. The event is a
// notification, not a transaction participant — the commit point has
// passed, so containment (with a log) is the only correct outcome.
this.ctx.logger.warn(`domain '${this.name}': domain/changed listener failed: ${String(error)}`)
}
}
private enqueue<T>(job: () => Promise<T>): Promise<T> {
if (this.disposing) {
return Promise.reject(new DomainError('closed', `domain '${this.name}' is closed`))
}
const result = this.chain.then(job)
this.chain = result.then(noop, noop)
return result
}
private assertReadable(): void {
if (this.closed) {
throw new DomainError('closed', `domain '${this.name}' is closed`)
}
}
}View on GitHub (pinned to b150a551b8)
Solutions
- Fix the failing domain/changed listener for the named domain and re-register it.
When it happens
Trigger: Thrown at packages/storage/storage-domain/src/domain.ts:259 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/4c65f373c4916282.
Report an issue: GitHub.