Я думаю, вы всегда должны учитывать долгосрочные аспекты проектных решений.
Может быть, лучше разделить эти функции, но тогда у вас есть две чистые функции. Так что с точки зрения эстетики вы могли бы поспорить в любом случае. Существует вечный компромисс между чистым дублированным кодом и поддержкой.
Однако в долгосрочной перспективе в игру вступают другие соображения, и вы начинаете думать о рисках. Риск дублирования кода состоит в том, что две части кода становятся не синхронизированными, возможно, скрытыми способами, которые трудно обнаружить (например, можно добавить данные, которые отклоняются при обновлении). Это может быть намного хуже, если вы не являетесь лицом, обслуживающим код, или вы не касались кода в течение длительного времени.
Так что ИМХО сохраняйте флаг редактирования. У вас все в одном месте, хотя это и грязно.