Finalize Upload
Finalize a file upload after uploading to GCS via signed URL.
This endpoint should be called after the client has:
1. Called create_file_entry to get a signed URL and file ID
2. Uploaded the file directly to GCS using the signed URL
The endpoint fetches the actual file size from GCS and updates the database record.
This is necessary because signed-URL uploads bypass our server, so we don't know
the file size until we query GCS after the upload completes.
Returns:
FileResponse: The updated file record with the correct filesize
Raises:
404: If the file hasn't been uploaded to GCS yet (blob doesn't exist)

