Demo-Steuerung
missing-dep
Was der Patch tut:
fuegt in src/routes.ts einen
import { format } from 'date-fns' ein und
setzt in package.json einen
Platzhalter-Eintrag
"_pendingDependency": "date-fns" innerhalb
der dependencies.
Warum CI scheitert:
npm ci bricht mit
EINVALIDPACKAGENAME ab, weil ein Package
mit _-Praefix nicht installierbar ist. Die
Pipeline kommt nicht bis zum Test-Schritt. Die
Korrektur besteht darin, den Platzhalter durch eine
echte date-fns-Dependency mit Caret-Pin zu
ersetzen und das Lockfile lokal nachzuziehen.
lint
Was der Patch tut:
fuegt in src/routes.ts die ungenutzte
Konstante const debugTag = 'demo-build'
ein.
Warum CI scheitert:
ESLint markiert die Variable mit der Regel
@typescript-eslint/no-unused-vars und exit
non-zero. Der Test- und Build-Schritt wuerde gruen sein,
die Pipeline scheitert nur am Lint-Schritt. Die
Korrektur entfernt entweder die Zeile oder benennt die
Variable mit fuehrendem Unterstrich um.
cache
Was der Patch tut:
fuegt uuid als Dependency in
package.json hinzu, ohne das
package-lock.json zu aktualisieren, und
pinnt zusaetzlich den Cache-Key in
.github/workflows/ci.yml auf den statischen
Wert npm-v1.
Warum CI scheitert:
npm ci bricht mit
EUSAGE ab und meldet
Missing: uuid from lock file. Selbst wenn
das Lockfile lokal nachgezogen wuerde, fingen
spaetere Laeufe weiterhin Probleme ein, weil der
statische Cache-Key nicht auf
hashFiles('package-lock.json') reagiert.
Die Korrektur stellt den Hash-basierten Cache-Key
wieder her und syncht das Lockfile.
test-fail (best-effort)
Was der Patch tut:
aendert in src/routes.ts die Rueckgabe der
greet()-Funktion von
"Hello, X!" auf
"Hi there, X.".
Warum CI scheitert:
die Vitest-Assertions in
tests/server.test.ts erwarten weiterhin
das alte Format, also schlagen sie fehl. Der Fehler
gehoert zu keiner der drei katalogisierten Klassen:
der Klassifikator setzt
failure_class = unknown und der Agent
wechselt in den Best-Effort-Pfad mit
agent:best-effort-Label und
## Best-effort warning im Review-Body.
Architektur
Aktiver Knoten pulsiert, durchlaufene Kanten fuellen sich nach Konzept §4.2.