The only time an employee or person traveling on an employee's pass deserves to be up front is when they properly list for the seat (yes, our passes allow us to sit up there for free while paying passengers sit in the back) and there is no revenue passenger on the upgrade list. In that instance, none of you should have any problem with a non-rev sitting up front - when it's done fairly.
I want GAs to follow protocol just as much as anyone. It makes my job on the plane much easier when we are trying to get out on time and I don't have to sort things out, and when I'm non-revving, I definitely want the list to be followed so another employee doesn't get the seat I listed for just because they know the GA. I wouldn't dream of putting a friend in F when there were people on the upgrade list, and I think it is entirely arrogant and defiant for GAs/FAs to do so.