Batch Job processing out of order?

Hi there, I’m using Hangfire to process a bunch of user created files, then send an email when it’s done. My implementation looks like this:

BatchJob.StartNew(processBatch =>
    {
        var filesBatchId = processBatch.StartNew(filesBatch =>
        {
            filesBatch.Enqueue(() => _fileProcessor.ProcessFile(file0));
            filesBatch.Enqueue(() => _fileProcessor.ProcessFile(file1));
        }, "Process Files");

        processBatch.ContinueBatchWith(filesBatchId, emailBatch =>
        {
            emailBatch.Enqueue(() => Console.WriteLine("Send Email"));
        }, "Send Email");
    }, "Process Uploads");

But when I look at the succeeded batches, it says the order process finished before the email sending? What am I doing wrong here? Shouldn’t the parent batch only finish after all children?