EU is at least trying to do something about that. As of last year stores are required to display the cheapest price they’ve had for an item in the past three months when they have something on sale. Not all stores comply, and of course they try to get around these by the usual shenanigans, like basically the same product being available from the manufacturer with two slightly different item codes.
Edit: I think I was mistaken, and it’s 30 days, not 3 months
One of the companies making GPS navigators for cars used to advertise lifetime map updates. Small print: lifetime of the device, two years after release