Update: the functionality used by the application was reverse engineered and Google stated that it may change. Google has released a statement which acknowledges that playing local content will come back to ChromeCast once the API has stabilised. Storm in a teacup, apparently.

Given that this is the second time they've purposefully removed/disabled[1] the ability to play media from external sources, it confirms some of my suspicions that I have had about the Chromecast developer program: the policy seems to be a heavy handed approach, where only approved content will be played through the device.

Yes, IMHO. There is a huge difference between modifying the kernel and this. With the kernel all development is in the open, so if they change something there is a discussion surrounding the change as it makes its way to Linus' kernel. There are developers you can email, explaining the reasoning behind the change. You may not agree with it. You may not like it. But the explanation and history are there for anyone to read. Here, with a closed development process, a possibly innocent change is met with suspicion and mistrust.

But in any case it looks like that spokesperson for Google has been making the rounds, repeating the statement to every news outlet, So I guess they released it too soon. If I were in charge at google, I would not make changes, even to a beta sdk, unless there was some communication about why some changes were being made. It just helps prevent this kind of misunderstanding and ill will from your developers.