Answer
Components with only a dynamic (not static) dependency between them have no guaranteed deployment order — it could go either direction, or even deploy in parallel — so any customization code, view, or projection that directly references an object from a dynamically-dependent component will intermittently fail depending on which one happens to deploy first. The fix is to declare the dependency explicitly on the affected attribute in your -Cust.entity model as a dynamic component dependency; this causes a Decode method to be generated in the API package with conditional compilation ($IF) built around that component's own 'INSTALLED' constant, and the view definition is generated to use that safe Decode method instead of referencing the other component's API package directly — removing the reference that was causing the deployment-order-dependent failure. This same generated-constant mechanism (a Component_<NAME>_SYS.INSTALLED flag, temporarily set FALSE during delivery installation and recompiled to TRUE afterward) is what conditional compilation relies on generally to bypass this class of reference error during installation.