One of the things I really don't like in the Declarative Management Framework is the term "On change – prevent" for the execution mode. Given we don't have INSTEAD OF DDL triggers and only AFTER DDL triggers, we can't *prevent* these things at all. All we can do is roll them back after they happen. I think the name should be changed to "On change – rollback" to reflect what's actually happening.
Also, if we ever get INSTEAD OF DDL triggers, we might then be able to prevent the actions. What then would the option be called?
Details and voting here: https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=333350
And for some pressure on getting INSTEAD OF triggers for DDL, my previous item on that is here: https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=299328
You know the drill: vote once, vote often 🙂