Thanks for the update and glad I could help.
1. In my random tests, I couldn't reproduce this on my test website. If you continue to see this behaviour, you're welcome to start a new ticket, with the specific steps to reproduce the issue and we'll have it investigated, accordingly.
2. a. Yes, it is possible to add the same conditional statements using the visual mode too, as shown in the attached "screenshot-1.png".
When adding a new statement in the visual mode through the plus sign, you'll see the options to whether add an if statement at the same level or start a new group for a combination of statements.
( example screenshot "screenshot-2.png" attached )
2. b. Comparing "current user id = current User id" will achieve nothing, because the two values will always be the same. For example, if I'm logged in using a user with ID '12345', then the same value '12345' will be on both sides of the equation (12345 = 12345) and this condition will always be true.
You wanted the edit button to show in two main scenarios:
In the first part, the button should show for users with any of these roles: administrator, sa001, system_admin
(
( '[wpv-current-user info="role"]' eq 'administrator' )
OR
( '[wpv-current-user info="role"]' eq 'sa001' )
OR
( '[wpv-current-user info="role"]' eq 'system_admin' )
)
In the second part, the button should also show, if the currently logged-in user is viewing his/her own profile:
( '[wpv-post-author format="meta" meta="ID" ]' eq '[wpv-current-user info="id"]' )
This part tells that if the current profile post's author ID is the same as the currently logged-in user, then this condition will be true and the edit button should show.
And combining the two parts, you get the conditional statement that I shared in my last reply and what is shown in the "screenshot-1.png" from the visual mode.
Note: You can read the details about the shortcodes used in these conditional statements in this shortcode reference:
https://toolset.com/documentation/programmer-reference/views/views-shortcodes/