I was having the same problem. I took a look through the code and it seems as though the way the upload functionality was written that it skips the original files now. Here's the code in particular, lib/W3/Plugin/Cdn.php starting at line 655:
if (isset($metadata['file'])) {
$files = array_merge($files, $this->get_metadata_files($metadata));
} elseif (!empty($post->file)) {
$file = $this->normalize_attachment_file($post->file);
$local_file = $upload_info['upload_dir'] . '/' . $file;
$remote_file = $upload_info['upload_url'] . '/' . $file;
$files[$local_file] = $remote_file;
}
I rewrote the logic so it always includes the main file, in addition to files found in the metadata:
if (!empty($post->file)) {
$file = $this->normalize_attachment_file($post->file);
$local_file = $upload_info['upload_dir'] . '/' . $file;
$remote_file = $upload_info['upload_url'] . '/' . $file;
$files[$local_file] = $remote_file;
}
if (isset($metadata['file'])) {
$files = array_merge($files, $this->get_metadata_files($metadata));
}
After that, I had a much larger group of files uploaded, and everything seems to be working correctly. You could also make the change in the function that processes the metadata looking for files, but I'll leave that decision up to the plugin author.
-Lew