Currently, if a user attempts an edit (i.e. creating a new feature) that violates a constraint rule, the edit is rejected outright with an error explaining why it was rejected.
Instead, the dialog should warn the user of the constraint violation and allow them to either (a) continue editing the feature to correct the violation or (b) discard the edit.
Example 1: the user painstakingly digitizes a detailed lake shoreline perimeter based on aerial imagery, but when they finish the edit they receive an error message based on a constraint requiring that the lake name must not be <Null>. Instead of discarding the editor's sketch, the user has the opportunity to enter the lake name attribute and then again try to commit the edit to the database.
Example 2: some editing workflows mean that it's easiest for editors to simple copy/paste an existing feature (effectively just duplicating it) and then change one or two attributes. However, a constraint rule prohibiting certain duplicate attributes would not allow the user to paste (create) the feature; it would just discard the edit. Instead the user should be able to paste (create) the feature and then receive a warning that the certain attribute has violated the 'no duplicates' constraint, forcing them to change the attribute in the new feature before the edit is committed.