There should be an option for a step to be non-critical for it to not block PRs from being merged.
Use case :
When merge checks are set to block PR if any step fails, one step does a network call to npm and fails for some reason, but the step actually is not at all related to the code. It shows the status of the project from npm so cannot be shifted to after-script of a step as the status for the whole pipeline should be
fail. Since this step is wanted to have an automatic trigger so cannot be a custom step.
A step which doesn't block PR for being merged when fails
Shows pipeline status as fail if step failed
Configurable through bitbucket-pipelines.yml