class ActiveModel::Errors

def delete(attribute, type = nil, **options)

person.errors[:name] # => []
person.errors.delete(:name) # => ["cannot be nil"]
person.errors[:name] # => ["cannot be nil"]

Delete messages for +key+. Returns the deleted messages.
def delete(attribute, type = nil, **options)
  attribute, type, options = normalize_arguments(attribute, type, **options)
  matches = where(attribute, type, **options)
  matches.each do |error|
    @errors.delete(error)
  end
  matches.map(&:message).presence
end