feat(git): offene PRs und Issues, CI-Status und Commit-Aktivitaet
Bisher standen nur Zahlen da. Jetzt kommen die Inhalte mit. Pull Requests und Issues: bis zu 50 offene je Liste, mit Nummer, Titel, Autor, Alter, Labels und Link. Bei GitHub und Gitea liefert der Issue-Endpunkt auch Pull Requests mit - die werden herausgefiltert. CI-Status des letzten Laufs auf dem Default-Branch: - GitHub ueber actions/runs; dort sind Lauf-Status und Ergebnis getrennt und werden auf einen Wert zusammengefuehrt - GitLab ueber pipelines - Gitea ueber den kombinierten Commit-Status. Das deckt Gitea Actions und externe Systeme wie Woodpecker gleichermassen ab - ein reiner Actions-Endpunkt existiert auf aelteren Instanzen nicht. Commit-Aktivitaet als Balkenreihe. Berechnet aus den ohnehin geholten Commits (jetzt 100 statt 15, angezeigt bleiben 15) statt ueber eigene Statistik-Endpunkte: die gibt es nicht bei allen drei Systemen, und bei GitHub antworten sie beim ersten Aufruf mit 202 und ohne Daten. Beim Testen gegen gitlab-runner fiel auf, dass alle 100 Commits in die letzten 30 Tage fielen - die frueheren Tage haetten faelschlich Null gezeigt, obwohl wir ueber sie nichts wissen. Die Kurve wird deshalb auf den tatsaechlich belegten Zeitraum gekuerzt. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "RepoSnapshot" ADD COLUMN "ciBranch" TEXT,
|
||||
ADD COLUMN "ciFinishedAt" TIMESTAMP(3),
|
||||
ADD COLUMN "ciName" TEXT,
|
||||
ADD COLUMN "ciState" TEXT,
|
||||
ADD COLUMN "ciUrl" TEXT,
|
||||
ADD COLUMN "commitActivity" JSONB NOT NULL DEFAULT '[]',
|
||||
ADD COLUMN "issues" JSONB NOT NULL DEFAULT '[]',
|
||||
ADD COLUMN "pullRequests" JSONB NOT NULL DEFAULT '[]';
|
||||
+17
-5
@@ -298,11 +298,23 @@ model RepoSnapshot {
|
||||
|
||||
/// Rohdaten der Listen – bewusst als JSON, damit providerspezifische
|
||||
/// Zusatzfelder nicht verloren gehen.
|
||||
branches Json @default("[]")
|
||||
tags Json @default("[]")
|
||||
commits Json @default("[]")
|
||||
releases Json @default("[]")
|
||||
languages Json @default("{}")
|
||||
branches Json @default("[]")
|
||||
tags Json @default("[]")
|
||||
commits Json @default("[]")
|
||||
releases Json @default("[]")
|
||||
languages Json @default("{}")
|
||||
pullRequests Json @default("[]")
|
||||
issues Json @default("[]")
|
||||
/// Commits je Tag der letzten 30 Tage, aeltester zuerst.
|
||||
commitActivity Json @default("[]")
|
||||
|
||||
// ── Letzter CI-Lauf auf dem Default-Branch ─────────────────
|
||||
/// success | failure | running | pending | cancelled
|
||||
ciState String?
|
||||
ciName String?
|
||||
ciBranch String?
|
||||
ciUrl String?
|
||||
ciFinishedAt DateTime?
|
||||
|
||||
pushedAt DateTime?
|
||||
fetchedAt DateTime @default(now())
|
||||
|
||||
Reference in New Issue
Block a user