Problems with the order of a statement in the security filter of a table

In my application, I frequently use the security filter, but I’ve recently noticed something and would appreciate it if you could explain whether it’s a bug or not.

What I usually include in the security filter of a table is, in part, the following instruction:
“LOOKUP(USEREMAIL(), Users, Email, User) = [User]”

This ensures that the user who entered a record only sees their own records. The problem arises when I apply this logic to the security filter of a subtable that connects to a reference (REF), for example:
“LOOKUP(USEREMAIL(), Users, Email, User) = [IdInspection].[User]”

For some reason, instead of following the logic of showing only the records where I am the user, it shows absolutely all of them. To solve this problem, I need to reverse the formula:
“[IdInspection].[User] = LOOKUP(USEREMAIL(), Users, Email, User)”

I’d like to know why the security filter formula doesn’t work on subtables in the first way, but it does in the second.