Я думаю, что причина того, что вы не видите этот сценарий в дикой природе, заключается в том, что кажется, что вы пытаетесь решить разделение чистого кода / грязного кода, используя отдельные репозитории , а неотдельные ветви, что является нормой.
Возможно, вместо этого у вас есть единственный пульт, который Дженкинс слушает, и, возможно, слушает (скажем) ветку 'dev'.Вы нажимаете от своей локальной к удаленной ветви разработки.Дженкинс слушает, строит, когда видит изменение, и, если ему нравится то, что он видит, объединяет его с «master».
Тогда ваш грязный код находится в ветви dev, отдельно от чистого кода в вашей ветви master..
Это более общепринятый способ решения проблемы такого типа ... вы, вероятно, найдете больше поддержки для этой модели.