mirror of
https://github.com/langchain-ai/langgraph.git
synced 2026-10-20 06:51:41 +02:00
**Description:** When clients resume an interrupted subgraph with `Command(resume=...)` plus an explicit `checkpoint_id` in the config (the pattern LangGraph Studio and the API server emit on every resume), the subgraph restarts from its first node instead of continuing at the interrupted node. Fix: gate `ReplayState` propagation on `is_time_traveling` rather than `is_replaying`, so a resume that happens to carry a head checkpoint_id behaves the same as one with just a thread_id. **Verification:** added regression test `test_subgraph_interrupt_resume_with_explicit_head_checkpoint_id` (fails on main, passes with fix, across memory/sqlite/sqlite_aes). Full `test_time_travel.py`, `test_time_travel_async.py`, `test_interruption.py`, and all pregel subgraph/interrupt/resume/replay tests still pass. Co-authored-by: Jessie Ibarra <jessie.ibarra@langgraph.dev>