Observed behavior
There seemed to be a gap in our validation and viewset logic that allowed a node to be marked as complete, even though it did not have proper mastery criteria. This resulted in a failure during publishing
#4163
Expected behavior
We harden the content node viewset to ensure that completion criteria sets the node incomplete when it's invalid.
User-facing consequences
Users don't have insight within the UI regarding which nodes are incomplete and won't be published