Here are a few more observations:
when .ignoreSafeArea(.keyboard) is used to make this simple debug app look correct an added GeometryReader still shows the height being adjusted down.
an added GeometryReader shows exactly the same height with this issue happens as when a keyboard is opened up.
looking at the scenePhase using "@Environment(.scenePhase) var scenePhase" the debug app shows up normal while phase is Inactive but as it changes to Active the shift in the app occurs.
Other apps I see showing signs of this issue but not as noticeable as the debug app. Below is what happens when go from duck-duck-go web browser with keyboard open to these apps:
Google Keep: The "+" and paint palette icon from bottom of screen move up
Apple Developer App: In "Developer Tools" shows "No Search Results" that shifts up as app becomes Active
Apple Contacts: Left side has list of contacts with alphabet on its right side. When app goes active the alphabet shrinks up like it does when the keyboard is opened.
Post
Replies
Boosts
Views
Activity
Adding .ignoreSafeArea(.keyboard) to the outside VStack makes it so the red rectangle doesn't change but this isn't what I want on my real app as I do want to react to the keyboard when it is actually there.
Aka this isn't a solution.