Em nenhum dos casos em que você usa chaves em sua pergunta, você está executando vários comandos.
touch {1..10}.txt
executa um comando em 10 arquivos:
touch 1.txt 2.txt 3.txt 4.txt 5.txt 6.txt 7.txt 8.txt 9.txt 10.txt
O comando
systemctl restart app9-{server,client,test}
ainda é apenas um comando:
systemctl restart app9-server app9-client app9-test
A expansão de chave é usada para executar uma expansão de texto simples de uma ou várias sequências de caracteres em um único comando.
As três tarefas que você deseja executar devem ser três comandos separados. Você pode fazer isso em um loop, se desejar:
for cmd in destroy up ssh; do
vagrant "$cmd" app9
done