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

  1. Check server logs for the underlying `err` logged with this event
  2. Verify DB connectivity and that the sessions table is intact
  3. If it recurs, run `/workflow reset-sessions <workflowName>` to clear stale session state
  4. 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

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


AI-assisted analysis of coleam00/Archon@0773b97458 (2026-09-01). Data as JSON: /api/errors/f024db3e97cfd36d. Report an issue: GitHub.