Suppose that the cursor is over a field in an object (cursor in <>):
If we type rt at this point will result in the following invalid object:
AFAIK, this is not an easy fix (at least, no easy fix that actually solves the cause of the problem). The main issue is that objects implicitly create fields to contain their children, a very nice UX feature that causes some jank with tree validation.