Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

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

Abierto
#9,206 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 3 días

@itaispiegel ya está trabajando en esto.

Desde el 11/10/2026.

  • #9205 de @itaispiegel — abierto

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
45/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
go
Área
backend, frontend

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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
Lenguaje dominante
Go
Estrellas
3.2k
Forks
819
Merge medio
3 d 6 h
PR fusionados (30 d)
40

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

  • Sin Dockerfile ni archivo de Docker Compose
  • Tiene una plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de apache/devlake

Todos los issues de apache/devlake

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.