Question: Is there any way to annotate variable in Kotlin which is `null` on application start and after it is created it cannot be assigned to `null` again?

I can't set field as e.g. `var someField: Boolean?` because it can be nulled at some point or `lateinit var someField: Boolean` because it is expected that field is initialized before it will be used (or maybe this is proper way to resolve my situation?).

Answer: 
I'm not sure because i don't really see what you want to do but why you don't create the var when you initialize it? So the var will never be null and you will not have to initiate it with null

If you really need this var in order to check if it's null to change it why you don't use an int instead of a bool ?
When using a more complex type than `Boolean`, you should consider implementing a Null-Value-Pattern around it. *Kotlin* offers a neat structure for such a usecase:

```
sealed class Base

object NotInitialized : Base()

class Initialized : Base()

```

Like this you wouldn't run into any nullability issues. Also you can define a default directly with your implementation.