Date: 2026-02-20 Status: Completed Origin: MDF Webseiten session 0019
sl-website registry placement — moved under seriousletter.services.website to resolve prefix collision{project}-{env/purpose} lowercase namingops backup/restore/sync argument validation (was crashing on unbound variable)registry.yaml (pointed to wrong location)container_name() to SL sync.py with label + prefix fallback (mirrors MDF pattern)ops backup <project> work without env arg (passes --all to CLI)ops status — latest backup per project/env, size, age with color coding/opt/data/backups/{project}/{env}/ across all projects/opt/datasl-website lived — prefix collision with other SL services caused matching bugs. Moving it under a services.website key made the prefix unique./opt/data/backups/{project}/{env}/) are the correct structure — flat dirs were the source of orphaned files.ops backup <project> without env should be a valid shorthand — it delegates --all to the project CLI rather than requiring explicit env arg.umount./opt/infrastructure/servers/hetzner-vps/registry.yaml — fixed sl-website placement, naming consistency/opt/infrastructure/ops — fixed arg validation, cmd_backup without env, backup summary in status/opt/data/seriousletter/{dev,int,prod}/code/scripts/sync/sync.py — added container_name() with fallbackCode/mdf-system/scripts/sync/sync.py — per-env backup subdirectory paths/opt/data2 → /opt/data path updatesTags: #Session #OpsCLI #BackupSystem #Registry