What is the purpose of the storage_mtime column in oc_filecache table?

I didn’t see a design document so far (which would have been handy for troubleshooting) so the only source of truth would be the code.

In general having two columns in the DB is definitely nothing which happens without intention. A good reason I could imagine is track glitches between NC database and storage… another intention could be a situation when you e.g. share, comment, un/delete the file etc and you want to keep storage attributes untouched but track this “update” inside application.