langchain-ai / langchain-ai/langgraph
Entity-level merge for parallel branch state reconciliation
- Dominant language
- Python
- Stars
- 41.8k
- Forks
- 7.1k
- Avg merge
- 23h 7m
- Merged PRs (30d)
- 30
Description
When parallel branches in a graph modify code or structured state, reconciling changes at merge nodes is a known pain point. git's line-level merge creates false conflicts when two branches touch the same file but edit different functions.
[weave](https://github.com/ataraxy-labs/weave) is a semantic merge driver that merges at the function/class level using tree-sitter. It parses base/ours/theirs into semantic entities (functions, classes, imports), matches across versions, and merges at that granularity. Conflicts only happen when two branches change the same entity incompatibly.
On benchmarks: 31/31 clean merges vs git's 15/31. Supports 13 languages. Registers as a standard git merge driver via `.gitattributes`.
Also ships as an MCP server with tools like `weave_potential_conflicts` for detecting overlapping changes before merge and `weave_preview_merge` for simulating outcomes.
`brew install ataraxy-labs/tap/weave`
Contributor guide
Research direction
Start by clarifying how entity-level reconciliation should integrate with LangGraph's parallel branch merge nodes, since the issue names no repository files or entry points. Read the weave documentation and review its semantic merge driver, .gitattributes registration, and MCP tools. Done should include an agreed integration scope and tests showing compatible branch changes merge without false conflicts.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git
- Domain
- distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100