On my mobile I can’t see much but this is a classic case of per user data application going wrong when combined with user profile.
I have to deal with these all the time.
What Jeff suggested works fine. My solution has always been to create a duplicate Using an array formula of the user profile sheet. Then to add rowID to one sheet and use that for filtering by user is signed in user or name is not empty.
More recently I’ve been playing around with all the the “include” features. I don’t know how best to put how they work into words, but I released two apps taxi and group scheduler without creating a duplicate of the user profile sheet. I just played around with those “is/not included, includes/doesn’t include, etc to avoid two copies of the same sheet. With the taxi one I had to give 3 groups access to the same sheet. It was a challenge but I got there in the end without letting the right eye know what the left was seeing so to speak. But, there I’m sure for each component used I had to hard code at least 3 conditions into each.
So I understand this one is not a walk in the park.
Anyway, you have a solution in Jeffs workaround.