documentation/Dangerfile fights with you over ~type::maintenance

Lately I had this experience:

image

As far as I can tell, it's this part of danger/documentation/Dangerfile:

if sections_with_no_tw_review["doc/development"].any?
  add_labels(DEVELOPMENT_LABELS)
  message(format(ANY_MAINTAINER_CAN_MERGE_MESSAGE, directory: 'doc/development'))
end

Which in turn calls:

def add_labels(labels)
  helper.labels_to_add.concat(%w[documentation type::maintenance maintenance::refactor] + labels)
end

This then overrides any existing type label such as typefeature or typebug, even if the documentation change is one (very) small part of the MR. I think we should only add typemaintenance and maintenancerefactor if there isn't an existing type label; documentation should be always OK to add.

I was going to Just Fix™ it, but first I wanted to find the relevant specs, and as best as I can tell, there aren't any. It looks like adding specs for it would entail refactoring the main functionality of the Dangerfile into a plugin — see for e.g. danger/container_queries/Dangerfile, danger/plugins/container_queries.rb, tooling/danger/container_queries.rb, and finally spec/tooling/danger/container_queries_spec.rb.

Assigning labels according to my best guess!