It's great to have mypy pass Leo's code base. This is an important milestone.
Ironically though, the changes made to please mypy (or pylint) could have introduced bugs.
Leo's unit tests do not ensure that changes have no unintended consequences. This state of affairs is likely to continue indefinitely.
Imo, we shouldn't let testing inadequacies stifle progress. We'll just have to fix new bugs as they arise. On balance, Leo will be better off.
Edward