Skip to content

Neo4j sync with Dolt canonical state: keep graph in sync after reconciliation #297

Description

@theinterneti

Part of #269

After world reconciliation merges a player branch to main: sync the changed Dolt rows back to Neo4j nodes/relationships. Implement DoltToNeo4jSyncer that translates row-level changes to graph mutations.

Acceptance Criteria

  • DoltToNeo4jSyncer.sync_from_commit(commit_hash) runs after each reconciliation
  • Reads DOLT_DIFF for changed rows since last sync commit
  • Translates row changes to Neo4j: UPDATE/CREATE/DELETE nodes and relationships
  • Syncer is idempotent (safe to re-run)
  • Integration test: reconciliation → sync → Neo4j reflects merged state

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions