It should be visible so ... have you tried executing this "by hand" in PSQL? Do the pc_group_new() op in a select outside a transaction, record the value returned, and use it in the second call as the arg passed as v_team_id???
If this fails then transaction visibility is not an issue.
If it works, on the other hand, try to bundle up a test case for the PG folks to comment on ...
Because offhand it should work.