TypeError in Gitlab Triage

Minimal Viable Reproduction Project

Bug

Given this policy file:

resource_rules:
  issues:
    rules:
      - name: Name
        conditions:
          state: opened
          discussions:
            attribute: threads
            condition: less_than
            threshold: 1

With at least one issue

You will run in this error:

$ gitlab-triage --token $CI_BOT_TOKEN --source-id 50778621 --policies-file policy.yml
/usr/local/bundle/gems/graphql-client-0.18.0/lib/graphql/client/query_typename.rb:28:in `add_typename': undefined method `[]' for nil:NilClass (NoMethodError)
            type = @types[node]
                         ^^^^^^
	from /usr/local/bundle/gems/graphql-client-0.18.0/lib/graphql/client/query_typename.rb:48:in `on_operation_definition'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:95:in `on_operation_definition_with_modifications'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:121:in `public_send'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:121:in `block in on_document_children'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:119:in `each'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:119:in `on_document_children'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:84:in `on_document'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:95:in `on_document_with_modifications'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:53:in `public_send'
	from /usr/local/bundle/gems/graphql-2.1.0/lib/graphql/language/visitor.rb:53:in `visit'
	from /usr/local/bundle/gems/graphql-client-0.18.0/lib/graphql/client/query_typename.rb:62:in `insert_typename_fields'
	from /usr/local/bundle/gems/graphql-client-0.18.0/lib/graphql/client.rb:189:in `parse'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/network_adapters/graphql_adapter.rb:38:in `parse'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/graphql_network.rb:27:in `query'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:392:in `fetch_resources'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:350:in `block in resources_for_rule'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/expand_condition.rb:13:in `each'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/expand_condition.rb:13:in `perform'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:346:in `resources_for_rule'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:250:in `block in process_rules'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:249:in `each'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:249:in `process_rules'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:82:in `block in perform'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:73:in `each'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/lib/gitlab/triage/engine.rb:73:in `perform'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/bin/gitlab-triage:18:in `block in <top (required)>'
	from /usr/local/lib/ruby/3.1.0/set.rb:511:in `each_key'
	from /usr/local/lib/ruby/3.1.0/set.rb:511:in `each'
	from /usr/local/bundle/gems/gitlab-triage-1.41.0/bin/gitlab-triage:11:in `<top (required)>'
	from /usr/local/bundle/bin/gitlab-triage:25:in `load'
	from /usr/local/bundle/bin/gitlab-triage:25:in `<main>'

Request

Please publish a new version when this is fixed, as it is blocking us and we'd rather not rely on a dependency on the latest master.

Edited by Jos Ahrens