Refinement Types?

proposals for contracts is for controling function behavior, not for type.

it’s adjacent in that’s both proposals are for reliability by adding controls on compilation and prevents bugs.