CanineHQ/canine · error · Git::Client::Error

Failed to search repositories: #{response.body}

Error message

Failed to search repositories: #{response.body}

What it means

Error "Failed to search repositories: #{response.body}" thrown in CanineHQ/canine.

Source

Thrown at app/services/git/gitlab/client.rb:45

      "#{gitlab_api_base}/projects",
      headers: { "Authorization" => "Bearer #{access_token}" },
      query: { membership: true, page:, per_page:, order_by: "last_activity_at" }
    )
    unless response.success?
      raise Git::Client::Error, "Failed to fetch repositories: #{response.body}"
    end

    response.map { |repo| GitlabRepository.new(repo) }
  end

  def search_repos(query)
    response = HTTParty.get(
      "#{gitlab_api_base}/projects",
      headers: { "Authorization" => "Bearer #{access_token}" },
      query: { membership: true, search: query, order_by: "last_activity_at" }
    )
    unless response.success?
      raise Git::Client::Error, "Failed to search repositories: #{response.body}"
    end

    response.map { |repo| GitlabRepository.new(repo) }
  end

  class GitlabRepository
    attr_reader :id, :full_name, :name, :description, :web_url

    def initialize(data)
      @id = data["id"]
      @full_name = data["path_with_namespace"]
      @name = data["name"]
      @description = data["description"]
      @web_url = data["web_url"]
    end
  end

  def gitlab_api_base

View on GitHub (pinned to ba4ee3968d)

When it happens

Trigger: Thrown at app/services/git/gitlab/client.rb:45 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of CanineHQ/canine@ba4ee3968d (2026-08-23). Data as JSON: /api/errors/6a18d7c267c96f84. Report an issue: GitHub.