coleam00/Archon · warning
persist_session_lookup_failed
persist_session_lookup_failed
Error message
⚠️ Could not load the persisted session for node `${node.id}` — it will run without prior context. Session continuity may be broken; if this recurs, check server logs or run `/workflow reset-sessions ${ctx.workflowName}`. What it means
Non-fatal warning: loading the persisted session row for a node from the database threw (not merely 'no row'), so the node runs fresh without prior context even though the user opted into session persistence. The engine warns the user because a DB error here silently breaks continuity.
Source
Thrown at packages/workflows/src/dag-executor.ts:10541
data: {
provider,
scope_key: ctx.persistScopeKey,
provider_session_id_preview: sessionIdPreview,
},
})
.catch((err: Error) => {
getLog().warn(
{ err, nodeId: node.id },
'persist_session_resumed_event_persist_failed'
);
});
}
} catch (err) {
// Non-fatal: the node still runs (fresh, no resume), but the user opted
// into persistence — a DB error here silently breaks continuity, so warn
// them as well as the logs. (A "no row" result is not an error: it returns
// null above and this catch never fires for it.)
getLog().warn(
{
err: err as Error,
nodeId: node.id,
workflow: ctx.workflowName,
scopeKey: ctx.persistScopeKey,
provider,
},
'persist_session_lookup_failed'
);
await safeSendMessage(
ctx.platform,
ctx.conversationId,
`⚠️ Could not load the persisted session for node \`${node.id}\` — it will run without prior context. Session continuity may be broken; if this recurs, check server logs or run \`/workflow reset-sessions ${ctx.workflowName}\`.`,
{ workflowId: ctx.workflowRun.id, nodeName: node.id }
);
}
}
}View on GitHub (pinned to 0773b97458)
Solutions
- Check server logs for the underlying `err` logged with this event
- Verify DB connectivity and that the sessions table is intact
- If it recurs, run `/workflow reset-sessions <workflowName>` to clear stale session state
- Re-run the workflow once the database is healthy
Defensive patterns
Strategy: fallback
Validate before calling
// Verify session store availability before the run
const healthy = await store.ping();
if (!healthy) console.warn('session store unreachable; continuity may be lost'); Try / catch
try {
await runNode(node);
} catch (err) {
if (isPersistSessionLookupFailed(err)) {
console.warn(`node ${node.id} ran without prior session context; check DB and consider /workflow reset-sessions`);
} else throw err;
} Prevention
- Monitor database health for the Archon instance
- Treat this warning as a continuity loss, not a run failure, and re-run if context matters
- Periodically prune/reset session rows to avoid corrupted-state buildup
When it happens
Trigger: Catch branch in the DAG executor when the session-lookup query for (workflow, node, persistScopeKey, provider) raises — DB connectivity issues, corrupted row/schema mismatch, storage adapter errors.
Common situations: Database temporarily unavailable or restarted mid-run; schema drift after upgrade; corrupted session blob in the persistence table.
Related errors
- persist_session_upsert_failed
- Failed to update conversation: ${err.message}
- Corrupt commands JSON for codebase ${id}: unable to parse st
- Cannot create worktree: database lookup failed. Error: ${res
- Cannot create worktree: repository registration failed. Erro
AI-assisted analysis of coleam00/Archon@0773b97458 (2026-09-01).
Data as JSON: /api/errors/f024db3e97cfd36d.
Report an issue: GitHub.