X_STORAGE_PARTS_INVALID
Means
the parts named do not match the parts stored
Typical cause
completeUpload was handed a part the disk never received, parts out of ascending order, or an etag that is not the stored one
Fix
listParts({ disk, orgId, key, uploadId }) to see what landed, resend the missing part, then completeUpload again