Also, do you still have an "original" copy/backup of your 2015 wallet.dat file that you have NOT attempted to open with a newer version of Bitcoin Core? When you open wallet.dat files in newer versions of Bitcoin Core, the wallet file gets updated/modified. It might be helpful if you still have the old version of the wallet.dat to (make copies of) and "experiment" with.
You could try getting an old version of Bitcoin Core/QT from here: https://bitcoin.org/bin/ and seeing if it is able to open the old versions of your wallet.dat file and test whether the passphrase works on the old copies. If it does, you could try and dump all your private keys and then import those keys into a new version of Bitcoin Core (or a completely different wallet like Electrum etc) to recover your funds.
Again, be sure to make copies of the wallet.dat and experiment on the copies, not the original!
The passphrase that I believe is the correct one is just alphanumeric (so a-z, 0-9).
I have tried opening the wallet with older versions of the client which, i believe I mentioned, crashed upon loading. I experiment with copies, and keep my original wallet on my NAS (which is only locally accessible).
The other thing that is weird is the older clients seem to use a character set no longer available in MacOS, as all text in the application consists of just rectangles. This leads me to believe it has something to do with the character set being used in the original wallet passphrase that does not correspond to my current keyboard layout (even though it might represent the same characters). This is because I stumbled upon this blog post https://keychainx.medium.com/how-to-recover-a-lost-bitcoin-wallet-dat-password-4ff7704740ad
Try btcrecover from github together wtih your passphrase, does it show the passphrase as correct?
You can find it here.
https://github.com/gurnec/btcrecover
Good luck
/KX