# frozen_string_literal: true class CompletionPrompt < ActiveRecord::Base # TODO(roman): Remove may 2024. self.ignored_columns = ["provider"] TRANSLATE = -301 GENERATE_TITLES = -307 PROOFREAD = -303 MARKDOWN_TABLE = -304 CUSTOM_PROMPT = -305 EXPLAIN = -306 enum :prompt_type, { text: 0, list: 1, diff: 2 } validates :messages, length: { maximum: 20 } validate :each_message_length def self.enabled_by_name(name) where(enabled: true).find_by(name: name) end def messages_with_input(input) return unless input messages_hash.merge(input: "#{input}