Reflecting on the recent events involving the DAO, why isn't there a mechanism built into Ethereum to modify contract code? Unknown-unknowns are always in code. In my day-to-day dealings with product features I always assume I'll need to patch existing code already running in production, and I build my environment upon the axiom that I'll need to change things
as I hit edge cases.
It's almost as if Ethereum requires us to use the waterfall approach to design and implementation contracts, which just will not fly in the world of software.
I'm sure I'm not the first to think of this, so is there any work being done in this area? Have people been working on, maybe, a multi-sig scheme where contract code can be modified in a secure and agreed upon ways?