It looks like hask always trusts type signatures and doesn't check them.
E.g.
from hask import *
@sig(H/ "a" >> "b" >> "c")
def const1(x, y):
return x+1
print(const1(1,2))
runs successfully.
If my understanding is correct, perhaps you should highlight this fact in the readme and not claim "Full Hindley-Milner type system that will typecheck any function decorated with a Hask type signature".