Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Feature][config-ui] Manage teams, members and account mapping from the UI

オープン
#9,206 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 3 日以内に返信

@itaispiegel がすでに取り組んでいます。

2026年10月11日 から。

  • #9205 @itaispiegel による — オープン

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
45/100
issue の種類
機能追加
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
go
領域
backend, frontend

調査の方向性

Start by reading the config-ui pages and API client, then inspect the existing org plugin CSV endpoints for teams, users, and account mappings. Build a Teams page with three tabs that loads and saves each full CSV, including parent team selection, member team multi-select, and read-only account details with user mapping. Done when each tab round-trips its data and warns that saving replaces the full file; the issue names no files or tests.

索引モデルが issue の本文から書いたものです。

説明

Search before asking
  • I had searched in the issues and found no similar feature requirement.
Use case

As an engineering manager, I want to define my teams and their members in DevLake so that the team dashboards show real numbers.

DevLake ships several dashboards that slice metrics by team:

  • DORA (by Team)
  • Engineering Throughput and Cycle Time - Team View
  • GitHub Copilot Adoption by Team / by Team and User

All of them join through teams, team_users and user_accounts.

Description

Those three tables can only be populated through the org plugin's CSV endpoints:

Endpoint Columns
GET/PUT /plugins/org/teams.csv Id, Name, Alias, ParentId, SortingIndex
GET/PUT /plugins/org/users.csv Id, Name, Email, TeamIds (;-separated)
GET/PUT /plugins/org/user_account_mapping.csv every account, with its mapped UserId

config-ui references none of them. There is no page, button or upload control anywhere in the UI for team data, so the only way to set it up is to hand-craft a multipart upload:

curl -X PUT -F "[email protected]" http://localhost:8080/plugins/org/teams.csv

The practical effect is that on a fresh install every team dashboard renders blank, with no indication in the UI of what is missing or how to supply it. A new user who opens "DORA (by Team)" sees empty panels and no path forward. It is also easy to mistake the ?fake_data=true sample rows ("Tyrone K. Cummings") for the dashboards being built on placeholder data.

Proposed solution

A Teams page in config-ui with three tabs, built on the endpoints that already exist — no backend change:

  • Teams — editable table; parent team chosen from a select of the other teams rather than typed as a raw id.
  • Members — editable table; team membership as a multi-select that serialises back to the ;-delimited TeamIds cell.
  • Account Mapping — every collected tool account with identity columns read-only and a select to map it to a member. Accounts come from data collection, so rows are not addable or removable here.

Each tab round-trips a whole CSV file, which matches the endpoints' existing delete-all-then-save behaviour; the page should say so, since a save overwrites rows added elsewhere since it loaded.

Possible follow-up

Per-row REST CRUD on the org plugin (POST/PATCH/DELETE for a single team or user) would remove the full-file replace and its clobbering window. That is a backend change and seems worth keeping separate from the UI work.

Related issues

None found.

Are you willing to submit a PR?
  • Yes I am willing to submit a PR!
Code of Conduct
主要言語
Go
スター
3.2k
フォーク
819
平均マージ
3日 6時間
マージ済み PR(30日)
40

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

  • Dockerfile・Docker Compose ファイルなし
  • プルリクエストのテンプレートあり
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

apache/devlake のほかの issue

apache/devlake の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。