NotariumDokumentation
Dokumentationsversion: latest
DE

Versionsverlauf

Jede Notiz führt ihr eigenes Revisionsprotokoll — eine Historie aller Zustände, die sie durchlaufen hat. Das ist Versionierung auf Anwendungsebene, keine Git-Schicht über einem Ordner: Das Protokoll lebt in der Metadaten-Datenbank (Metadaten-DB) und sammelt Zustände, die durch Notarium gelaufen sind oder von der Dateisynchronisation erkannt wurden. Die .md-Datei selbst bleibt dabei die Quelle der Wahrheit — das Protokoll ergänzt sie, statt sie zu ersetzen.

Eine Revision ist ein Snapshot

Jede Revision speichert den vollständigen Zustand der Notiz zum Zeitpunkt der Bearbeitung: Titel, Tags, Slug und den normalisierten Textkörper — keinen zeilenweisen Diff. Diffs zum Vergleich von Versionen werden bei Bedarf berechnet, denn sie lassen sich aus den Snapshots rekonstruieren.

Revisionskörper werden inhaltsadressiert (content-addressed, sha-256), sodass identischer Inhalt nur einmal gespeichert wird. Das Wiederherstellen einer Version, die Bearbeitungsschleifen eines Agenten und wiederkehrende Zustände erzeugen keine zusätzlichen Kopien — die Deduplizierung richtet sich nach dem Inhalt selbst.

Der Schlüssel des Protokolls ist die interne Kennung der Notiz (notarium-id), nicht ihr Dateipfad. Deshalb übersteht die Historie das Verschieben zwischen Ordnern und das Umbenennen: Es ist weiterhin dieselbe Notiz mit derselben Historie.

Provenienz: wer wie bearbeitet hat

Jede Revision ist signiert — man sieht, woher eine Änderung stammt. Eine Revision hat eine Art und einen verantwortlichen Principal als Autor:

RevisionsartBedeutung
writeEin Speichern über Notarium (Mensch oder Agent)
externalEin Zustand, den die Dateisynchronisation direkt auf der Festplatte erkannt hat
restoreEin Rollback auf eine frühere Version (behält eine Referenz auf die Quelle)
deleteTombstone: der letzte Zustand einer gelöschten Notiz

Der Autor wird als konkreter Benutzer, als persönlicher Token eines Agenten oder als die Oberfläche festgehalten; externe Bearbeitungen haben keinen Autor — es gibt niemanden, der sie signiert. So zeigt die Historie genau, was ein Mensch bearbeitet hat und was ein KI-Agent. Mehr zur Trennung von menschlichen und Agenten-Bearbeitungen findest du unter Menschen und Agenten.

Granularität externer Bearbeitungen

Bearbeitungen direkt in der Datei (unter Umgehung von Notarium) sieht das Protokoll nur mit der Genauigkeit eines Synchronisationszyklus: Mehrere Änderungen zwischen zwei Abfragen fallen zu einem einzigen beobachteten Zustand zusammen. Bearbeitungen über Notarium selbst werden exakt festgehalten.

Eine Revision trägt außerdem Zähler für hinzugefügte und entfernte Zeichen — den „Preis“ der Bearbeitung im Verhältnis zur vorherigen Version.

Ansehen, Vergleichen und Wiederherstellen

Die Historie einer Notiz ist aus dem Lesemodus erreichbar — der Reiter History im Seitenpanel zeigt eine Zeitleiste der Versionen: wer die Bearbeitung vorgenommen hat, die Zähler +N −M und das Datum. Beim Auswählen einer Revision öffnet sie sich anstelle des aktuellen Textes, mit einem Umschalter zwischen Changes (ein wortweiser Diff mit hervorgehobenen Einfügungen und Löschungen) und Content (der Inhalt selbst).

Der Reiter History: Revisionen mit Autor und Zählern; v3 stammt von einem Agenten

Für ein Rollback dient die Schaltfläche Restore this version. Die Wiederherstellung nimmt den Textkörper aus dem Protokoll und schreibt ihn als neue Bearbeitung über eine optimistische Versionsprüfung: Wurde die Notiz zwischenzeitlich geändert, erhältst du einen Konflikt (409), und nichts wird stillschweigend überschrieben.

Speicherung und Löschung

Standardmäßig wird die vollständige Historie aufbewahrt — Notarium dünnt Revisionen nicht automatisch aus. Die Historie einer Notiz lässt sich vollständig von Hand löschen, indem man sie aus dem Papierkorb entfernt: Das Löschen einer Notiz erzeugt einen Tombstone mit ihrem letzten Zustand (der sich wiederherstellen lässt), und eine endgültige Bereinigung löscht auch die Historie.

Grenzen des Protokolls

Der Versionsverlauf setzt die Metadaten-DB voraus. Ohne Metadaten-DB lebt die Historie nur für die Laufzeit des Prozesses. Es gibt kein geplantes automatisches Ausdünnen alter Revisionen — wir bewahren die Historie vollständig auf.

Verwandte Themen: File-first — die Datei als Quelle der Wahrheit, Papierkorb — Löschen und Wiederherstellen, Zugriffsmodell — wer Versionen zurücksetzen darf.