Nice! Will def check it out. What I don’t understand is why it sees “value”->target as a diff.
Also inside the if statement, target was semantically unchanged
The simple answer is that renaming a variable (or function parameter) is a semantic change - even if it doesn’t, say, change the compiled code, it affects how a human would read and understand the code. Plus, in many languages, function parameter names are indeed semantically meaningful and can be accessed via features like reflection or keyword arguments.