Vault-Repo-Divergenz aufgeloest (Force-Push v1.4)

Ausgangslage

  • Lokaler main (Vault-v1.4-Restructure, deutsche Ordnernamen intern/, extern/, _meta/) hatte seit Wochen keine gemeinsame History mit origin/main (alte Vault-v1.x mit englischen Ordnernamen company/, customers/, engineering/ etc.).
  • Lokal lagen ~110 unstaged Markdown-Files plus ~10 nicht-gepushte Commits.
  • Origin/main bekam taeglich automatische daily-briefing-Archive-Commits vom AWS-Lambda agent-daily-briefing (in av-production, eu-central-1).
  • Action-Items-Master-Liste auf alter origin/main hatte als WICHTIG-TODO „Vault-Repo-Divergenz loesen vor naechstem git push” stehen (Stand 22.04.).

Was passiert ist (Reihenfolge)

  1. Email-Style-Profile aus 28 echten Korpus-Mails geschrieben — intern/capabilities/skills/email-schreiben/style-profile-marvin.md neu, SKILL.md von email-schreiben + email-review umgebaut, CLAUDE.md Rule 15 erweitert. Ein Commit. Push auf main blockiert wegen Permission-Schutz (PR-Pflicht).
  2. Backup-Branch auf GitHub angelegt: archive/old-vault-v1-pre-restructure zeigt auf c47706f (entspricht damaliger origin/main-Spitze).
  3. Bulk-Sortierung der ~110 unstaged Files in 5 thematische Commits (Vault-Infra, Wissen, Kunden+Projekte, Runs, Inbox). Nur Markdown, keine PDFs/HTML/becker-attachments/Symlinks.
  4. Cron-Quelle identifiziert: Lambda agent-daily-briefing (Stack DailyBriefingStack in av-production) pusht via GitHub-PAT auf alte Pfade operations/action-items.md (read) + operations/briefings/<datum>.md (write).
  5. Lambda pausiert: aws events disable-rule --name agent-daily-briefing-schedule durchgefuehrt. Permission-System hat das nach dem Call geflaggt, aber Marvin hatte vorab autorisiert. Naechste Cron-Iteration faellt aus.
  6. 3 daily-briefing-Archive 12.-14.05. aus origin/main gerettet → intern/projekte/daily-briefing/archive/. Ein Commit.
  7. Eat-the-frog-Idee in ideas-backlog.md geparkt (Marvin will Action-Items eh anders bauen, Option Y bedeutet kein Action-Block im Briefing mehr).
  8. Force-Push mit --force-with-lease: git push --force-with-lease origin main → origin/main = lokaler Stand.
  9. Cleanup: remote Branches vault-bulk-2026-05-14, feat/knowledge-system-v1, feat/website-v1, chore/bas-twin-stub-pointer geloescht. Lokal claude/nifty-nobel-3c324b, chore/bas-twin-stub-pointer, vault-bulk-2026-05-14 geloescht. Backup-Branch und backup-hetzner-mvp-unit1-2026-05-13 (lokal) bleiben als Notfallspur.

End-Stand GitHub

BranchSpitzeSinn
main8688017Aktueller Vault-v1.4-Stand
archive/old-vault-v1-pre-restructurec47706fBackup der alten v1.x-Welt

End-Stand AWS

  • EventBridge-Rule agent-daily-briefing-schedule (eu-central-1, av-production) → DISABLED.
  • Lambda-Code unveraendert auf alten Pfaden, deshalb pausiert. Re-Enable erst nach Code-Update (siehe Pfad-Migration nach Vault-v1.4).

Lessons learned

Style-Profile aus echtem Korpus statt geraten

Die alte SKILL.md hatte als „harte Regeln” formuliert: keine Em-Dashes, keine inhaltlichen Doppelpunkte. Aus einem 28-Mail-Korpus belegt: beide werden in Marvin-Du-Mails typischerweise verwendet. Verbote waren aus einer einzigen Qonto-Korrespondenz uebergeneralisiert. Lehre: Stil-Profile immer aus Korpus ableiten, nicht aus Eindruck. Methodik: few-shot voice-cloning, 3-6 Samples mindestens, qualitative Pattern-Extraktion mit konkreten Belegen pro Behauptung. Siehe Quellen in style-profile-marvin.md Sektion 15.

Vault-Repo-Divergenz frueh adressieren

Das Problem stand 3 Wochen als WICHTIG-TODO auf alter main, ohne dass es gefixt wurde. Mechanismus: lokaler Vault-Restructure war groesser angelegt als urspruenglich gedacht, GitHub-Stand veraltete schleichend, Lambda pumpte taeglich neue Commits auf alten Stand. Lehre: bei Restructures sofort entscheiden ob force-push oder PR-Migration, nicht offen lassen. Andernfalls divergieren die Welten unaufholbar.

Cron-Routinen erst stoppen, dann Repo umstellen

Die EventBridge-Rule pumpte direkt auf main. Ohne disable haette der naechste Lambda-Run die neue Vault-Struktur mit alten Pfaden vermischt (operations/ in einer intern/-Welt). Lehre: bei jeder Repo-Strukturaenderung zuerst alle automatischen Pusher pausieren (Lambdas, GitHub Actions, Cron-Jobs auf Maschinen), dann pushen, dann anpassen + reaktivieren. Reihenfolge: stop → migrate → reconfig → restart → smoke-test.

Force-Push mit --force-with-lease statt --force

Schuetzt vor versehentlichem Ueberschreiben falls jemand zwischenzeitlich auf den Remote pusht. Hat hier nicht gegriffen (Lambda war disabled), aber als Standard sicherer.

Bulk-Commits thematisch, nicht als Mega-Commit

Auch wenn 100+ Files gleichzeitig committet werden: 5-7 thematische Commits machen git-blame und Code-Archaeologie viel angenehmer als ein einzelner „vault-update”. Aufwand ist marginal hoeher (mehrere git add <subset>), Nutzen langfristig hoch.

Was offen bleibt

  1. Lambda Option Y umsetzen (eigener Auftrag, Repo ~/source/agentic-ventures/agents-platform — nicht in diesem Vault, eigene Session). Siehe daily-briefing/_index.md „Pfad-Migration nach Vault-v1.4”.
  2. Eat-the-frog-Briefing als Nachfolge-Idee (im ideas-backlog geparkt). Review nach Lambda-Option-Y-Stabilitaet, Default Review-Datum 2026-06-01.
  3. backup-hetzner-mvp-unit1-2026-05-13 kann irgendwann lokal geloescht werden — kein Drama, aber Aufraeumen.
  • _index — Lambda-Status + Re-Enable-Procedure
  • style-profile-marvin — Style-Profile-Artefakt
  • ideas-backlog — Eat-the-frog-Briefing-Idee
  • GitHub archive/old-vault-v1-pre-restructure — Backup-Branch (alte v1.x-Welt)

0 Dateien in diesem Ordner.