You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: create.rb
    path of file: ./repos/gitlabhq/app/graphql/mutations/releases
    
    the code of the file until where you have to start completion: # frozen_string_literal: true

module Mutations
  module Releases
    class Create < Base
      graphql_name 'ReleaseCreate'

      field :release,
            Types::ReleaseType,
            null: true,
            description: 'Release after mutation.'

      argument :tag_name, GraphQL::Types::String,
               required: true, as: :tag,
               description: 'Name of the tag to associate with the release.'

    
      def resolve(project_path:, assets: nil, **scalars)
        project = authorized_find!(project_path)

        params = {
          **scalars,
          assets: assets.to_h
        }.with_indifferent_access

        result = ::Releases::CreateService.new(project, current_user, params).execute

        if result[:status] == :success
          {
            release: result[:release],
            errors: []
          }
        else
          {
            release: nil,
            errors: [result[:message]]
          }
        end