Yeah, I had few bad exchanges with that guy before on github.
So, following his logic, once you run blockchain upgrade, you don’t have anymore “seamless downgrade” to v1.2.11, as it does modify config.yaml. Really?
The config.yaml is there for a purpose, and it is to have the user decide what should be used and how. Hardcoding stuff is bad, trying to say that it is for your benefit is just ridiculous. For instance, if you make a mistake / typo in the wallet db path, if it can, it will create a new folder somewhere, or it will just barf (spinner), if it cannot create one. It should really follow the settings from config.yaml, and eventually let the user know what is potentially wrong with those settings.
Also, that v1/v2 part, at least with v1.3.11 looks like is just a part of the friendly name. You can put vXYZ there, and as long as db will respond with v2 version, it will use it. However, when you rename your v1 db to have v2 mark, it doesn’t check db anymore for version, but rather barfs with a spinner.
Kind od a pretzel logic, but in some limited situation, for sure enables “seamless downgrade.”
UPDATE
I guess, part of I wrote above is not right. Trying to make another few runs, I don’t think that the code checks with db what version it is. Also, it looks like it checks for v1 mark, and if present, starts a new wallet db (even though I renamed my v2 to be v1). However, when I either omitted that v mark, or put it at 2 or higher, it used that db. I guess, if the v1 check is being made, the v-non-2 check should also be made, as we don’t know what v3 will be.