The plot thickens:
$ flake8
./asdf/zxcv.py:1:1: F401 'qwer' imported but unused
./asdf/zxcv.py:1:1: E0401 Unable to import 'qwer'
./asdf/zxcv.py:1:1: W0611 Unused import qwer

$ flake8 -j 1
./asdf/zxcv.py:1:1: F401 'qwer' imported but unused
./asdf/zxcv.py:1:1: W0611 Unused import qwer

Something happens when the checks run via multiprocessing.Pool.