More of a process comment, but I had a major sense of deja-vu seeing this proposal, and it may be useful to add a link to the original pitch thread.
As for the proposal, big +1 from me for enabling this extension of the generic constraint system. That said, as I originally mentioned in the pitch thread, I would like to see the constraints being taken further, specifically calling out that functions that take an index as an argument could perform compile time checks to make sure that index is in range (or greater than some constant) to automatically take a fast path without runtime checks, or throw a compile-time error, for instance.
This only really works if there is a fallback for when the parameter cannot be determined within range at compile time, and is further made more expressible by possibly returning an optional or different type in those circumstances. I would also expect suitable error messages if a non-constraint variant is not provided, but a non-constant argument is passed in: "Passing a non-constant argument requires that functionName() provides a non-constrained variant" (or similar).