State is not being copied between sub-graphs

Hi @sagi.l

imho that is a normal behavior.

Within a single execution step, state only crosses a subgraph boundary via what your node returns. When you goto a node in the parent with Command.PARENT, the parent only receives the update you include in the Command(update=...) payload. The full, in‑memory subgraph state is not implicitly copied up to the parent unless it has already been persisted at a checkpoint boundary (e.g., after an interrupt/resume or at the end of a step).

In your “finish” tool, include the full messages (and any other needed fields like elements) in Command.update before goto to the parent, or split the logic so the step ends (creating a checkpoint) before issuing the handoff.

btw, if you shared your graph, it would be easier to understand what actually happens there :slight_smile: