Not so easy task to explain but I will try. The bug was created here https://netvor.sk/trac/arcomage/changeset/710 by me.
I changed the system how the games are identified. Until then they were identified by names of both players. The new system would identify them by game id (identification number) instead.
When you accept a challenge the system needs to know who your opponent is. By changing the system I had to change the way how this information is obtained.
Since player names can contain some special characters that could endanger the application functionality, we use some encoding functions, when working with player names. For example empty space is translated to "%20".
So, instead of proper escaping, I provided the opponent name directly to the system. When testing, I didn't notice anything strange, because my test users don't have such characters in their names. This is why every player, that has only alphanumerical characters in name, had no problem, but if you had at least one special character in name, your challenge could not be accepted.
The reason why the system was providing us with weird error message "No such deck" is simple. It uses opponent name to identify the place where your deck name is located. Without it, he failed to load your deck.
I plan to simplify the process, since I don't think you need one deck selector for every incoming challenge. Hosted games have only one deck selector, which can be used for any game to join.