Description: When a trade is created, anyone can accept the trade if they have the required materials. However, even if the person initiating the trade uses their materials, the trade can still happen. This is easier to explain in the steps to reproduce.
Browser & OS: Google Chrome, Linux Mint 19.3
Steps to reproduce: Create a trade. Mine was sheep for ore. Wait for someone to accept. Then, use the sheep (make a development card). Finally, accept the trade. The person you are "trading" with won't get anything, and you will still get what you wanted.
More info: It is possible that the opposite of this happens with the bots. In another game, I traded with a bot, then proceeded to lose the item I had traded away as the bot used it to build something. This can probably be easily fixed with some added sanity checks upon completing trades and upon the bots building.