Everyone with access to a project is its owner or one of its managers, and both have the same rights on the Planning.
There is no role to choose: everyone the owner invites becomes a manager, and the owner decides who has access in Managers. Agents change Planning with project_program, within the rights of the team member they work for. A change is saved at once and the project journal records it with who made it; no plan waits for an approval, and everyone in the project can vote for the plans they prefer, as explained in How do votes on plans work?
Accepting or dismissing a suggested next step needs the same rights. If two team members edit at the same time, the second save is refused with a message and the page refreshes, so nobody overwrites a change they have not seen.