Why would we want that hba_file value to be relative to something as volatile as pwd?
Why do you want it under PGDATA but not in the root directory thereof?
For the sake of grouping and source control, I put my configs into a subdirectory of PGDATA. I wanted to keep them separate from the other files and directories in PGDATA.
Thanks for pointing out the documentation reference, I missed that in my own search.
In any case if you are going to use relative paths then "pwd" should be a considered part of the architecture and not something that is considered "volatile". That seems to be how most programs behave and I don't see much advantage for PostgreSQL to be different in this regard.
Obviously just my opinion, but I do consider it "volatile" in the sense that I could be (and usually am) anywhere on the host system when calling the startup. Perhaps I'm the outlier though since I'm relatively new to the Postgres game.
Anyway, since this is working as documented, I now know to use the absolute path to avoid the issue.