When you include a child taskfile, the tasks run in the parent taskfile's directory. But when you add internal:true to the taskfile, those tasks run in the child taskfile's directory.
I assume this behavior is intentional but it threw me and my team for a bit of a loop. I'd suggest these documentation sections be updated to address this behavior.