Skip to content

Latest commit

 

History

History
107 lines (54 loc) · 12.2 KB

Software Development and Release Procedures.md

File metadata and controls

107 lines (54 loc) · 12.2 KB

Working Group Procedures Applicable to the Addressability Working Group and Privacy & Rearc Commit Group

Effective May 20, 2021

1. Tiers of Participation & Scope of Procedures

There are two (2) tiers of member participation in the IAB Technology Laboratory, Inc.’s (“Tech Lab”) Project Rearc Working Groups: (i) Privacy & Rearc Commit Group participants (the “PRCG Participants”); and (ii) General Project Rearc Working Group participants (including the Addressability Working Group participants (“AWG Participants”) and Accountability Working Group participants). PRCG is directly engaged in and supervises the work of both the AWG and Accountability Working Group. Additionally, non-members are permitted to participate in the AWG (“AWG Non-Member Participants”) in the limited manner set forth herein after acknowledging and agreeing to Tech Lab’s Intellectual Rights Policy, which applies in the same manner to all members.

Reasonable efforts have been undertaken to achieve a balance of interests within the AWG and General Project Rearc Working Group. Additionally, Tech Lab will maintain a working group roster, including any applicable sub-working groups, which shall be made generally available to members upon request.

This document sets forth the procedures (the “Procedures”) that apply to the AWG and the PRCG’s supervisory role thereof as it relates to:

  1. Software development
  2. New proposal adoption
  3. Dispute resolution

These Procedures do not apply to the Accountability Working Group or the PRCG’s supervision thereof, because there is no code development occurring in that group. Nor do these Procedures apply to any services that Tech Lab may determine, in its sole discretion, to undertake.

Although these Procedures have been adopted by Tech Lab and apply as set forth herein, participants nevertheless acknowledge and agree that by participating in the AWG and PRCG, respectively, they are bound to comply with these Procedures.

2. Software Development Platform & Releases

a. Repository

The PRCG and AWG shall maintain all software on GitHub, including, but not limited to, managing software development and releases. Additionally, PRCG Participants and AWG Participants can submit “GitHub Issues” to the designated GitHub repository. PRCG and Tech Lab will determine what action, if any, is to be taken concerning such issues.

b. Suggested Software Modifications

Each PRCG Participant and AWG Participant has the right to suggest updates and other modifications to software in development; provided, however, acceptance of such updates and changes will be left to the sole discretion of the PRCG Participants and Tech Lab, which shall use good-faith efforts to reach consensus among themselves or through a Majority Vote (defined in Section 4 below) of the PRCG if consensus is not reached.

c. Software Releases and Manner of Distribution

All software releases and the manner in which they are distributed shall be determined by the PRCG Participants and Tech Lab by reaching a consensus amongst themselves or through a Majority Vote of the PRCG if consensus is not reached.

3. AWG and PRCG Working Group Process

a. Consensus & Majority Voting

AWG and Tech Lab will use good-faith efforts, through consensus among themselves or through a Majority Vote of the AWG if consensus is not reached, concerning all decisions and actions properly within the scope of the AWG. Likewise, PRCG Participants and Tech Lab will use good-faith efforts, through consensus among themselves or through a Majority Vote of the PRCG if consensus is not reached, concerning all decisions and actions properly within the scope of the PRCG.

b. Workstreams & Eligibility

PRCG and Tech Lab will create a roadmap of all workstreams, and, if needed, sub-working groups, of the AWG. All AWG Participants are eligible to be designated by Tech Lab, in consultation with PRCG Participants, to be a member of one (1) or more AWG workstreams or sub-working groups of the AWG. AWG Non-Member Participants are eligible for such designation at the sole discretion of the Tech Lab.

Each AWG Participant and PRCG Participant who participates in a workstream or sub-working group must actively participate, including, but not limited to, attending meetings and responding in a timely manner to group activities. Additional criteria to meet the active participation requirement may be established by a Majority Vote of the PRCG.

c. New Proposal Adoption by the PRCG

AWG Participants, PRCG Participants, or Tech Lab are permitted to submit proposals to the PRCG regarding the issues properly within scope, including, but not limited to: strategic or tactical direction; scope of workstreams and sub-working groups; operating procedures; code development strategy; and new repositories (hereafter “Proposal(s)”). For the avoidance of doubt, and for example, a specific “Github Pull Request,” as set forth in Section 3(d) below, is not within the purview of a new Proposal; the procedures set forth in Section 3(d) shall apply. All Proposals must include full details and accompanying documentation, if applicable. AWG Non-Member Participants are eligible to submit Proposals, as set forth above, at the sole discretion of the Tech Lab.

PRCG Participants must have at least seven (7) days to review Proposals before a decision (hereafter “Review Period”) by a Majority Vote of the PRCG. Therefore, all Proposals must be submitted to Tech Lab’s designee at least five (5) days before the Review Period, during which time Tech Lab will circulate the Proposal to PRCG Participants and add the Proposal to the meeting/call agenda. PRCG Participants and Tech Lab can unanimously agree to waive the Review Period and take a vote before the next meeting/call. The PRCG and Tech Lab may request additional details concerning the Proposal or delegate a sub-working group to work further on the Proposal before voting on whether to approve the Proposal.

d. AWG Operations

The AWG (or a sub-working group thereof) will undertake the following processes:

  1. The AWG will review during its meetings/calls any proposed change to source code and/or software, in particular, as it relates to new features, “bugs,” or repairs that are properly delegated to that AWG workstream or sub-working group by the PRCG (“Proposed Change”);

  2. The AWG or PRCG may ask for additional information from the AWG Participant or AWG Non-Member Participant that submitted a Proposed Change;

  3. The AWG will use good-faith efforts to achieve consensus among themselves or through a Majority Vote of the AWG if the Proposed Change should be submitted as a software development request (“SDR”);

  4. The AWG will submit the SDR on the GitHub repository;

  5. PRCG Participants and Tech Lab will determine the acceptance and prioritization of all SDRs submitted by AWG Participants and AWG Non-Members Participants;

  6. PRCG Participants and Tech Lab will determine milestones for releases and the SDR to be included in each milestone;

  7. Any AWG Participant who submits an SDR for approval by PRCG Participants and Tech Lab has the first opportunity to build that SDR unless decided otherwise by the PRCG Participants and Tech Lab. If the SDR-submitting AWG Participant does not want to build the SDR, then PRCG Participants and Tech Lab will make it available for other AWG Participants and Non-Members Participants to build; and

  8. A completed SDR is submitted by an AWG Participant as a “GitHub Pull Request.”

All GitHub Pull Requests are managed by an AWG Technical Administration Sub-Working Group, which shall consist of AWG Participants only. That AWG Technical Administration Sub-Working Group merges the GitHub Pull Requests into the main branch of the repository maintained for the purpose of a particular milestone.

The AWG Technical Administration Sub-Working Group will set coding standards that will be approved by PRCG Participants and Tech Lab.

The PRCG and Tech Lab will release milestone(s) based on the agreed testing and release process being developed by the AWG Technical Administration Sub-Working Group.

4. Voting Process

Any action or decision properly brought before the AWG and PRCG, respectively, will be determined by a Majority Vote. In the case of the AWG, “Majority Vote of the AWG” shall mean more than half of the votes of the Qualified AWG Participants and Tech Lab, collectively, who attend the meeting at which such vote shall be taken. In the case of the PRCG, “Majority Vote of the PRCG” shall mean more than half of the votes of the Qualified PRCG Participants and Tech Lab, collectively, who attend the meeting at which such vote shall be taken. “Qualified,” in the case of either the AWG or the PRCG, shall mean an organization that is (i) a member of the Tech Lab and (ii) a member the applicable group whose organization has confirmed to Tech Lab in writing (e-mail acceptable) that it will commit, on an annual basis, at least the minimum number of engineering hours for such group’s activities as required by Tech Lab (with such hours to be determined by Tech Lab in consultation with the applicable group each calendar year). If any organization fails to so confirm in writing prior to the start of any calendar year and/or fails to commit the required hours by the end of a calendar year, it and its members shall lose all voting privileges in the applicable group for the next calendar year.

The following requirements shall apply to the AWG and PRCG voting process, respectively:

1). A “Notice of Vote” must be distributed to Qualified AWG Participants or Qualified PRCG Participants, as applicable, at least five (5) business days before the vote, unless unanimously waived by Qualified AWG Participants or Qualified PRCG Participants, as applicable;

2). Such Notice of Vote must be on the written agenda provided by Tech Lab in advance of a meeting, unless all Qualified participants are present at the meeting and waive such requirement;

3 ). In order to cast a vote, Qualified participants must be present at the meeting during which the topic subject to the vote is discussed and debated;

4). The manner of voting shall be a public vote at the meeting unless any Qualified participant requests that the vote be conducted via email, in which case the email votes shall be cast within three (3) business days following the meeting;

5). Prior to any vote, any Qualified participant may adjourn the vote for a period not to exceed three (3) business days by providing written notice to Tech Lab prior to the meeting or by providing oral notice at the meeting; provided, however, that any vote may postponed only one (1) time; and

6). A Qualified participant is barred from revoking its vote after being cast.

5. Appeals

Tech Lab recognizes participants’ right to impartial handling of procedural appeals regarding any action or inaction, whether administrative or technical in nature.

An AWG Participant or sub-working group participant may appeal any action or inaction of the AWG or sub-working group when a participant believes that such action or inaction is inconsistent with these Procedures.

All appeals will be heard by PRCG Participants and Tech Lab, unless any such participant has a conflict of interest, in which case recusal of such participant is mandatory. If any dispute arises concerning whether a conflict of interest exists, such dispute will be adjudicated by a Majority Vote of the PRCG (excluding any recused participants).

Participant appeals must be set forth in writing and submitted to Tech Lab for processing and submission to PRCG Participants and all affected participants. Participants affected by an appeal are permitted to provide a written submission that is responsive to such appeal within five (5) days of their receipt of the appeal. PRCG Participants and Tech Lab will hold a meeting or conference call within five (5) days after such five (5) day submission period to hear any oral presentation in support of or against such appeal. Qualified PRCG Participants and Tech Lab will render a final decision on the appeal within five (5) days of the meeting or conference call, unless they request additional information, in which case a revised schedule will be set by PRCG Participants and Tech Lab.