Custom merge checks configured on multiple levels are extremely confusing

Atlassian recently introduced custom merge checks on the workspace and project level. I absolutely like this, it was a PITA to configure the same custom merge check for every repo individually.

I gave it a quick try today, as we are building a new custom merge check, and to me the implementation is either counter-intuitive or just buggy… Let me illustrate this with a simple example.

  1. Turn on a custom merge check with REQUIRED on the project level:

  2. Then turn on the same check with RECOMMENDED on the repo level:

I would assume that the lower level (repo) setting will override the one configured on a higher level (project). In fact, this is how it works in Bitbucket Data Center with hooks and merge checks.

Instead, there will two(!) separate checks shown for a pull request:

It means that the same criteria is both required and not, effectively required.

You can make it even worse by:

  • configuring this on the workspace level which will add a third check of the same type
  • using the check with “All branches” and “Main branch” variations (I think you can go up to 6 checks per PR this way?!)

Is this behavior by design? I find it extremely confusing and rather inconsistent with the DC implementation.

Can someone from Atlassian comment on this?

1 Like

@EdmundMunday Can you please comment on this, or forward it to PM responsible for the feature?