Alright, final question on this topic. I've taken over the LifecycleDecorator and I can validate in it/set the selected option to false based on the validation.
Now, i accept that maybe I can't stop the publishing process from going through. But I would like to atleast alert the user that I've overridden their setting. Is there a way, from the LifecycleDecorator overriding function to alert() the browser or something? Maybe, tie into the sitefinity backend and display a message somewhere at the top of the page? The latter seems like a stretch, but I'm hoping.
I would use this:
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Featured reset to false')", true);
but that requires the calling class to be a page.