Furthermore, by framing it that way, you're being disingenuous about what exactly is "the program" that ceases functioning. In the scenario where the program is on Github, you're making the new version of the program cease to function, but the old version still functions, and the user is still permitted to use it--that is, the real problem isn't that "the program" ceases to function, but that you're replacing a still functioning version by a nonfunctioning one automatically. In the scenario where you're charging $10000, there is, in actual practice, no old functioning version.
In a weird scenario which was closer (but which doesn't happen much in practice), charging $10000 would be objectionable too.