# Referenzaufgabe: Mem0-Sidecar restlos ausbauen > **Zweck dieser Datei:** Messlatte für den Stack-Umbau (Stufe 2, 20.08.2026). Dieselbe Aufgabe wird > mehrfach mit verschiedenen Modellen gefahren. Gemessen wird **nicht** Tokens pro Sekunde, sondern: > *Wurde sie fertig? Wie lange? Wie viele Züge?* > Alle Pfade und Befehle unten sind am 20.08.2026 auf der Box **nachgemessen**, nicht geraten. ## Hintergrund Mem0 wurde im August abgelöst (`bf145a3`, `eb4bcfc`, `2286879`). Der Rückbau blieb unvollständig: Der Sidecar-Ordner liegt noch im Baum, MC2 fragt weiterhin einen toten Port ab. Gemessen: `curl http://127.0.0.1:8765/health` → **keine Antwort**. Kein systemd-Dienst dafür, `/srv/models/mem0` bereits entfernt. Es ist also wirklich tot, nicht nur gerade aus. ## Arbeitsplatz **Isolierter Worktree — NICHT das Live-Deployment:** ``` ~/projekte/mc2-referenz Zweig: referenz/mem0-ausbau ``` `~/mission-control-v2` bleibt auf `main` und bedient weiter den laufenden Dienst auf `:9001`. **Dort nichts ändern.** ## Auftrag Entferne die Mem0-Reste vollständig, ohne etwas anderes kaputtzumachen. **17 Dateien haben Treffer** (gemessen 20.08., selbst nachprüfen statt blind vertrauen): ``` backend/steward.py deploy/stack-postcheck.sh backend/config.py deploy/venv-audit.sh backend/routers/voice.py deploy/agent-hooks/box-steckbrief-inject.sh backend/routers/system.py deploy/warmup.sh backend/routers/zeitmaschine.py deploy/autoupdate.sh backend/services/sentry.py deploy/hermes-postcheck.sh backend/services/voice_metrics.py deploy/restore.sh backend/services/backup.py deploy/backup.sh mcp/mcp_mc.py ``` Dazu der Ordner `mem0_service/` (app.py, migrate.py, requirements.txt, smoke_test.py). > ‼️ **Der eigentliche Prüfstein:** Wenn eine API-Antwort ein Feld wie `mem0_reachable` liefert, das > das Frontend liest, darf es nicht einfach verschwinden — sonst bricht die Oberfläche. Entweder das > Frontend mit anpassen oder das Feld sauber entfernen. Wer nur `grep mem0` laufen lässt und alles > wegwirft, produziert eine Fassade. ## Fertig-Kriterien Ausgangswert am 20.08.: **1, 2, 4, 5 sind bereits grün** — sie sind Schutzgeländer, nicht die Arbeit. Nur Kriterium 3 ist offen. Wer 3 erfüllt und dabei 1/2/4/5 kaputtmacht, hat versagt. | # | Prüfung | Befehl | Ausgangswert | |---|---|---|---| | 1 | Lint sauber | `cd ~/projekte/mc2-referenz && ~/.venv-lint/bin/ruff check .` | ✅ *All checks passed* | | 2 | Backend lädt | `cd ~/projekte/mc2-referenz/backend && ~/mission-control-v2/backend/.venv/bin/python -c "import app"` | ✅ ok | | 3 | **keine mem0-Reste** | `cd ~/projekte/mc2-referenz && grep -ril mem0 backend/ mcp/ deploy/ --include='*.py' --include='*.sh' \| wc -l` | ❌ **17** → muss **0** werden | | 4 | Selbsttest grün | `bash ~/mission-control-v2/deploy/self-smoke.sh` | ✅ grün | | 5 | MC2 gesund | `curl -s localhost:9001/api/health` | ✅ `"status":"ok"` | Treffer in `docs/` sind erlaubt — das ist Historie und darf stehenbleiben. ## Randbedingungen - **Nicht pushen.** Der Zweig bleibt lokal, damit der Lauf wiederholbar ist. - **Nichts außerhalb des Worktrees anfassen** — kein `/etc`, keine systemd-Dienste, kein Neustart. - Wenn ein Kriterium nicht erfüllbar ist: **ehrlich sagen und aufhören.** Ein klares „Kriterium 3 scheitert an X" ist wertvoller als ein beschönigter Abschluss. ## Zurücksetzen zwischen den Läufen ```bash cd ~/mission-control-v2 git worktree remove --force ~/projekte/mc2-referenz git branch -D referenz/mem0-ausbau git worktree add -b referenz/mem0-ausbau ~/projekte/mc2-referenz main ``` ## Messprotokoll | Lauf | Modell in der `coder`-Rolle | Fertig? | Wanduhr | Züge | Bemerkung | |---|---|---|---|---|---| | A | Qwen3.8-27B (dicht, 12,6 t/s) — Ausgangswert | | | | | | B | Qwen3.8-27B **+ DFlash-2** | | | | | | C | Qwen3.6-35B-A3B (`fast`, 95,7 t/s) | | | | |