From a visual perspective the text item looks like it’s inside the frame, but it seems I have to manually move that layer into the frame myself which is a huge pain and big flow killer.
Frames in Figma are not your typical artboards from other apps, they don’t automatically consume everything that you lay on top of them. You need to explicitly control nesting via the layers panel.
The problem is if I drag the element out, then back into the frame it automatically adds the element into the frame properly. So the inconsistency between what the visual and the layer hierarchy seems like a glitch when the default behavior Figma seems to perform is that items inside a frame should be in the frame.
That’s the expected behavior, it is called automatic nesting. There are different ways to avoid auto nesting, you may have used one of them accidentally so the object wasn’t automatically nested in a frame.