Checking the now deleted
file-move.tcl and the original (outdated?) design documentation of the package, it seems the use of the "write" permission to move/delete comes from a previous unix-like permission approach.
Snippet from file-move.tcl:
# check they have write permission on the file (is this really the
# right permission?)
ad_require_permission $file_id write
I can provide the patch or commit it to HEAD to fix the delete and move scripts.