Fuchsia 協作者角色

總覽

本文件定義了促成以下項目的相關角色: Fuchsia 專案。

原則

Fuchsia 專案中的角色致力體現下列原則:

  • 資訊公開。我們對於職務和需求公開透明且公開透明。
  • 多元包容。Fuchsia 可讓任何人在專案中貢獻內容 我們相信許多開放原始碼的貢獻 就讓福希西亞人受惠
  • 責任。如果使用者沒有這項權限,系統可能會撤銷角色和權限 符合相關規定

角色

以下是與 Fuchsia 專案相關聯的協作者角色:

成員

參與專案的人員,只要為程式碼或 說明文件,並同意 Google Developers 的協作者授權協議

職責

成員有責任根據 Fuchsia 行為準則

加入會員

如要成為會員,您必須執行下列操作:

修訂者

修訂版本是具有寫入權限的人員 Fuchsia 存放區。修訂者可以提交 自己的 Gerrit 變更,或對其他成員進行 Gerrit 變更。

委員會不僅是能夠進行變更的人員 證明自己能與 Fuchsia 社群。協作活動例子包括但不限於 改為:

  • 尋找最知識豐富的人員來檢查程式碼變更。
  • 提供經過完整測試的優質程式碼。
  • 修正程式碼或測試中的錯誤。

成員可以成為有不同貢獻內容的委員會。適用對象 例如,處理文件或工具鍊的人員即可滿足 提供高品質的說明文件或設定,成為委員會 並不符合「傳統」上經過完善測試的程式碼。

如要提交 Gerrit 變更,修訂者必須是擁有者 ,或取得受影響檔案擁有者的核准。

職責

提交者必須負責下列事項:

  • 確認修訂者提交給 Fuchsia 的程式碼是否經過測試 測試用評分量表
  • 確認修訂版本提交到 Fuchsia 的程式碼符合測試 最佳做法

成為委員會

如要成為修訂版本,您必須執行下列操作:

  • 為專案提供 10 個重要修補程式,展現出 撰寫經過完整測試的優質程式碼
  • 獲得已審查您程式碼的現任委員會提名。
  • 由已審查您程式碼的其他兩個委員會提供支援。
  • 確保沒有遭任何修訂版本封鎖您的提名。

目前的委員會將傳送電子郵件給您,方法是將內含 下列資訊。請勿將提名電子郵件寄給提名者。

  • 您的全名。
  • 你的電子郵件地址。
  • 說明您為何應成為修訂版本。
  • 內嵌含有修補程式的修訂版本連結清單 (約前 10 個)。

另外兩個委員會需要接受你的提名。如果 5 個工作日 (美國) 中沒有任何物體 您是委員會如果有任何人或需要更多資訊,委員會會討論並通常 遇到共識 (在 5 個工作日內)。如果問題無法解決,則由 目前的修訂版本。

大功告成!您無須採取其他行動。修訂版本會回到 做出決定

在最糟的情況下,這可能會拖慢兩週的時間。繼續編寫修補程式!即使是極少數的情況 拒絕提名失敗時,推拒說詞通常難以解決,例如「補充修補程式」或 「不夠熟悉這個人的工作內容。」

獲得現有委員會的核准者核准後,Fchsia 社群管理員會將您新增至 Committers@fuchsia.dev 與我們聯絡,並提供有關提交貢獻內容的額外資訊 以外部貢獻者的身分參與

試用工作存取權

如果您提供修補程式,但尚未提供修訂版本,您可能會希望在 直接嘗試伺服器,不要請修訂版本或審查人員為您代勞。

取得工作存取權的程序如下:

  • 請您的合作委員會 (例如:經常審查人員) 傳送電子郵件至 Committers@fuchsia.dev 提名你試用工作機會。
  • 您必須提供電子郵件地址,並至少簡短說明您希望取得存取權的原因。
  • 您也可以一併提供名稱和公司的聯盟關係 (如有)。
  • 確實登陸某些修補程式,是非常實用的做法,但並非絕對必要。
  • 如果兩個 (美國) 工作日內沒有任何物體,即獲準存取。這可能需要 再過幾天,該設定就會套用至所有系統。

擁有者

擁有者負責管理 Fuchsia 專案中的檔案或目錄, 能全面瞭解子樹狀結構中的程式碼。擁有者已列於 OWNERS 個檔案。擁有者檔案以外的目錄或檔案 擁有者與修訂者俱備相同權限。

建議修訂者將 OWNERS 檔案保持在最新狀態。

職責

除了擔任委員會與成員的責任外,擁有者也 負責下列事項:

  • 提名其他擁有者。
  • 核准或移除其他擁有者。
  • 提供優質評論和設計意見回饋。
  • 核准子樹狀結構中的程式碼變更。

成為擁有者

如要成為擁有者,您必須執行下列操作:

  • 成為修訂者
  • 針對受影響的子樹狀結構提交大量的基本變更。
  • 提供優質審查和程式碼設計意見回饋。
  • 及時審查程式碼。
  • 自我提名或由其他委員會提名。
    • 如要自主提名,請提交 Gerrit 變更 ,將自己新增至所需存放區的 OWNERS 檔案。 目前的擁有者將評估您的變更,並選擇接受或拒絕您的 請求。

全球核准者

全球核准者是 owner-override@fuchsia.dev 的成員 群組。全域核准者可以在以下位置叫用擁有者覆寫位元: Gerrit 不僅拋棄一項變更的 OWNERS 要求,

全球核准者仍可提供擁有者覆寫 +1 的權限 並不需要因應大規模的變動 對整個 Fuchsia 程式碼集的詳盡知識。這是正常情況 全球核准主要用於全球變更 對教師而言主要是系統化的機械運算 程式碼集如果企業未確認 必須立即變更才能穩定樹狀結構,例如使用 CL 來停用 測試或複雜還原程序

Fuchsia Engineering Council 計畫的成員目前在全球範圍內 和少數審查者以及負責時區的審查人員 沒有 FEC 成員會遇到下列情況的修訂版本 建議程式碼擁有者無法提供評論涵蓋範圍,建議先從這裡著手 傳送變更,更新本機 OWNERS 檔案,或新增 包括特定類型檔案 (例如 **/BUILD.gn**/*.md。倘若這種情況已證明不足 修訂者應傳送電子郵件至擁有者覆寫@fuchsia.dev 進行討論 問題。

職責

除了成員、委員會和負責人的責任外,全球 核准者有責任的工作如下:

  • 使用 Gerrit 中的擁有者覆寫 +1。
  • 針對大規模變更即時提供審查。

程式碼審查動作

您可以提供的程式碼審查動作類型,視您在內部的角色而定 Fuchsia 專案。

啟動 CQ 模擬測試

CQ Dry Run 會根據修訂版本佇列中可用的測試執行變更。 委員會、擁有者和全球核准者可以啟動 CQ 模擬測試。

評分程式碼審查

程式碼審查

提出程式碼審查要求後,審查人員可以為變更評分。

審查人員可使用 -2、-1、0、+12 的分數來為您的變更加上標籤。 如要進一步瞭解查看標籤定義,請參閱 Gerrit Code Review - 查看標籤

委員會、擁有者和全球核准者都可以為程式碼審查評分,但只有 全域核准者或存放區擁有者可以提供 +2

提交已核准的變更內容

需要程式碼審查標籤 +2 才能提交變更。A 罩杯 Code-Review Label +2 分數只能由存放區擁有者或 全球核准者。

提交變更時,變更會移至修訂版本佇列 (CQ)。 修訂佇列會驗證、修訂並合併對主要分支版本的變更。

角色矩陣

下表摘要說明每個 Fuchsia 貢獻者角色可採取的動作 執行。

角色 建立變更 程式碼-審查其他委員會做出的變更 提供程式碼審查 +2 提供 CQ+1 (CQ 模擬測試) 提交已核准的顧客資證明變更申請 新增或移除擁有者
成員
修訂者
擁有者 (不在主樹狀結構外)
擁有者 (在子樹狀結構中)
全球核准者

改變的流程

下圖說明變更發生後的大致階段。 。

alt_text

特殊角色

Fuchsia 存放區中的區域可能有獨特需求 定義各自的角色和責任 。

API 審查者

API 審查人員必須對品質和長期關係負責 健康狀態 Fuchsia API 介面 ,直接在 Google Cloud 控制台實際操作。 API 審查人員統整形成 API 議會。

凡是修改 Fuchsia API 介面的變更,都必須收到「API-Review+1」。 。Code-Review+2

進一步瞭解 API 審查人員的責任以及 API 方式 委員會負責營運,請參閱 API Council Charter

API 審查者成員資格

如要成為 API 審查人員,您必須執行下列操作:

  • 成為修訂者
  • 展現 API 品質和長期健康狀態的良好判斷依據。
  • 由 Fuchsia 專案的功能領域指派,如 API Council Charter 所示。

工程委員會成員

Fuchsia Eng Council 是一群負責任 AI 技術的 為 Fuchsia 提供堅實的技術願景。工程委員會主要是 運作環境為委任和計分、通訊工程標準 然後在整個社群中檢視並評分 專案貢獻者的具體工程提案。

工程委員會會員

工程委員會沒有預定人數。但 為了提供一致的技術願景,議會很少接受教育 成員。工程委員會成員擔任 專案。詳情請參閱「會員資格」一文 。

撤銷權限

當貢獻者不再符合要求時,他們的角色和 也可撤銷相應的權限

情境

使用者撤銷權限的情境示例,包括但不限於: 包括:

  • 並非依據《Fuchsia 行為準則》。
  • 委員會反覆忽略程式碼中的可測試性最佳做法 評論。
  • 擁有者禁止使用者要求審查程式碼。
  • 擁有者未回應審查要求。

程序

在 Fuchsia 專案中撤銷個人角色的程序 包括下列步驟:

  • 擁有者推薦了 community-managers@fuchsia.dev, 撤銷他人的角色,並具體說明原因。撤銷擁有者角色 必須由同一子樹狀結構的擁有者核准 或更高級別。
    • 擁有者不再主動撤銷擁有權時,經常會撤銷擁有權 提供給其他使用者的檔案或目錄

撤銷「修訂版本」角色是相當罕見的操作,而且需要經過 管理機構。您應邀請社群管理員參與 撤銷修訂版本角色。

常見問題

Fuchsia 成員對於 程式碼審查:

  • 誰可以提供程式碼審查 +1
    • 所有委員會、擁有者和全球核准者。程式碼審查 +1 代表 「我看起來不錯」,但單獨 +1 無法提交。 按下 +2 按鈕即可由他人核准變更。如要進一步瞭解 查看標籤定義,請參閱「Gerrit Code Review - Review Labels」一文。
  • Fuchsia 原始碼的特定部分是否有不同的規定?
  • 我需要 API 審查 +1 嗎?
    • 影響 Fuchsia API 介面的變更需要 API-Review +1, 程式碼審查工具只會在需要時顯示「API 審查」標記。