By SQL style conventions, "LIKE" usually precedes a value of the form "%[name]%" and corresponds to natural language query "contains [name]" rather than "matches [name]"; it seems plausible that the model does not understand the natural language query.
if we replace the wrong value "%[name]%" with the gold value "[name]" after the "LIKE" operator, the predicate becomes semantically equivalent to "= [value]" and hence makes the query semantically correct.