Вообще было когда то обсуждение считать Optional<T> в котлин как T?, на уровне компилятора, но не срослось)
Блин, за минуту диалога придумал два новых рула для стат анализа.
1) проверять всегда тип Optional и на него ругаться
2) проверять, что let и also использованы правильно, например для побочной печати let, а не also