{"record":{"id":"7b746874bec9daa8","repo":"we-promise/sure","slug":"openai-model-is-required-when-custom-uri-base-is-c","errorCode":null,"errorMessage":"OpenAI model is required when custom URI base is configured","messagePattern":"OpenAI model is required when custom URI base is configured","errorType":"validation","errorClass":"Setting::ValidationError","httpStatus":422,"severity":"error","filePath":"app/models/setting.rb","lineNumber":299,"sourceCode":"      where(\"var LIKE ?\", \"dynamic:%\").pluck(:var).map { |var| var.sub(/^dynamic:/, \"\") }\n    end\n\n    private\n\n      def dynamic_key_name(key_str)\n        \"dynamic:#{key_str}\"\n      end\n  end\n\n  # Validates OpenAI configuration requires model when custom URI base is set\n  def self.validate_openai_config!(uri_base: nil, model: nil)\n    # Use provided values or current settings\n    uri_base_value = uri_base.nil? ? openai_uri_base : uri_base\n    model_value = model.nil? ? openai_model : model\n\n    # If custom URI base is set, model must also be set\n    if uri_base_value.present? && model_value.blank?\n      raise ValidationError, \"OpenAI model is required when custom URI base is configured\"\n    end\n  end\nend\n","sourceCodeStart":281,"sourceCodeEnd":303,"githubUrl":"https://github.com/we-promise/sure/blob/e69894adb92547273377398c15f45c979cd9416a/app/models/setting.rb#L281-L303","documentation":"Error \"OpenAI model is required when custom URI base is configured\" thrown in we-promise/sure.","triggerScenarios":"Thrown at app/models/setting.rb:299 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e69894adb92547273377398c15f45c979cd9416a","analyzedAt":"2026-08-21T18:22:41.165Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}