feat: add journaled transfer materialization
This commit is contained in:
@@ -32,6 +32,13 @@ bidirectional nonce/acknowledgement files. Route attempt nonces, ownership, and
|
||||
ordered updates survive restart; accepted attempts resume on reconnect without
|
||||
concurrent duplicate execution. Conflicting existing folders and foreign data
|
||||
are reported without being overwritten.
|
||||
The transfer storage foundation now publishes isolated per-job namespaces with
|
||||
canonical protobuf-JSON manifests and digest-bound ready markers. Selected
|
||||
regular files and metainfo artifacts are materialized with hardlink, reflink,
|
||||
then sparse-aware copy fallback; every intent/result is journaled in SQLite.
|
||||
Receiver materialization never overwrites a path, can reuse a same-size regular
|
||||
file for later qBittorrent verification, and replays completed operations
|
||||
idempotently after a database reopen.
|
||||
|
||||
```bash
|
||||
archive-client --config /etc/archive-control/client.toml --check-config
|
||||
@@ -44,10 +51,12 @@ archive-client-backup --database /var/lib/archive-control/client.db \
|
||||
Secrets must be regular files without group/world permissions. The daemon never
|
||||
stores them in SQLite or sends the shared token after registration.
|
||||
|
||||
This foundation currently executes heartbeat, inventory, state-snapshot, and
|
||||
route-provisioning commands. Other mutation commands are durably rejected as
|
||||
unsupported until their service and file-operation executors are added; they
|
||||
are never falsely acknowledged as accepted.
|
||||
The daemon currently executes heartbeat, inventory, state-snapshot, and
|
||||
route-provisioning commands. Transfer storage primitives are implemented and
|
||||
tested but are not yet wired to assignment/step commands; those and eviction
|
||||
commands remain durably rejected as unsupported until their orchestration and
|
||||
qBittorrent executors are added. They are never falsely acknowledged as
|
||||
accepted.
|
||||
|
||||
Run tests and build using containers:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user