API ビジョン
GitLab API ビジョンワーキンググループは、現在の API を改善し、その将来の発展を定義することを目的としています。
属性
| プロパティ | 値 |
|---|---|
| 作成日 | 2022-02-07 |
| 終了日 | 2023-11-17 |
| Slack | #wg_api_vision(社内からのみアクセス可能) |
| Google ドキュメント | ワーキンググループアジェンダ(社内からのみアクセス可能) |
| Issue ボード | Issue ボード |
| 概要 & ステータス | 以下の終了基準を参照 |
目標
GitLab API ビジョンワーキンググループは、現在の API を改善し、その将来の発展を定義することを目的としています。
概要
REST API と GraphQL API の間に一貫したビューがありません。GraphQL API が GitLab とプログラム的にやり取りする主要な手段であると規定していますが、この基準に従わないことがよくあります。両方の API は異なる機能セットをカバーしていますが、どちらも機能的に完全ではありません。
目標
以下は議論したいトピックのリストです:
- 責任、DRI(直接責任者)、技術専門家。現在、
Manage:Integrationsグループが API の DRI ですが、@graphql-expertsグループも存在します。 - GitLab API の全般的なビジョン:
- REST / GraphQL API の一貫性
- REST ファースト対 GraphQL ファースト対別のアプローチ
- API のレビュー:
- 全般的なアーキテクチャ
- 権限とスコープ
- 機能カバレッジ
- パフォーマンス
- テスト:
- カバレッジ
- 自動テスト
- ツール(例:Postman コレクション)
- API 廃止ライフサイクルと戦略:
- REST v5 API またはさらなるイテレーション
- GraphQL 廃止プロセス
- OpenAPI 仕様を含む API 標準
- ドキュメント:
- 現在のドキュメントの改善
- 初回 API ユーザーエクスペリエンスのレビュー
- ドキュメントの自動化
- すべてのパブリック及び内部 API の完全なカタログ
- 学習とコントリビューション:
- コントリビュータードキュメントのレビュー
- チームメンバー向け(特に GraphQL について)の学習パスの作成
終了基準
以下のテーブルにはワーキンググループのすべての終了基準が記載されています。これがトップレベルエピックです。
| # | 完了日 | 進捗 | DRI | 基準 |
|---|---|---|---|---|
| 1 | 未定 | 10% | @g.hickman | 将来数年間の GitLab API のビジョンを定義する |
| 2 | 未定 | 0% | @m_gill | 前進するための一貫した開発戦略の基盤を整備する |
| 3 | 未定 | 0% | 次世代 API に必要な作業を把握する | |
| 4 | 未定 | 15% | @.luke | API 廃止とライフサイクルポリシー |
| 5 | 未定 | 15% | 未定 | API ドキュメントを自動生成するコンセプトとロードマップの作成 |
| 6 | 未定 | 5% | 未定 | 適切なチェックと監視を備えた最低限のパフォーマンスと安定性レベルの定義 |
| 7 | 未定 | 堅牢な Open API |
ロールと責任
| ワーキンググループのロール | ユーザー名 | 担当者 | 役職 |
|---|---|---|---|
| エグゼクティブステークホルダー | @timzallmann | Tim Zallmann | シニアエンジニアリングディレクター、Dev |
| ファシリテーター | @arturoherrero | Arturo Herrero | エンジニアリングマネージャー、Manage:Integrations |
| ファシリテーター | @g.hickman | Grant Hickman | シニアプロダクトマネージャー、Manage:Integrations |
| ファンクショナルリード | @.luke | Luke Duncalfe | シニアバックエンドエンジニア、Manage:Integrations |
| ファンクショナルリード | @axil | Achilleas Pipinellis | シニアテクニカルライター、Enablement |
| ファンクショナルリード | @Andysoiron | Andy Soiron | シニアバックエンドエンジニア、Manage:Integrations |
| メンバー | @grzesiek | Grzegorz Bizon | プリンシパルエンジニア、Verify |
| メンバー | @f_caplette | Frédéric Caplette | シニアフロントエンドエンジニア、Verify:Pipeline Authoring |
| メンバー | @bmarjanovic | Bojan Marjanovic | シニアバックエンドエンジニア、Manage:Integrations |
| メンバー | @kerrizor | Kerri Miller | シニアバックエンドエンジニア、Create:Code Review |
| メンバー | @lauraX | Laura Montemayor | バックエンドエンジニア、Verify:Pipeline Authoring |
| メンバー | @nagyv-gitlab | Viktor Nagy | シニアプロダクトマネージャー、Configure |
| メンバー | @kpaizee | Kati Paizee | シニアテクニカルライター、Growth and Ecosystem |
| メンバー | @fabiopitino | Fabio Pitino | スタッフバックエンドエンジニア、Verify:Pipeline Execution |
| メンバー | @dstull | Doug Stull | スタッフフルスタックエンジニア、Growth:Expansion |
| メンバー | @ntepluhina | Natalia Tepluhina | スタッフフロントエンドエンジニア、Plan:Project Management |
| メンバー | @avielle | Avielle Wolfe | バックエンドエンジニア、Verify:Pipeline Authoring |
