Skip to content

feat: Add Neo4j Graph Backend With Hop-Capped Follow Walks - #13

Merged
ThomasHartDev merged 2 commits into
mainfrom
thomas/feat/neo4j
Sep 4, 2026
Merged

feat: Add Neo4j Graph Backend With Hop-Capped Follow Walks#13
ThomasHartDev merged 2 commits into
mainfrom
thomas/feat/neo4j

Conversation

@ThomasHartDev

Copy link
Copy Markdown
Owner

FOLLOWS and AUTHORED are directed edges on User and Post nodes. Neo4jStore walks an in-process MemoryGraph (neighbor lists and BFS), not a neo4j-driver session. Unique handles are CREATE CONSTRAINT. shortestFollowPath is BFS capped at 16 hops. recommendFollows is a 2-hop friend-of-friend score. CYPHER in src/neo4j/cypher.ts is the matching query catalog, pinned in tests, including WHERE a <> b on follow so a pasted MERGE cannot create a self-loop.

The contract runs without a daemon.

Closes #12

Model the activity feed as a labeled property graph: User and Post
nodes, directed FOLLOWS and AUTHORED edges, unique constraints, and
the path queries (shortestPath, friend-of-friend, common neighbors)
that the tabular stores express as recursive CTEs.
Parse neo4j-driver ConstraintValidationFailed messages (no .constraint),
cap shortest FOLLOWS BFS at 16 hops with a 17-edge chain, and pin the
driver Cypher strings including WHERE a <> b on follow.
@ThomasHartDev
ThomasHartDev merged commit 04dcefc into main Sep 4, 2026
@ThomasHartDev
ThomasHartDev deleted the thomas/feat/neo4j branch September 4, 2026 19:35
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.

Add a Neo4j graph backend (relationships, Cypher traversals)

1 participant