Hi,
Thank you for the check.
For 1 & 2, the needed fields depends on the required fields of the plugin and CsvImport can't know them (it depends on the checks that are used in the hooks and in the validator of the model object).
For the Undo feature, I didn't implement it for Mixed and Update for the simplicity of the code and because anything can be updated (and in next release, I'll add the update mode "Delete"). So to undo, you'll just have to reimport the same file with this mode for the items or files you want to remove. I'll check if this will be simple to implement Undo, but note that an Undo can be made only for new imported records, not for updated ones (changes are not tracked).
For the intermediate step, I never use it, because it's a manual one, so a slow one, so I didn't implement it for Mixed and Update. It's easier and quicker to change the header of the csv file. I'll check if I'll have some time to implement it.
"file" and "fileUrl" column names will be merged, but currently the code is not the same for them. "file" is used to import one or multiple files during import of an item, "fileUrl" is used to import a File record.
For 5, the default "Item Metadata" imports files via the "file" column, but it can't import metadata of files (what I used often, specially to display true dimensions and rights on each image of an item). So they should be imported on a specific row, but as the item doesn't exist yet in Omeka, a common relation field should be used. This column could be optional, so the file will be attached to the previous imported item, but this may be difficult to be sure that the files will be attached to the right item if there are parallel imports. If you import only one file by item and no metadata for files, you can use the "file" column.
In fact, I'm going to merge Mixed and Update formats, with some new update modes, specially "Create", "Create if not exist, else Update" and "Delete". The idea is to do all the management of records via a simple table of data, that will be simpler than the items/edit interface of Omeka.
Sincerely,
Daniel Berthereau
Infodoc & Knowledge management