[P1] Implement rlm_graph state graphs, checkpoints, interrupts, and resumable execution #12

Closed
opened 2026-08-12 01:19:02 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-08-12 01:19:02 +00:00 (Migrated from github.com)

Goal

Port the useful LangGraph runtime semantics into Prolog as a durable orchestration layer.

Scope

  • define explicit graph state terms/schemas;
  • define nodes, fixed edges, conditional edges, START/END semantics, and reducers;
  • compile/validate graphs before execution;
  • support bounded loops and subgraphs;
  • add checkpoint interface plus initial SWI library(persistency) backend;
  • support interrupts/human continuation points;
  • support resumable execution after restart;
  • stream graph events and expose state history;
  • propagate cancellation through graph execution.

Acceptance criteria

  • a graph with branching and a bounded loop executes deterministically;
  • invalid/unreachable graph structures are rejected before execution;
  • a run can checkpoint, stop, restart the process, and resume;
  • an interrupt can pause and later continue from persisted state;
  • storage is behind a backend-neutral interface;
  • trace includes graph node/edge/state transitions.

Dependencies

Research

See RLM-RESEARCH-007-langchain-langgraph-port.org.

## Goal Port the useful LangGraph runtime semantics into Prolog as a durable orchestration layer. ## Scope - define explicit graph state terms/schemas; - define nodes, fixed edges, conditional edges, START/END semantics, and reducers; - compile/validate graphs before execution; - support bounded loops and subgraphs; - add checkpoint interface plus initial SWI `library(persistency)` backend; - support interrupts/human continuation points; - support resumable execution after restart; - stream graph events and expose state history; - propagate cancellation through graph execution. ## Acceptance criteria - a graph with branching and a bounded loop executes deterministically; - invalid/unreachable graph structures are rejected before execution; - a run can checkpoint, stop, restart the process, and resume; - an interrupt can pause and later continue from persisted state; - storage is behind a backend-neutral interface; - trace includes graph node/edge/state transitions. ## Dependencies - #4 - #10 - parent #3 ## Research See `RLM-RESEARCH-007-langchain-langgraph-port.org`.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/prolog-rlm#12
No description provided.