pytype works by symbolic execution of compiled python bytecode, and the bytecode changed a fair bit between 3.10 and 3.11. we essentially have to implement some of the new features of the cpython interpreter first to simply execute 3.11 code, after which we need to handle new typing features. (we have to do this for every new version, but usually the bytecode doesn't change as much, it's typically new python features like pattern matching, and new typing features like variadic generics, that take time to implement in pytype)