mirror of
https://github.com/langchain-ai/langgraph.git
synced 2026-08-17 21:25:46 +02:00
`_prepare_state_snapshot` and `bulk_update_state` hydrated channels with `self.checkpointer`, which is `None` for a subgraph — it borrows the parent's saver through `CONFIG_KEY_CHECKPOINTER` at read time. Without a saver a `DeltaChannel` cannot walk ancestors to replay its writes, so it fell through to `from_checkpoint(MISSING)` and hydrated empty, silently. The callers already resolve the right saver a few lines above every call site. Pass it in, as a required keyword argument so no future call site can drop it. On the write path the empty value was persisted as a `_DeltaSnapshot` whenever the update reached the channel's snapshot cadence, losing history on disk. Fixes #8470 Co-authored-by: gururafiki <22777967+gururafiki@users.noreply.github.com> Co-authored-by: Yuan Gao <119447586+DavidGao520@users.noreply.github.com>