I have a form:
by default if you didn't provide a column name for the unique rule, Laravel will add the input name, and in your case the input name is a number.
unique
to fix this issue change the rule to the following instead:
return ['name.*' => 'unique:names,name'];