Zum Inhalt springen

Meldungen — Bearbeiter & Zuweisung

Ein Ticket hat neben dem Melder (wer gemeldet hat) einen Bearbeiter (wer konkret zuständig ist). Zuweisbar sind Personen aus einer in der Ops-App gepflegten Liste; ein Eintrag kann optional mit einem realen Konto verbunden sein. Die Zuweisung ist in der Ops-Konsole und über den MCP nutzbar.

Status: umgesetzt (Phase 1–3, v0.345.0–v0.347.0, Migrationen 0151–0153; genau ein Bearbeiter je Ticket). Die vollständige Planung liegt intern unter docs-internal/meldungen-zuweisung-design.md.

Feld Bedeutung
reporter_id wer gemeldet hat (Melder)
taken_over_at dass ein Betreiber übernommen hat
assignee_id wer konkret zuständig ist (Bearbeiter, neu)

Die drei bestehen nebeneinander und werden nicht vermischt.

Eine eigene Roster-Tabelle statt eines direkten Nutzer-Bezugs — so lassen sich auch Personen ohne Konto zuweisen, die Verbindung zu einem echten User bleibt optional:

  • feedback_assignees — die pflegbare Bearbeiter-Liste: name, optional user_id (Verbindung zum realen Konto), optional github_login, active (deaktivieren statt löschen).
  • feedback_tickets.assignee_id → feedback_assignees(id) (on delete set null).

Genau ein Bearbeiter je Ticket. Zugriff auf den Roster: nur Betreiber (is_operator()). Zuweisen darf nur ein Betreiber, nie der Melder — abgesichert im Ticket-Guard, der Umzuweisungen auch in der Änderungshistorie protokolliert.

  • Bearbeiter-Dropdown im Ticket-Detail (neben Status/Priorität/Bereich) und ein Panel neben „Melder“.
  • Bearbeiter-Kürzel in der Listenzeile (neben dem Melder-Kürzel).
  • Filter „Mir zugewiesen“ / „Zugewiesen an …“ / „Ohne Bearbeiter“ und eine Kachel „Mir zugewiesen“.
  • Roster-Pflege als eigenes Ops-Modul (Personen anlegen/umbenennen/deaktivieren, verknüpften User und GitHub-Login setzen).
  • feedback_assignees — die zuweisbaren Personen auflisten.
  • feedback_assign(ref, assignee, note?) — zuweisen/entziehen (Name oder ID, null entfernt).
  • feedback_get liefert den Bearbeiter mit; feedback_list/feedback_inbox filtern nach assignee=me / assignee=none / konkreter Person.

So kann die KI (als Roster-Mitglied) Tickets self-assignen und per Umzuweisung an einen Menschen übergeben.

Heute werden GitHub-Assignees nur importiert und read-only angezeigt. Geplant:

  • Export: beim Anlegen/Ändern eines Issues den github_login des Bearbeiters als GitHub-Assignee setzen (Voraussetzung: Repo-Collaborator, sonst ignoriert GitHub ihn still).
  • Import-Mapping: eingehende GitHub-Assignees über github_login auf einen Roster-Eintrag abbilden.
  1. Kern: Roster + Zuweisung + Ops-UI + MCP.
  2. GitHub: Export-/Rücksync-Assignee, Import-Mapping.
  3. Komfort: Benachrichtigung an den verknüpften User, „Mir zugewiesen“-Sicht außerhalb der Ops-App, Auto-Zuweisung nach Bereich, Auslastungs-Metriken.