Skip to content

feat(graph): hydrate and continue durable Graph-v2 checkpoints - #593

Open
buger wants to merge 19 commits into
mainfrom
poc/durable-journal-hydration
Open

buger wants to merge 19 commits into
mainfrom
poc/durable-journal-hydration

Conversation

@buger

@buger buger commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Outcome

Adds the first two bounded phases of durable same-frontier Graph-v2 continuation.

Phase 1 exports and restores a canonical, integrity-checked, graph-bound, appendable runtime-event prefix. It replays claim and instance projections through existing reducers and reconstructs request, attempt, and fence authority from events.

Phase 2 attaches an accepted quiescent checkpoint to a fresh engine in a separate OS process, retains the original session and event prefix, inserts exactly one catalog reconciliation request, enters the existing claim scheduler at LevelDispatch wave 1, and reruns only the changed keyed closure. The unchanged keyed sibling is reused without provider calls, and the returned checkpoint is quiescent, replay-equal, JSON-portable, and restorable.

Fail-fast gates reject corrupt integrity, graph mismatch, non-quiescent state, and unknown owners before provider or workspace effects. Planning, production, and falsifier hardening remain split into reviewable commits.

Verification

  • durable engine continuation: 6/6
  • snapshot-store suite: 62/62
  • adjacent Graph-v2 engine tests: 16/16
  • SDK build: pass
  • scoped ESLint and diff checks: pass
  • independent semantic review: ACCEPT_PHASE2_FINAL
  • independent falsifier review: ACCEPT_FALSIFIER_FINAL

Nonclaims

This does not recover active attempts, leases, provider sessions, external resources, arbitrary runner state, or legacy snapshots. Abrupt controller loss, terminal adoption, lease reconciliation and fencing, and late old-fence publication rejection remain a later phase.

@buger buger changed the title feat(graph): hydrate durable Graph-v2 journal checkpoints feat(graph): hydrate and continue durable Graph-v2 checkpoints Aug 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant