A new level is in the commit.
I haven't had a chance to test this yet, but it looks like it will always return true: https://github.com/Gazler/githug/pull/42/files#L0R44 I think the last line is meant to be result
I'll hopefully get a chance to test this level tomorrow.
Add a merge --squash level.
Yes, you're basically right. First I had a version which was using return false everywhere before (as per documentation in README), but then I realised I can't return from this Proc and changed it to pass the result around and didn't adjust it properly.
Actually, in most cases it works, as the file3 doesn't exist, unless you merged and then an exception's thrown and interpreted as an invalid solution. But all the other cases don't work properly.
I've fixed the code.
This is a nifty feature that I didn't know about.
Thanks for the level.