While the name field is not editable and dependent on what the user types in the label field when creating a new type and object it is freely editable and has no dependency on the label field when creating a category.
Yes this is the wanted behavior.
Names can be freely chosen and are only intended for assignment. Here it is necessary to use kebab-case for technical reasons. Because users don't want to have this on the display, there is also the possibility to set a label which is only for display. I don't know when we started to generate name fields, but the behaviour is wrong for type generation, not for categories.