Commit Graph
4 Commits
Author SHA1 Message Date
Florian WildeandClaude Opus 5.5 5786b1e206 feat: SFTP als Quelle mit denselben Garantien wie SMB/NFS
Quell-Abstraktion (LocalSource, SftpSource): Scan, frische Zustände,
Lesen, Löschen und Quarantäne über eine Schnittstelle. Verbindungsabbrüche
brechen den Lauf als gestörte Anbindung ab. Bei SFTP-Quellen mindestens
2 s Stabilitätsfenster (Zeiten nur sekundengenau).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 01:00:30 +02:00
Florian WildeandClaude Opus 5.5 8276ce2afb fix(mover): Stabilität mit frischen Attributen (open + fstat)
CIFS lieferte per stat() sekundenlang eine veraltete Größe einer noch
wachsenden Datei; erst open() erzwingt frische Attribute. Gesperrte
Dateien gelten als in Benutzung.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 21:50:06 +02:00
Florian WildeandClaude Opus 5.5 00a0537085 feat: Endname per renameat2(RENAME_NOREPLACE) – echtes rename ohne Überschreiben
Watcher, die nur auf IN_MOVED_TO/IN_CLOSE_WRITE lauschen, sehen damit neue
Dateien wie bei os.replace. Dateisysteme ohne renameat2 (NFS, CIFS) nutzen
weiter link() + unlink() bzw. prüfen + rename.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 19:49:03 +02:00
Florian WildeandClaude Opus 5.5 5633d3057a feat: Mover-Engine mit atomarem Schreiben, Stabilität und Quarantäne
Lokale/Kernel-Mount- und SFTP-Ziele schreiben in .part, fsyncen, prüfen
Größe und Quelle und benennen ohne Überschreiben um; erst dann wird die
Quelle gelöscht. Stabilitätsfenster, Platzprüfung, Metadaten,
Berechtigungen, Kopiermodus mit Gedächtnis, Quarantäne.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 19:06:14 +02:00