Why do you care? Patching an editor just because you don't like how the strace output looks is insane behavior even for you. If it breaks something then you can at least ask whether the conditions in which it breaks are sensible.
For what I'm doing(1), the fact that Nano forces an absolute path even when you want to edit a local file creates a big problem for me.
I can also clone Nano source and ebuild into an Overlay, edit it, hacket it to remove that part that forces absolute paths, and re-package it.
Portage: app/nano editor
Overlyay: app-editor/my-nano (collision: will replace { /usr/bin/nano, /usr/share/nano, /etc/nanorc } )
In the end it's 1 hour of work. It's why Nano is done this way that I don't get
(1) sort of custom and light "sandbox" ... long story on the why.
I'm not sure about nano, but I can think of a few reasons why a program might do this.
The most obvious reason would be if they are going to save the filename (not just the file descriptor) for later use, but might execute chdir in the interim. Editors store filenames so that they can rename files to backups and create new versions, and they might allow the user to change directory in order to run shell commands with system().
Another would be if the program needs to perform input validation on the path. For instance if the program is run with elevated privileges and restricts access to certain paths. In that case it might be important to canonicalize the path either for the check itself, or to protect against symlink and rename race conditions. Actually, looking at the nano source code, there is some stuff about a "confinement" directory that prevents writing to directories other than the one specified. I'd guess this might have been used in the 90s when it was common to give people restricted shells that could access a few pre-set functions but supposedly (they were never very leak tight) not have full access.
I also wrote an analysis tool, similar to Strace. I noticed that if you edit a file with vi/vim, it creates two temporary working files.
So there are editors for whom this possibility must also be left open, or in any case somehow managed.
I was hoping that things would be a little simpler, but instead I have to use a lot more tricks, some of which are very dirty.