Claude Code Prompt: Channel-Zuweisung reparieren

Verwendung

cd /path/to/ozmai
claude

Der Prompt

Verbinde dich mit der ozmai PostgreSQL-Datenbank (Credentials aus .env)
und führe folgende Aufräum-Operationen durch.

Zeige VOR und NACH jeder Änderung die betroffenen Chunks.

## Schritt 1: Ist-Zustand anzeigen

SELECT source, channel_id, COUNT(*) as chunks
FROM chunks
GROUP BY source, channel_id
ORDER BY channel_id, source;

## Schritt 2: mdadm und LVM nach #debian verschieben

Diese Chunks liegen in #general aber gehören nach #debian:

UPDATE chunks SET channel_id = 'debian'
WHERE source IN (
  'raid1_mdadm_knowledge.md',
  'lvm_skills_knowledge.md'
);

Zeige wie viele Rows betroffen waren.

## Schritt 3: Prüfen ob #debian Channel existiert

SELECT id, name, category FROM channels WHERE id = 'debian';

Falls nicht vorhanden:
INSERT INTO channels (id, name, category)
VALUES ('debian', 'Debian', 'Linux');

## Schritt 4: Verifikation nach den Änderungen

SELECT source, channel_id, COUNT(*) as chunks
FROM chunks
GROUP BY source, channel_id
ORDER BY channel_id, source;

## Schritt 5: Chat-History Konsistenz prüfen

SELECT channel_id, COUNT(*) as eintraege
FROM chat_history
GROUP BY channel_id
ORDER BY channel_id;

# Hinweis: chat_history NICHT anfassen –
# die bleibt wo sie ist, nur chunks werden verschoben.

## Erwartetes Ergebnis nach dem Aufräumen:

#general:
  ozmai_code_dokumentation.md
  helpguide_audit_v0.0.md
  (andere allgemeine Docs)

#debian:
  raid1_mdadm_knowledge.md      ← verschoben von general
  lvm_skills_knowledge.md        ← verschoben von general
  debian_ubuntu_raid1_lvm_iptables.md
  rz_debian_vs_ubuntu_entscheidung.md
  debian_vs_ubuntu_audit.md

#dns:
  dns_knowledge.md

#iptables:
  iptables_deep.md
  iptables_drop_reject_ufw.md

#ssh:
  ssh_knowledge.md
  ssh_distro_service_namen.md

#klassiker:
  q&a_klassiker_*.md
  mysql_explain_processlist.md

#laufend:
  q&a_laufend_*.md

## Sicherheit

- Kein DELETE
- Kein DROP
- Nur UPDATE channel_id und ggf. INSERT channel
- Bei Fehler: ROLLBACK
- Zeige alle SQL-Statements VOR der Ausführung

Führe alles in einer Transaktion aus:
BEGIN;
-- alle UPDATEs
-- COMMIT oder ROLLBACK bei Fehler
COMMIT;

Bonus: Bühnenspiel-Script aktualisieren

Nach dem DB-Aufräumen: ozmai_buehnenspiel.sh anpassen.

Ändere den Baumrinde-Test:
  Von: ask_ozmai "general" "Was war der Moment..."
  Zu:  ask_ozmai "crumbforest" "Was war der Moment..."
  (falls #crumbforest der richtige Channel ist)

Oder: Test aus dem Script entfernen wenn
      #crumbforest nicht im Bühnenspiel getestet werden soll.

Führe danach aus:
  ./ozmai_buehnenspiel.sh
  → Score sollte von 73% auf 85%+ steigen