langgraph 1.2.20 — langgraph==1.2.20
- Source
- github.com
- Author
- github-actions[bot]
- Date

Context
LangGraph 1.2.20 makes it harder for an answer to a paused to reach the wrong question. LangGraph, from LangChain, is a Python framework for building agents as graphs of steps. A step can call interrupt() to pause and wait for a person's input, and the application later resumes the run with a Command carrying the answer. The 1.2.20 release changes how those answers are matched to the questions they belong to.
First, each interrupt() call inside one task now gets its own ID. Previously every interrupt in a task shared a single ID, a hash of the task's namespace, so an answer retried after a step had moved on to its next question could be taken as the answer to that new question. Separate IDs let the strict mode described below refuse such a stale answer; by default, an answer under the first ID is still accepted for a later question when nothing else answers it, so IDs saved by older versions keep working. The first interrupt keeps its old ID, so a step that asks only once behaves as before. The same change makes a retried step reuse the answers it already received instead of asking again under an ID the next resume could not match.
Second, an optional strict resume mode refuses answers that do not fit. With it on, the graph raises an UnknownInterruptError, before writing anything, when a resume names an interrupt that is not pending, supplies an empty set of answers, or gives a single answer while several interrupts are waiting. Because nothing is written, the pending questions can still be answered correctly. Without strict mode, resuming behaves as before.
Strict mode is controlled by a configuration key defined in LangGraph's internal constants module, and the release notes do not say how applications are meant to set it. Graphs run through RemoteGraph do not pass the key along; the remote server decides strictness for its own runs.
- AI agent — An AI system that doesn't just answer once but works toward a goal in a loop — taking actions, reading the results, and deciding what to do next.
- human-in-the-loop — Requiring a person's approval at specific points in an automated process, chosen so the irreversible steps are the ones a human sees.
Checking sign-in…
Loading comments…





