O problema é que o shell executará a expansão de chaveta (que processa {...,...} ) antes de fazer a substituição de comando (a $(...) part.) Então, depois que seu seq for expandido, o shell não reavaliará o {01,02} e vai deixar como literal.
Você precisa adicionar um eval para reavaliar a expressão após a substituição do comando:
$ eval "ls test/*{$(seq -s , -f "%02g" 1 2)}*"
Nesse caso, a substituição do comando será executada primeiro, resultando em uma string ls test/*{01,02}* e o eval solicitará que o shell interprete isso como um comando, que executará a expansão de chave e glob, resultando em a lista de arquivos que você está esperando.