Harte Regeln (Ampel-Pflicht, Spec-Stopp, deploy.sh-only, keine
CI / ui (push) Failing after 13m34s
CI / api-und-worker (push) Failing after 14m28s

erfundenen APIs) + idempotentes deploy.sh

Lehren aus dem Review 22.07.: stille MakeMKV->HandBrake-Abweichung,
Doppel-Anlage auf der VM, halluzinierte Celery/abcde-Schnittstellen.
This commit is contained in:
Hitonabi
2026-07-22 18:59:53 +02:00
parent be7f615a4b
commit 57bda55af4
2 changed files with 33 additions and 0 deletions
+18
View File
@@ -7,6 +7,24 @@
**3. Beweisen statt behaupten.** Testen, was gebaut wurde. Keine "es sollte funktionieren"-Commits. **3. Beweisen statt behaupten.** Testen, was gebaut wurde. Keine "es sollte funktionieren"-Commits.
**4. Deutsch-Nicht-Entwickler.** Der Commander liest alles — Variablennamen auf Englisch, aber Kommentare und Docs auf Deutsch. **4. Deutsch-Nicht-Entwickler.** Der Commander liest alles — Variablennamen auf Englisch, aber Kommentare und Docs auf Deutsch.
## ⛔ HARTE Regeln (mechanisch geprüft — seit 22.07.2026)
**A. Die CI-Ampel muss GRÜN sein, bevor irgendetwas „fertig" heißt.**
`.gitea/workflows/ci.yml` läuft bei jedem Push auf dem Gitea-Runner (NICHT löschen, NICHT
abschwächen). Keine Tests = rot = nicht fertig. Der Commander liest die Ampel, nicht den Code.
**B. Abweichung vom KONZEPT = STOPP + fragen.** Anderes Werkzeug, andere Bibliothek,
gestrichenes Muss-Feature → erst den Commander fragen, NIE still ersetzen.
(Vorgefallen: Muss-Feature „MakeMKV lossless" wurde still durch lossy HandBrake ersetzt.)
**C. Deployment NUR über `./deploy.sh`.** Idempotent, EIN fester Compose-Projektname
(`rippy`), EIN Pfad (`~/projects/rippy`). Nie freihändig per SSH auf der VM bauen.
(Vorgefallen: Doppel-Anlage `Rippy` + `rippy` auf der arcane-VM.)
**D. Externe Schnittstellen NIE aus dem Kopf.** Vor Nutzung fremder CLI-Flags oder
Bibliotheks-APIs: `--help`/Doku prüfen und die Fundstelle im Commit nennen.
(Vorgefallen: erfundene Celery-Methode `self.send_task`, erfundene abcde-Flags.)
## Workflow ## Workflow
1. **Read:** KONZEPT.md + ROADMAP.md lesen. Verstehen, welche Etappe dran ist. 1. **Read:** KONZEPT.md + ROADMAP.md lesen. Verstehen, welche Etappe dran ist.
+15
View File
@@ -0,0 +1,15 @@
#!/usr/bin/env bash
# EINZIGER Deploy-Weg für Rippy (Regel C in AGENTS.md, seit 22.07.2026).
# Idempotent: EIN Compose-Projektname (rippy), EIN Pfad auf der VM.
# Nie freihändig per SSH bauen — genau daraus entstand die Doppel-Anlage
# Rippy/rippy am 21.07.
set -euo pipefail
VM="arcane@192.168.178.162"
PFAD="~/projects/rippy"
DIENST="${1:-}" # optional: nur einen Dienst neu bauen, z.B. ./deploy.sh rippy-ui
ssh "$VM" "cd $PFAD \
&& git pull --ff-only origin main \
&& docker compose -p rippy up -d --build $DIENST \
&& docker compose -p rippy ps --format 'table {{.Name}}\t{{.Status}}'"