Code-Pruefung ans Deployment haengen, nicht nur an den Commit
User-Frage "wird die Pipeline bei jedem Deployment ausgefuehrt?". Antwort war NEIN: git commit check_nfalle + pytest (Hook installiert) tools/deploy.py prueft nur den LAUFENDEN Server, nicht den Code restart_server.bat gar nichts Aufgabe OilTradingServer -> start_server_hidden.vbs gar nichts Commit und Deployment sind zwei Ereignisse und fallen beliebig auseinander: eine geaenderte, nie committete Datei ging ueber restart_server.bat ungeprueft live; nach einem Reboot startet die Aufgabe, was auf der Platte liegt. "Der Server kommt hoch" ist kein Ersatz: die beiden log.-NameError in core/trader.py sassen MONATE in except-Zweigen (einer seit dem Initial-Commit), und der Server startete jedes Mal sauber. deploy.py bekommt Schritt 0: check_nfalle + pytest VOR dem Kill, bei Rot Abbruch mit Rueckgabecode 1. Die Reihenfolge ist der Punkt - ein laufender, funktionierender Server darf fuer kaputten Code nicht abgeschossen werden. Notausgang --ohne-pruefung. Beide Richtungen verifiziert: mit eingebautem F821-Fehler -> ABBRUCH, Exit 1, Server-PID vorher/nachher identisch (20892), der Prozess wurde nachweislich nicht angefasst. Ohne Fehler laeuft es durch. BEWUSST NICHT in restart_server.bat und die Aufgabenplanung - das sind WIEDERANLAUF-Pfade. Wuerde ein fehlschlagender Test dort den Start verhindern, staende eine offene Position ohne Trailing, Time-Stop und Notfall-Stop da, nur mit dem Broker-SL. Eine Pruefung, die den Bot offline laesst, ist schlimmer als der Fehler, den sie sucht. Der Batch gibt stattdessen einen Hinweis aus und verweist auf deploy.py. Regel: absichtliches Deployment blockieren, Wiederanlauf niemals. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
3f1f19087d
commit
0ab79f1876
@@ -4911,6 +4911,42 @@ Modell schliesst keine Trades.
|
||||
„die Rangfolge ist kaputt" ist **nicht** belegt; belegt ist nur die
|
||||
Basisraten-/Kalibrierungslücke.
|
||||
|
||||
## ⚠⚠ DIE PRÜFUNG HING AM COMMIT, NICHT AM DEPLOYMENT — behoben 2026-08-07
|
||||
|
||||
User-Frage „wird die Pipeline bei jedem Deployment ausgeführt?". **Antwort war
|
||||
NEIN**, und die Lücke war größer als sie aussah:
|
||||
| Weg zum Deployment | Prüfung vorher |
|
||||
|---|---|
|
||||
| `git commit` | ✅ `check_nfalle` + `pytest` (Hook installiert) |
|
||||
| `tools/deploy.py` | ⚠ prüfte nur den **laufenden Server** — nicht den Code |
|
||||
| `restart_server.bat` | ❌ gar nichts |
|
||||
| Aufgabe `OilTradingServer` (Logon/Reboot) → `start_server_hidden.vbs` | ❌ gar nichts |
|
||||
**Commit und Deployment sind zwei Ereignisse, und sie fallen beliebig
|
||||
auseinander:** eine geänderte, nie committete Datei ging über
|
||||
`restart_server.bat` ungeprüft live; nach einem Reboot startet die Aufgabe, was
|
||||
auf der Platte liegt.
|
||||
⚠ **„Der Server kommt hoch" ist KEIN Ersatz für die Prüfung** — die beiden
|
||||
`log.`-`NameError` in `core/trader.py` sassen **Monate** in `except`-Zweigen
|
||||
(einer seit dem Initial-Commit), und der Server startete jedes Mal sauber.
|
||||
|
||||
✅ **GEBAUT: `tools/deploy.py` bekommt Schritt 0** — `check_nfalle` + `pytest`
|
||||
**VOR** dem Kill; bei Rot Abbruch mit Rückgabecode 1. Die Reihenfolge ist der
|
||||
Punkt: ein laufender, funktionierender Server darf für kaputten Code nicht
|
||||
abgeschossen werden. Notausgang `--ohne-pruefung` (Philosophie wie
|
||||
`git commit --no-verify`).
|
||||
✅ **Beide Richtungen verifiziert:** mit eingebautem `F821`-Fehler → „❌ ABBRUCH",
|
||||
Exit **1**, und die **Server-PID vorher/nachher identisch** (20892) — der
|
||||
laufende Prozess wurde nachweislich nicht angefasst; ohne Fehler läuft es durch.
|
||||
|
||||
⚠⚠ **BEWUSST NICHT in `restart_server.bat` und die Aufgabenplanung** — das ist
|
||||
die wichtigere Hälfte der Entscheidung. Das sind **Wiederanlauf**-Pfade. Würde
|
||||
ein fehlschlagender Test dort den Start verhindern, stünde eine offene Position
|
||||
ohne Trailing, Time-Stop und Notfall-Stop da — nur mit dem Broker-SL. **Eine
|
||||
Prüfung, die den Bot offline lässt, ist schlimmer als der Fehler, den sie
|
||||
sucht.** Der Batch gibt stattdessen einen **Hinweis** aus und verweist auf
|
||||
`deploy.py`; ein Kommentarblock hält die Begründung im Skript fest.
|
||||
**Regel: absichtliches Deployment blockieren, Wiederanlauf niemals.**
|
||||
|
||||
## ✅ LIVE↔BACKTEST-VERGLEICH IST JETZT TEIL DER PIPELINE (2026-08-07)
|
||||
|
||||
Konsequenz aus dem Messfehler direkt darunter: der Vergleich lief nur, wenn
|
||||
|
||||
Reference in New Issue
Block a user