Разнести функционал picodata expel, picodata nuke, picodata expel --force
picodata expel должна работать только на инстансах в которых current grade = offline и которые не являются последними или единственными инстансами в репликасете.
Если инстанс онлайн, то удалить его можно с помощью picodata expel --force. при этом произойдёт ребаланс бакетов на другие инстансы.
Если инстанс офлайн, и он последний в репликасете, т.е. его удаление приведёт к потере бакетов, т.к. перебалансировать их невозможно, то expel должна отказываться от удаления такого инстанса. удалить его можно только с помощью picodata nuke.
При этом picodata nuke не должна удалять инстансы, которые можно удалить с помощью expel - online инстансы, или инстансы не являющиеся последними в репликасете. picodata nuke это последняя мера и должна использоватьса администратором только в ситуцаии, когда данные потеряны и восстановить их, например из бэкапа, невозможно.