output.children имеет тип HTMLCollection.
An HTMLCollection in the HTML DOM is live; it is automatically updated when the underlying document is changed.
Таким образом, при удалении, например, элемента с индексом 0, коллекция перестраивается, все элементы смещаются, элемент, имевший индекс 1, получает индекс 0 и остаётся в списке, так как следующим вы удаляете элемент с идексом 1 (изначально 2).
Решить можно несколькими способами:
--let childrens = output.children;
++let childrens = [...output.children];
--for(let i = 0; i < childrens.length; i++){
-- childrens[i].remove();
++while (childrens.length > 0) {
++ childrens[0].remove();
--let childrens = output.children;
--for(let i = 0; i < childrens.length; i++){
-- childrens[i].remove();
--}
++output.innerHTML = '';