Como o seu script expect está em um heredoc não-referenciado, sua variável expect está sendo manipulada como uma variável shell. Mudar
puts "The output is $expect_out(buffer) "
para
puts "The output is \$expect_out(buffer) "
A saída que você vê, ( The output is (buffer)
) é exatamente o que eu esperaria: o shell está expandindo $expect_out
para nada antes de entregar o script para esperar.