I think the issue is that knowledge or experience is not a requirement to act (given effectively infinite justifications as needed), and the player is always in charge of what the character does, short of magical compulsion or the like. So the DM doesn't actually have a say in the application of the player's knowledge unless the DM creates a table rule to the contrary. Such a table rule in my view is completely unnecessary and counterproductive as it is an attempt at a solution to a problem the DM is creating. Better to not create the problem in the first place in my view.
To that end, players in my game know they're free to use whatever knowledge they wish to inform their actions; however, they also know that I sometimes change things which makes assumptions risky. So the smart play is to pay attention to my telegraphing and verify their assumptions before acting upon them.
Further, difficulty in a challenge is achieved through a number of vectors and ignorance of a monster's abilities (for example) is just one such vector. To my mind, if the DM can present a challenge when the players have full knowledge of everything in it and it's still difficult (if slightly less difficult than if the players have no knowledge), that's a well-designed challenge.