deepseek-ai/deepseek-harness · error
client-modules: module arrival cycle ${[...open.slice(cycleS
Error message
client-modules: module arrival cycle ${[...open.slice(cycleStart), row.id].join(' -> ')} (the host must reject this graph before serving it) What it means
Error "client-modules: module arrival cycle ${[...open.slice(cycleStart), row.id].join(' -> ')} (the host must reject this graph before serving it)" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/client/modules/src/client/system.ts:131
private arrive(row: BootModuleRow): Promise<void> {
const { id, url } = row
const pending = this.pendingArrival.get(id)
if (pending !== undefined) return pending
if (this.loadCache.has(id) || this.factories.has(id)) return Promise.resolve()
const task = this.loadBundle(url).then(() => {
if (!this.factories.has(id)) {
throw new Error(`client-modules: bundle ${url} loaded without registering "${id}" via __ModuleLoader__.load`)
}
}).finally(() => { this.pendingArrival.delete(id) })
this.pendingArrival.set(id, task)
return task
}
/** Register each unresolved dynamic request before registering its consumer. */
private async arriveGraphRow(row: BootModuleRow, open: readonly string[] = []): Promise<void> {
const cycleStart = open.indexOf(row.id)
if (cycleStart !== -1) {
throw new Error(
`client-modules: module arrival cycle ${[...open.slice(cycleStart), row.id].join(' -> ')} `
+ '(the host must reject this graph before serving it)',
)
}
const next = [...open, row.id]
for (const request of row.external) {
const id = stripClientSuffix(request)
if (this.seed.has(request) || this.loadCache.has(id)) continue
const dependency = this.graphRows.get(id)
if (dependency !== undefined) await this.arriveGraphRow(dependency, next)
}
await this.arrive(row)
}
/** Materialize a registered factory (synchronous; memoized in loadCache). */
private materialize(id: string): ClientModuleRecord {
const existing = this.loadCache.get(id)
if (existing !== undefined) return existingView on GitHub (pinned to b150a551b8)
Solutions
- Fix the module arrival cycle in the host graph before serving it.
When it happens
Trigger: Thrown at packages/client/modules/src/client/system.ts:131 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/a0e872ed9e545a65.
Report an issue: GitHub.