Make snapshot list report a changed destination instead of advising prune (closes #317)
check / check (push) Waiting to run
check / check (push) Waiting to run
When the local index is bound to a different destination than the configured one, snapshot list now gives the warning prune, snapshot purge and snapshot remove refuse with: both destinations and the two ways out (revert the configuration, or run vaultik database delete). Below the table it replaces the local-only note and its prune advice. With --json it goes to stderr through the logger, so stdout stays the document, whose local rows show remote_present false. Reading the binding moves out of EnsureStorageBinding into storageBinding, which records nothing, so the read-only list can call it without binding a fresh index. Model: opus-5-5
This commit was merged in pull request #375.
This commit is contained in:
@@ -323,7 +323,11 @@ read from the manifest.
|
||||
|
||||
Snapshots in the local index with no counterpart on the destination
|
||||
store are reported below the table as drift, with the `vaultik prune`
|
||||
invocation that reconciles them.
|
||||
invocation that reconciles them. If the local index is bound to a
|
||||
different destination than the configured one (after a change to
|
||||
`storage_url`, or `s3.endpoint`, `s3.bucket` or `s3.prefix`), the
|
||||
command says so instead and gives the same two ways out that `prune`
|
||||
gives: revert the configuration, or run `vaultik database delete`.
|
||||
|
||||
If the destination store cannot be listed (unmounted volume,
|
||||
permission denied, network down), the command warns, falls back to the
|
||||
@@ -332,9 +336,11 @@ local index alone, and still exits zero.
|
||||
(whether the snapshot is in the local index), `remote_key` (the full
|
||||
64-character storage key), and `remote_present` (whether it was seen
|
||||
on the destination store, or `null` if the destination could not be
|
||||
listed). Warnings about an unlistable destination, unreadable
|
||||
manifests, and a truncated listing all go to stderr through the
|
||||
logger, so stdout stays a single parseable document.
|
||||
listed). Warnings about an unlistable destination, a local index
|
||||
bound to a different destination (with both destinations and the
|
||||
same two ways out), unreadable manifests, and a truncated listing all
|
||||
go to stderr through the logger, so stdout stays a single parseable
|
||||
document.
|
||||
|
||||
**`snapshot verify`**: Verify snapshot integrity.
|
||||
* Default (shallow): checks that every blob the manifest lists is present in
|
||||
|
||||
Reference in New Issue
Block a user