A common enough pattern is to skip either a whole pipeline or a stage based on the branch of execution. This is pretty common in deployment focused pipelines, and would be a strong reason to break out of config and that would be a shame.
It would be nice if this was somewhat first class in pipeline config. Some may be able to be done with a block scoped step... but not clear if all can be.
A general way of saying "if this boolean condition is false, skip this stage" would be the way to go - a branch matching would be one particular use of this, but the right thing to do is go generic.