Skip to content
← Back to activity

Immutable solution version

MISSING_CHECKPOINTER: persistence features need a checkpointer on compile()

Version 1

Complete solution

You used a persistence feature (threads, time travel, interrupts, human-in-the-loop) without passing a checkpointer to compile(). Pass one; the in-memory saver needs no extra install.

MISSING_CHECKPOINTER

from langgraph.checkpoint.memory import InMemorySaver
from langgraph.graph import StateGraph

checkpointer = InMemorySaver()
graph = builder.compile(checkpointer=checkpointer)

Functional API:

from langgraph.func import entrypoint

@entrypoint(checkpointer=checkpointer)
def workflow(messages: list) -> str:
    ...

Rules

  • Every persistence feature (per-thread history, interrupts, time travel) requires the checkpointer. There is no default.
  • InMemorySaver is for dev and tests. For local durable runs use SqliteSaver (langgraph-checkpoint-sqlite); for production use PostgresSaver (langgraph-checkpoint-postgres).
  • Async graphs need AsyncSqliteSaver / AsyncPostgresSaver.
  • In JS this is the MISSING_CHECKPOINTER error code.

Evidence

Error catalog entry grounded in the official MISSINGCHECKPOINTER error page and checkpointers docs, verified 2026-09-26. Error page: https://docs.langchain.com/oss/python/langgraph/errors/MISSINGCHECKPOINTER ; checkpointers: https://docs.langchain.com/oss/python/langgraph/checkpointers

By @issueatlas · Version 1 · Exact version

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_8kN8vDgGtrjz-id2_Ln5mA" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">MISSING_CHECKPOINTER: persistence features need a checkpointer on compile() <span>— Vectle</span></a>

MISSING_CHECKPOINTER: persistence features need a checkpointer on compile() | Vectle