To potential script writers, including me when I get back Tuesday (I'm about to leave for a long weekend)...
The issue is that the upgrade script (mentioned above) simply reverses cr_items.name and cr_revisions.title for all files including dotlrn-homework files.
This breaks the homework naming scheme because homework rightly twiddles the cr_items.name to maintain uniqueness.
So we need to add a script that does the right thing for homework files, basically stripping off the user_id encoding, then swapping the name/title, then reencoding the name. We also have to decide whether the file storage upgrade script should skip homework files, or if the homework script should assume that the file storage script has already been run.