Add optional/ephemeral volume notation for restore resilience

Introduce x-optional-volumes for beacon sidecars (prysm, nimbus, lighthouse,
teku, lodestar) that are checkpoint-sync capable and rebuild state quickly.
Mark reth sockets volumes as ephemeral (runtime IPC artifacts).

Script changes:
- volume-utils.sh: add is_optional_volume_key() function
- restore-volumes.sh: tolerate missing optional/ephemeral volume archives
- clone-backup.sh: skip missing optional/ephemeral volumes gracefully
- list-restorable.sh: only require archives for non-optional persistent volumes

This fixes the de-25 ethereum prysm incident (entire 1.1T restore failed
due to missing prysm archive) and arc-testnet reth sockets restore loops.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
2026-08-04 06:10:55 +00:00
parent d21f2669ae
commit d896378eb7
46 changed files with 115 additions and 14 deletions

View File

@@ -958,8 +958,7 @@
"type": "archive",
"volumes": [
"arc-mainnet-reth-archive-trace-consensus",
"arc-mainnet-reth-archive-trace-execution",
"arc-mainnet-reth-archive-trace-sockets"
"arc-mainnet-reth-archive-trace-execution"
]
},
{
@@ -976,8 +975,7 @@
"type": "pruned",
"volumes": [
"arc-mainnet-reth-pruned-trace-consensus",
"arc-mainnet-reth-pruned-trace-execution",
"arc-mainnet-reth-pruned-trace-sockets"
"arc-mainnet-reth-pruned-trace-execution"
]
},
{
@@ -994,8 +992,7 @@
"type": "archive",
"volumes": [
"arc-testnet-reth-archive-trace-consensus",
"arc-testnet-reth-archive-trace-execution",
"arc-testnet-reth-archive-trace-sockets"
"arc-testnet-reth-archive-trace-execution"
]
},
{
@@ -1012,8 +1009,7 @@
"type": "pruned",
"volumes": [
"arc-testnet-reth-pruned-trace-consensus",
"arc-testnet-reth-pruned-trace-execution",
"arc-testnet-reth-pruned-trace-sockets"
"arc-testnet-reth-pruned-trace-execution"
]
},
{
@@ -1028,8 +1024,7 @@
"type": "pruned",
"volumes": [
"arc-testnet-reth-pruned-consensus",
"arc-testnet-reth-pruned-execution",
"arc-testnet-reth-pruned-sockets"
"arc-testnet-reth-pruned-execution"
]
},
{