Recently during migration we had some classes missing due to which we were seeing issues. Wanted to understand how pega would handle missing classes. If say TOP-FOO- is missing between TOP- and TOP-FOO-XYZ.
Although I am not from pega company, just wanted to mention few things since it is a intresting tricky question.
Firstly pega does not force you to have class TOP-FOO- to have a class TOP-FOO-XYZ. So really pattern inheritance does not search TOP-FOO- is present or not when we reference a rule with class TOP-FOO-XYZ. If TOP-FOO- is missing the next level in pattern inheritance for TOP-FOO-XYZ is TOP-.
If the class mentioned in the direct inheritance of a class definition is missing, we can expect exceptions at run time and design time. but direct inheritance failure occurs only when the rule resolution searches for a rule in direct inheritance path.
Also, since applications have rules scattered across different class layers, as you mentioned failures are expected :)