MCP-Tool vault_write + Git-Lock fuer die Vault-Pipeline

Entschieden am 2026-10-12.

Was

  • Neues MCP-Tool vault_write(path, content, commit_message, overwrite, expected_sha256) in /var/www/mercruiser-pipeline — gilt fuer alle drei Instanzen (Mercruiser, Grow, Studium), die dieselbe Codebasis mit unterschiedlicher Env-Konfiguration nutzen.
  • vault_read(path, with_sha256=true) liefert den Hash fuer optimistisches Locking.
  • Neuer prozessuebergreifender Git-Lock (flock auf <vault>/.git/mercruiser-pipeline.lock), genutzt von Worker-Commit, place_inbox_file und vault_write.

Warum so

  • Eigene Whitelist allowed_write_roots statt allowed_place_roots: place_inbox_file legt Binaerdateien/Archive ab, vault_write nur Text — die Freigabe des einen soll nicht automatisch das andere freischalten (Mercruiser/Grow haben place bewusst deaktiviert).
  • Commit mit --only -- <path>: Vaults haben oft fremde, gestagte Aenderungen (Obsidian); die duerfen nie in einen Tool-Commit rutschen. Gilt jetzt auch fuer place_inbox_file.
  • expected_sha256 schuetzt vor Lost Updates, wenn parallel in Obsidian editiert wird.
  • Vorher gab es keinen Git-Lock — MCP-Server und Worker konnten sich gegenseitig ins index.lock laufen bzw. consolidate (git add -A) fremde Dateien mitnehmen.

Zusammenhaenge