Live data from Hacker News

Weave: Merging based on language structure and not lines

ataraxy-labs.github.io

41–50 of 51 posts

Re: Weave: Merging based on language structure and not lines

#41
post #7

Without having looked into how Weave works, it sounds similar to Mergiraf: https://mergiraf.org/

There's a benchmark on the site that compares with mergiraf. https://ataraxy-labs.github.io/weave/benchmarks.html

There's (at least) one example where I'd rather have a conflict:

> Python: both add decorators to function

If two branches add a decorator into the same function, I definitely want to keep both, but the _order_ is of great importance.

But in fact, this makes me think that automated semantic resolution can have a lot of issues. E.g:, say two branches add the following two lines separately. Merging them requires a human considering the order of operations and how the affect the result:

    title = title.replace("_", " ")
    title = title.to_title_case()

Re: Weave: Merging based on language structure and not lines

#42
On the point around agent collaboration with this, I think there's a larger opportunity in the agent to agent protocol over git beyond just semantic merge.

https://github.com/h5i-dev/h5i has caught my attention lately and I have been meaning to explore this more, I feel like git workflows are leveling up fast since worktrees become ubiquitous and agentic development exposed more how it can unlock parallelization

Re: Weave: Merging based on language structure and not lines

#43
post #13

Earlier quoted context omitted.

> Why does EVERYTHING has to be geared towards agents? Moving forward one can expect the most amount of code to be generated by agents, so it makes sense to optimise for that use case. (Note that i’m not saying it’s good or bad)

> the most amount of code generated by agents Yes, I wholehartly agree. Coming from a week of agent-coding - out of pure curiosity - most code was generated by agents, which I had then to delete and rewrite to use like a quarter of statements to achieve the same, in an understandable, maintainable way. But that's just my experience.

People will very often say they "had to" do something, when in reality they merely "chose to" do that thing.

Re: Weave: Merging based on language structure and not lines

#44

Website is pure slop, but I'd really like more tools like this. Can any human confirm if this is actually any good? Also if any of the slopperators want to make something really useful, can we get a decent `git diff` GUI that detects moved/copied lines across files? As far as I know the only tool that does this is `git diff --color-moved` but reviewing diffs in the terminal sucks, and it drops all information about w…

Sucks to be you. If you really want to know if it's good, deal with the slop yourself instead of trying to get another to do the work for you.

Re: Weave: Merging based on language structure and not lines

#45
post #30

At this point I just ask an LLM to resolve conflicts, works most of the time. An LLM can not only understand the language, it can also understand the intent behind both changes, which leads to much better results

There was some discussion on that topic when they self-promoted this 3 months ago: https://news.ycombinator.com/item?id=47242929

Re: Weave: Merging based on language structure and not lines

#46

Website is pure slop, but I'd really like more tools like this. Can any human confirm if this is actually any good? Also if any of the slopperators want to make something really useful, can we get a decent `git diff` GUI that detects moved/copied lines across files? As far as I know the only tool that does this is `git diff --color-moved` but reviewing diffs in the terminal sucks, and it drops all information about w…

SemanticDiff, difftastic, Delta should work.

Re: Weave: Merging based on language structure and not lines

#48
post #28
post #16

Earlier quoted context omitted.

Thanks a lot for this feedback, you are right, but I actually had a page about the merge algorithm more in depth, maybe you will love it.

Could you link to it? I couldn’t find it on your site.

https://ataraxy-labs.github.io/weave/learn.html

Re: Weave: Merging based on language structure and not lines

#49

Earlier quoted context omitted.

> the most amount of code generated by agents Yes, I wholehartly agree. Coming from a week of agent-coding - out of pure curiosity - most code was generated by agents, which I had then to delete and rewrite to use like a quarter of statements to achieve the same, in an understandable, maintainable way. But that's just my experience.

People will very often say they "had to" do something, when in reality they merely "chose to" do that thing.

Well, at least some point people will “have” to.

If the industry is using agents and shipping a certain amount X of code/features in a certain amount if time, you either start using agents as well or you fall behind.

Re: Weave: Merging based on language structure and not lines

#50

Earlier quoted context omitted.

> the most amount of code generated by agents Yes, I wholehartly agree. Coming from a week of agent-coding - out of pure curiosity - most code was generated by agents, which I had then to delete and rewrite to use like a quarter of statements to achieve the same, in an understandable, maintainable way. But that's just my experience.

People will very often say they "had to" do something, when in reality they merely "chose to" do that thing.

It's not a shall/must, but it is a "I think I need to, because this is going to be unmaintanable 3 months from now".
Post reply on HN