Skip to main content
This example answers a replacement-order request using customer memory. An old San Francisco address outranks an active Oakland correction, so the untreated agent proposes the wrong shipping city. The repair excludes superseded memory and prefers the current fact. It demonstrates the complete adopter contract:
  • A real LangGraph StateGraph, InMemoryStore, and MemorySaver.
  • Automatic replay-checkpoint attachment at an explicit graph boundary.
  • Isolated baseline and treatment runtimes.
  • One executor module used by Studio and regression execution.
  • OpenAI Responses generation when developer credentials are present.
  • A deterministic offline generator for CI and local verification.

Run locally

From examples/langgraph-support-agent in a clone of the Engram repository:
In another terminal:
Open the direct incident URL printed by the CLI. The executor first reproduces the stale San Francisco answer, then reruns the isolated treatment and verifies the Oakland answer.

Use a real model

The key stays in the developer’s process. Engram does not proxy or host model credentials.

Verify without paid calls

This still runs the actual graph and retrieval policy. Only answer wording uses the deterministic generator.
The example reconstructs fresh in-memory state for every variant. Production executors must provide equivalent isolation for their real checkpointer, Store, tools, and network side effects. Never point replay at mutable production state.