--- description: "ship – Commit, Build-Test, Push. Erstellt einen Conventional-Commits-konformen Commit, führt Gradle-Tests aus, pusht auf origin. Auftretende Build- oder Test-Fehler werden direkt behoben." name: "ship" agent: agent tools: [read, search, execute/runInTerminal, execute/sendToTerminal, execute/getTerminalOutput, edit] --- Lies **zuerst** die Git-Skill-Datei `.github/skills/git/SKILL.md` vollständig mit `read_file`. Führe danach den vollständigen Ship-Workflow durch: --- ## Schritt 1 – Aufräumen Vor dem Commit: temporäre und nicht mehr benötigte Dateien identifizieren. 1. Prüfe `git status --short` auf untracked Dateien (`??`), die offensichtlich temporär sind. 2. **Keine produktiven Dateien entfernen** – nur offensichtlichen Ballast. --- ## Schritt 2 – Build & Test (Quality Gate) ``` ./gradlew assembleDebug test ``` Werte das Ergebnis aus: - **BUILD SUCCESSFUL** → weiter mit Schritt 3. - **Fehler** → weiter mit Schritt 5. --- ## Schritt 3 – Commit 1. Ermittle mit `git status` und `git diff --stat HEAD` alle Änderungen. 2. Stage alle relevanten Änderungen mit `git add` (Build-Artefakte wie `build/`, `.gradle/` ausschließen). 3. Erstelle eine Commit-Message nach **Conventional Commits** (Typ, Kurzbeschreibung ≤ 72 Zeichen, Body mit „was und warum"). 4. Führe `git commit` aus. --- ## Schritt 4 – Push (Quality Gate) 1. Zeige dem User kurz: welche Dateien geändert + Commit-Message. 2. Führe `git push` aus. --- ## Schritt 5 – Fehler beheben (nur bei Build/Test-Fehler) 1. Analysiere die Fehlerausgabe. 2. Unterscheide: - **Compilerfehler** → betroffene Quelldatei lesen, korrigieren. - **Test-Fehler** → Ursache im Produktions- oder Testcode beheben. - **Lint-Fehler** → Zeile korrigieren. 3. Nach dem Fix erneut mit Schritt 2 fortfahren. 4. Maximal **3 Korrekturzyklen** – danach User informieren. --- ## Abschluss Berichte kurz: - Commit-Hash und -Message - Build/Test-Status (✅ / ❌) - Push-Status (✅ / ❌)