In-memory LangEx.Checkpointer backend.
Checkpoints live in a public ETS table owned by the application —
dependency-free and fast, but per-VM and lost on restart. Use for
development, tests, and short-lived graphs; production threads that
must survive restarts belong in LangEx.Checkpointer.Redis or
LangEx.Checkpointer.Postgres.
graph = Graph.compile(builder, checkpointer: LangEx.Checkpointer.Memory)