Интересно как так получилось. Я бы этот кусок писал типо перебрать все значения энамки с номиналами и проверить сколько в хранилище лежит, и если >0 то добавлял бы в массив, и потом этот массив в строку join с разделителем запятая. Но тут всегда будет массив создан до того как я в цикле пойду. Видимо какую-то оптимизацию пытались обозначить, чтоб собственно этот массив и не создавался если пусто в хранилище или создавался при первом пуше.
может быть просто софт рукожопы писали?