Olá!
Dei uma olhada no seu código e demorei bastante pra entender o que tinha acontecido, pois ele está igual ao disponibilizado no Github do curso. Isso foi o que eu consegui analisar:
Se você prestar atenção, a página que está disponível no Github do curso também está com problemas na subtração. Só funciona a adição. O que tá acontecendo é que ao invés da tag button você escreveu buttom, com m no final. Isso tá causando um problema porque ele não reconhece o conteúdo de texto dentro dessa tag, uma vez que ela não existe no contexto do HTML. Então, ele retorna como "undefined". E por que a adição funciona? Porque no seu condicional diz que todo caso que não for "===" a "-" deve somar, e no caso "undefined" é considerado como não sendo "===" a "-".
Em tese, resolvendo esse problema o seu código deveria funcionar tranquilamente. Porém, quando você ajeita a questão do button surge uma outra questão. Como o botão está dentro do form, por padrão toda vez que você clicar nele, a página vai ser atualizada e você vai perder seus valores do robô.
Pra resolver isso, você tem que colocar dentro do seu código um preventDefault() para impedir que isso aconteça:
const controle = document.querySelectorAll(".controle-ajuste")
controle.forEach( (elemento) => {
elemento.addEventListener("click", (evento) => {
evento.preventDefault();
manipulaDados(evento.target.textContext, evento.target.parentNode)
})
})
Com isso, acredito que seu código funcione da maneira correta. Espero ter ajudado.