Cells: Organization (組織)

Cells アーキテクチャの主要な設計の一つは、グループ間の強固な分離です。 Organization ブループリント で説明されている Organization は、システムの残りの部分から分離された多数のグループを結合するための、妥当な UX を提供する方法です。

1. 定義

Cells は、単一の Organization に属するすべてのグループとプロジェクトを単一の Cell にのみ保存できることを要求します。なぜなら、Cell はローカルに保持するデータにのみアクセスでき、他の Cell からの情報を読み取る能力が非常に限られているためです。

Organization を持つ Cells は、Organization 間の強固な分離を要求します。

これは、Todo、プロジェクトを選択するドロップダウン、他の Issue やプロジェクトへの参照、または GitLab に存在するその他のソーシャル機能など、さまざまなユーザー向け機能に重大な影響をもたらします。 今日、これらの機能はシステム全体の任意のものを参照できました。 Organization の導入により、これは禁止されます。

この問題の定義は、Organization をシステムに強固に分離するために必要な工数と影響を明らかにすることを目指しています。影響を受ける機能とそのデータ処理フローを含みます。 目的は、実装時に一貫して、単一の Cell に存在する Organization 間のデータ漏洩を回避できるようにすることです。

2. 提案

Organization ブループリント を参照してください。