Observed by a customer:
When a SLD is defined without a Title nested in the Description element (which is compliant in regard to the SLD specifications, relying on https://github.com/geotools/geotools/blob/master/modules/library/api/src/main/java/org/geotools/styling/Style.java#L39), the Description object used in the GetCapabilities generation can have a title set to null, ending up with a missing Title element:
This might break the GetCapabilities XSD compliance. Here is a result of xmllint on the Getcapabilities output:
Proposition: one possible fix would be to reuse the SLD name if Description.title null, since the Title element needs to be in the GetCapabilities response.