Oh but it was. Whatever the logic pacman is using to determine whether a database refresh is needed was not picking up the changes correctly. Maybe stable dbs were newer than testing, Idk, I have no insight into these internals
The Stable Core database is older than Testing, so pacman would download a fresh copy, as expected. However, the Stable Extra database is newer than Testing.
If I had an up-to-date Stable system, and tried to switch to Testing at this time, it seems reasonable that pacman would determine that my local Extra database was not in need of refreshing, and would not download a fresh version unless forced to do so. Without a forced refresh, pacman would try to give me the latest version of pacman from the new Core, together with older versions of libpamac and pacutils from the old Extra, producing the error message from the first post.
In most cases, what the wiki says will work. However, you encountered a situation that required more advanced options. The -yy and -uu flags should only be used in very specific use cases.
Using -yy improperly could force sync an outdated mirror and break everything. That’s why most of the time it’s recommended to never use it. Even Allan, the developer of Pacman says so. Good luck arguing with him about his own tool.
Keep in mind our wiki is created by and for the community. Anyone can submit new things and propose changes.
Anyway, this thread has gone on long enough and is no longer constructive.