If an AttributeDefinition has a default value configured, then the 'required' setting should be false. The default removes the requirement that the user configure a value.
AttributeDefinition should reject the combination of a default value and required=true in its constructor.
I found 13 attributes not following this in subsystem=eltyron (see
WFLY-8004) and there are probably more in other subsystems. WFCORE-2249 has been somewhat hiding this for fields in complex attributes because the 2249 bug meant things were not getting validated that should have been.