self-smoke Check 5: Bild-Weiche v2 taeglich aktiv durchspielen

Der Pfad (Bild an coder -> Vision beschreibt -> Coder antwortet) brach am
15.07. zweimal still: erst als nie verdrahteter Patch in der Hermes-Quelle,
dann am gepoolten Keep-Alive-Socket nach Modell-Swap (:9010). 256x256-Rot
als Testbild - Winzbilder liefern VL-Halluzinationen (Kapuzinerkresse).
Nebeneffekt: waermt coder+vision morgens vor. Vorschlag der P2-Session.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-07-15 15:58:52 +02:00
parent d2398b3624
commit 87670dd3a6
+27
View File
@@ -102,6 +102,33 @@ else
say "SKIP · Repo-Wächter (git fetch fehlgeschlagen)" say "SKIP · Repo-Wächter (git fetch fehlgeschlagen)"
fi fi
# ── 5) Bild-Weiche v2: Bild an coder → Vision beschreibt, Coder antwortet ──────
# Dieser Pfad brach am 15.07. ZWEIMAL still (toter Hermes-Patch; gepoolter Socket
# nach Modell-Swap) — deshalb täglich aktiv durchspielen. Nebeneffekt: wärmt
# coder+vision am Morgen vor. 256x256-Testbild (Winzbilder = VL-Halluzinationen).
BILD_JSON=$(python3 - <<'PYIN'
import struct, zlib, base64, json
w=h=256
raw=b"".join(b"\x00"+b"\xff\x00\x00"*w for _ in range(h))
def chunk(t,d):
c=t+d; return struct.pack(">I",len(d))+c+struct.pack(">I",zlib.crc32(c))
png=b"\x89PNG\r\n\x1a\n"+chunk(b"IHDR",struct.pack(">IIBBBBB",w,h,8,2,0,0,0))+chunk(b"IDAT",zlib.compress(raw))+chunk(b"IEND",b"")
url="data:image/png;base64,"+base64.b64encode(png).decode()
print(json.dumps({"model":"coder","stream":False,"max_tokens":40,"messages":[{"role":"user","content":[{"type":"image_url","image_url":{"url":url}},{"type":"text","text":"Welche Farbe hat das angehaengte Bild? Antworte nur mit der Farbe."}]}]}))
PYIN
)
BW_HDR=$(mktemp); BW_OUT=$(mktemp)
if curl -sf -m 420 -D "$BW_HDR" -X POST "$MC_URL/v1/chat/completions" \
-H "Content-Type: application/json" -d "$BILD_JSON" -o "$BW_OUT" 2>/dev/null \
&& grep -qi "bleibt beim Coder" "$BW_HDR" \
&& grep -qi "rot" "$BW_OUT"; then
say "PASS · Bild-Weiche v2 (Bild an coder → beschrieben → 'rot')"
else
say "FAIL · Bild-Weiche v2: $(grep -i 'x-mc-route-reason' "$BW_HDR" 2>/dev/null | head -1) Antwort: $(head -c 80 "$BW_OUT" 2>/dev/null)"
FAILED+=("Bild-Weiche v2 (Bild an coder — Umleitung statt Beschreibung oder falsche Antwort)")
fi
rm -f "$BW_HDR" "$BW_OUT"
# ── Meldung nur bei Rot ────────────────────────────────────────────────────── # ── Meldung nur bei Rot ──────────────────────────────────────────────────────
if [ "${#FAILED[@]}" -eq 0 ]; then if [ "${#FAILED[@]}" -eq 0 ]; then
say "Alle Selbst-Tests grün ($(date '+%F %H:%M'))." say "Alle Selbst-Tests grün ($(date '+%F %H:%M'))."