pub const GROUP_LABEL: &str = "kopiur.home-operations.com/group";Expand description
Label naming the shared CSI VolumeGroupSnapshot a fanned-out Snapshot
stages from — carried by BOTH the member Snapshot CRs and the
VolumeGroupSnapshot object itself.
This is the group’s only join key, which makes it load-bearing rather than
decorative. The VolumeGroupSnapshot deliberately has no
ownerReferences (see io::group_staging): every candidate owner is either
absent for a manual run, long-lived enough that GC never fires, or — for a
“leader” member — liable to be pruned while siblings are still restoring
from the group’s member snapshots. So one label selector answers both “who
are my siblings” and “does any live member still need this group”, and the
reaper fails CLOSED when that read fails.
Lives in kopiur-api, not kopiur-controller, because the CLI (to filter a
fan-out) and the webhook (to stamp it on a hand-applied member) both need it
and neither can depend on the controller crate.