Status-Seite wird ein Dashboard
Deploy / check (push) Has been cancelled
Deploy / deploy (push) Has been cancelled

Statt sieben flacher Kacheln jetzt: Kopfzeile mit Bot-Identitaet und Laufzeit,
vier Kennzahlen mit Nebenzeile, Aktivitaetsverlauf und Modul-Zustand pro
Bereich. Die Bereichs-Zeilen sind klickbar und springen in den Modul-Ueberblick.

Fast alles war schon da und musste nur zusammengestellt werden. Neu am Server
sind zwei Zeitstempel in archiveStats(): lastDevlog und lastCommit. Reine
Zaehler sagen nicht, ob noch etwas passiert — "142 Devlogs, zuletzt vor zwei
Tagen" schon.

Der Mitglieder-Zuwachs kommt aus joins/leaves der Tagesdaten, der Verlauf
fuellt fehlende Tage mit 0 statt sie wegzulassen, sonst staucht er sich.

Beim Bauen gefunden: die Spalte in commits heisst committed_at, nicht ts. Da
better-sqlite3 beim Vorbereiten sofort auswertet, waere der Bot beim Start
abgestuerzt. Beide neuen Abfragen gegen das echte Schema geprueft.

Dazu ein Dev-Server-Eintrag in launch.json: der Build ist minifiziert, im
Fehlerfall steht dort nur "at bp". Mit dem Dev-Server kommt der Komponenten-
und Zeilenverweis — genau das hat den Weg zur Ursache abgekuerzt.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-01 04:19:51 +02:00
co-authored by Claude Fable 5
parent 1e2d295665
commit fb7ee78548
4 changed files with 219 additions and 16 deletions
+6
View File
@@ -1127,11 +1127,17 @@ export function weeklyStats() {
return { perDay, topRepos, devlogs };
}
const lastDevlogStmt = db.prepare('SELECT max(posted_at) AS ts FROM devlogs');
const lastCommitStmt = db.prepare('SELECT max(committed_at) AS ts FROM commits');
/** Statistiken fürs Status-Panel der Settings-Seite */
export function archiveStats() {
return {
devlogs: countDevlogsStmt.get().n,
commits: countCommitsStmt.get().n,
dbSizeBytes: statSync(dbFile).size,
// Reine Zahlen sagen nicht, ob noch etwas passiert — das Datum schon
lastDevlog: lastDevlogStmt.get().ts ?? null,
lastCommit: lastCommitStmt.get().ts ?? null,
};
}