Fix assertion failure in odoc subst.ml for OxCaml mode types
Port fix from avsm/oxmono@1618948: when a module type path is replaced
during substitution, raise Invalidated instead of assert false, and
handle it in signature_fragment by unresolving the fragment.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>