Share work on a ticket

Suppose you have groups A, B and C

What permissions should I assign to the agents of groups A, B and C who want to have their tickets privately, but for a particular ticket they need to do shared work among them?

In the agent user guide
nothing is specified about it.

I have proposed an alternative solution.
Create groups AB and AC where the users of the groups they want to share are located In this example, in group AB the users of groups A and B, in group AC the users of groups A and C
In AB and AC everyone has full access.
The ticket you want to share is reassigned to AB or AC.
In this way you can have the possibility of reallocating tickets to share work and maintain the privacy of the tickets of groups A, B and C
This alternative solution generates many new groups and more configuration

What is the best way to maintain group privacy and allow shared work among group agents on a particular ticket?

Having a ticket privately and then working on another particular ticket with everyone on the system is technically the absolute opposite you want to achieve. (Beside it being dangerous to allow it in terms of bugs).

I’d create one group, suppose we call it “Shared-Groupwork” or so, where everyone has access.
You then move the affected ticket there, do your teamwork magic on it and put it into Group A / B / C if needed.