In org.example.kickoff.business.email.EmailService in method buildTemplateContent one can read
Arrays.stream(EmailTemplatePart.values())
.filter(part -> !templateParts.containsKey(part.getKey()))
.forEach(part -> templateParts.putIfAbsent(part, emailTemplateService.build(templateEmail, part, messageParameters)));
I think this should be
.filter(part -> !templateParts.containsKey(part))