The TSC is responsible for holding at least yearly retrospective on its functioning and based on the learned lessons adapt the related documentation.
Initially the TSC was formed with three permanent members appointed by the ZLC. The process for appointing any new permanent member of the TSC requires (1) a nomination by an existing TSC member and (2) a two-thirds vote by the full TSC on such an appointment.
Each squad that is part of the Zowe project has its representative on the TSC. The squad votes on the representative on a yearly basis. The details of the vote is left to the squads.
It’s possible to remove a person from the role on the TSC. To do so two-thirds vote of the entire TSC is required. If such person was appointed by the squad, the squad needs to elect another representative on next squad meeting, if the person is permanent member then the person is removed from the document and loses voting rights.
There are three key reasons to remove someone from TSC role:
- The person can't do the role anymore and is either unwilling or unable to step down.
- The person engages in actions which are in conflict with Zowe's best interest.
- The person breaks the Code of Conduct and/or fails to meet requirements for the role.
Examples:
- The person leaves company and as such loses access to the communication channels due to them being linked to its company accounts.
- The person breaks the code of conduct by discriminating against members of the Zowe community
- The person intentionally introduces problematic code within Zowe. Problematic may be for example an unapproved tracker sending user's data to some random server.
The TSC has internally decided to create three roles focusing on different aspects of the governance of the Zowe. The roles are held by the TSC members and the members are voted into the roles. The https://github.com/zowe/community/blob/master/README.md contains the currently appointed members with the function time frames. The time frame for helding the role is year. It’s possible for one person to hold all three roles and it's possible to hold the roles consecutively. It's also possible to share the role between more people, if needed.
- Zowe TAC Representative
- Person voting within TAC on behalf of Zowe.
- Zowe Ambassador
- Designated talking head of the Zowe, together with the ZLC which should help in this area
- Zowe Chair (Zowe administrator)
- Leading the Zowe within, figuring out processes, helping with improvements, ombudsman for those who feel unjust.
Two weeks before the time frame for the previous appointments ends, the TSC will hold vote for the new ones. Any TSC member is eligible to be a candidate. The candidates will have a short time to present themselves and their vision during this voting meeting and afterwards the TSC will vote specific persons to each role.
The meeting is happening in the chat of the Zoom call. The question and the options is outlined and specified in the call. All members with voting rights then vote for one of the outlined alternatives. The alternative is accepted if the quorum as defined in the TSC Charter was achieved and at least half of the quorum votes for one of the options.
The quorum for voting outside the meeting is defined in the TSC charter. The voting will be held in the zowe-tsc Slack channel. The question and possible answers will be outlined in the question posted by the Zowe Chair. The voting time frame is 24 hours, and the voting members are expected to vote in the thread in the slack channel. The vote results will be captured and stored in the Community (https://github.com/zowe/community/) repository.
It is possible to vote again on any issue if any new concerns or knowledge arises. Anyone can raise the vote with the new information on why we should vote.
In case there is a long term disagreement on a specific issue any party can bring in ZLC as advisory council to help us provide business context and mediate the discussion to reach conclusion.
If the ZLC mediation doesn't help the TSC members may reach out to the Chapter manager within LF to help mediate the resolution.
The PRINCIPLE.md will guide the TSC as well as other mediators in the understanding on what is the correct course of action.
In this section the details for specific areas from charter are clarified where needed.
In the Zowe project the subprojects are represented as squads. Each squad is responsible for its area of expertise and has pretty wide possibilities for its own governance.
We recognize incubators and squads within the Zowe project. It is responsibility of the ZLC as an advisory board to set up the rules and processes for application as an incubator and squad. The TSC will respect their guidance in this area.
It is important to distinguish internal communication within project and external communication to external stakeholders, Linux Foundation, OMP and business.
In the context of the internal communication TSC is responsible for making sure that the communication is happening in public and that every member of the project has the option to join and express the opinion on the topic.
In the context of the external communication, the responsibility is to be shared between ZLC as the advisory council and TSC. The TSC is responsible for technology related communication with external stakeholders while we expect ZLC to drive the business communication with external stakeholders together with Zowe Ambassador select within the TSC.