domain event contracts now handled by the serializer