This directory is the Gradualizer prelude. It is used to define and override types and specs in modules from OTP. A common correction is overriding a spec such as foo(term()) -> term() with a polymorphic one such as foo(A) -> A. For more information about the gradual type system, see the manual.