I haven't used hardlinks for a long time and never really needed them until I was asked in an interview. I read their difference from symlinks here: What is the difference between a hard link and a symbolic link?
Is there any particular reason why the design is not having both of the capabilities of the symlink and the capabilities of the hardlink in the same link file?
You want to point to a file. Ok so you start with a hardlink functionality to cover situations where the filename is changed or the file is moved. If hardlink is not valid because it refers outside the filesystem or fails for some other reason have a fallback, the filepath of that file to refer to, in other words have a symlink.
Because what the user of an operating system wants by the end of the day is just have a link to a file.
Is there anything that could prevent the above design solution for links?