First, you cannot rely on lazy loading on screens with nested containers. It’s because nested instances loaded lazily will bypass DataContext and won’t be tracked for changes. So a fetch plan including nested collection is required.
Second, thanks to your use case, I discovered an issue with Kotlin entities and lazy loading of collections: https://github.com/Haulmont/jmix-data/issues/122
It causes the empty back reference to Parent. If you change the field declaration to nullable, the lazy loading will work (but the first problem will prevent changes to be saved automatically):
@Composition
@OneToMany(mappedBy = "parentEntity")
var children: MutableList<ChildEntity>? = null