Mapeamento dinâmico e concat com Grunt Uglify

Estou tentando usarmapeamento dinâmico E concatene arquivos Javascript com Grunt Uglify.

Eu tenho o seguinte que não está funcionando corretamente.

Aqui está a minha estrutura de pastas:

javascript
    |- account
        |- custom.js
    |- bills
        |- billing-one.js
        |- billing-two.js
    |- test (output folder)

Aqui está o que eu estou esperando:

javascript
    |- account
        |- custom.js
    |- bills
        |- billing-one.js
        |- billing-two.js
    |- test
        |- billing-one.min.js (this file includes billing-one.js AND custom.js)
        |- billing-two.min.js (this file includes billing-two.js AND custom.js)

Isto é o que estou recebendo atualmente:

javascript
    |- account
        |- custom.js
    |- bills
        |- billing-one.js
        |- billing-two.js
    |- test
        |- bills
            |- billing-one.min.js (this file includes just billing-one.js)
            |- billing-two.min.js (this file includes just billing-two.js)
        |- account 
            |- custom.min.js (this file includes just custom.js)

Ele não está incluindo o arquivo custom.js, mas cria duas pastastest/account/custom.min.js 'test / bills / billing-one.js' - veja acima

options: {
    beautify: true,
    mangle: false,
    compress: false,
    preserveComments: 'all'
},
files: [
  {
    expand: true,     // Enable dynamic expansion.
    cwd: 'javascript/',      // Src matches are relative to this path.
    src: [[bills/*.js'], 'account/custom.js'], // Actual pattern(s) to match.
    dest: 'test/',   // Destination path prefix.
    ext: '.min.js',   // Dest filepaths will have this extension.
    extDot: 'first'   // Extensions in filenames begin after the first dot
  },
],

Eu quero todos os arquivos Javascript dentro dobills/ pasta para conter custom.js

Portanto, se houver 2 arquivos:bills/billing-one.js bills/billing-two.js

Eu esperaria que teste / pasta incluísse

test/billing-one.min.js (esse arquivo conteria billing one + custom.js)test/billing-two.min.js (esse arquivo conteria dois de cobrança + custom.js)

Não quero codificar os nomes dos arquivos. Se mais arquivos forem adicionados abills/ pasta deve ser concat e saída para otest/ pasta.

Qualquer ajuda muito apreciada.

ATUALIZAÇÃO DESDE QUE A RESPOSTA ACEITE:

Use o código atualizado a seguir para garantir que isso funcione conforme o esperado - caso contrário, você poderá encontrar erros ao executar o GRUNT.

Tentei adicionar isso à resposta enviando uma edição para revisão. Mas foi rejeitado, duas vezes, por todos os conhecedores de todos os mods superiores ... quando, na verdade, é uma entrada válida e melhora a resposta dada. Note o[], cwd esrc alterar.

files: [{
    expand: true,
    cwd: 'javascript/bills/',
    src: ['*.js'],
    dest: 'test/',
    ext: '.min.js',
    extDot: 'first'
}],

questionAnswers(1)

yourAnswerToTheQuestion