I have an example where a module is type checking fine even though I have introduced a type error into it! I've reduced it down to a small example. It looks like there is a problem using type constraints from a signature where the signature is also required to resolve record components. See attached example for details.
Phil