ops(rs2000-legacy): refresh live bind-mount inventory before migration batches #543

Closed
opened 2026-05-28 01:37:52 +02:00 by codex · 1 comment
Collaborator

Scope

Create a fresh read-only inventory of every running container still bind-mounting /opt/vps-home-platform-infra.

This is the baseline issue for all migration batches and the destructive backup cleanup gate.

Observed baseline on 2026-05-28

  • /opt/vps-home-platform-infra: 214G
  • /opt/vps-home-platform-infra/backups: 213G
  • Running containers with legacy bind mounts: 21

Spec sources

  • state/cutover/rs2000-post-soak-legacy-cleanup.md Phase 0 and Phase 2
  • state/roadmap/current-platform-roadmap.md Milestone 01
  • Current live RS2000 Docker mount inventory

Acceptance criteria

  • A sanitized inventory artifact lists container, image, source path, destination path, rw/ro.
  • Unique source paths are grouped by service family.
  • The artifact names which follow-up issue owns each path.
  • No runtime mutation.
  • No secret values or file contents are captured.

Out of scope

  • Moving data/config.
  • Deleting backups.
  • Recreating containers.

Common safety rules

  • Recommended executor: Gemini 3.5 Flash local for repo/doc/plan work.
  • Do not delete, rename, prune, or edit /opt/vps-home-platform-infra in this issue.
  • Do not print secrets, env values, private messages, emails, or Iskra memory.
  • Runtime execution requires a separate explicit operator approval in the PR/issue thread.
  • First step is always read-only evidence refresh.
  • Preserve ownership, modes, symlinks, and timestamps when copying data/config.
  • Update compose/module docs through a PR before recreating affected services.
  • Recreate only affected service(s), never the whole platform, unless a later operator gate says otherwise.
## Scope Create a fresh read-only inventory of every running container still bind-mounting `/opt/vps-home-platform-infra`. This is the baseline issue for all migration batches and the destructive backup cleanup gate. ## Observed baseline on 2026-05-28 - `/opt/vps-home-platform-infra`: 214G - `/opt/vps-home-platform-infra/backups`: 213G - Running containers with legacy bind mounts: 21 ## Spec sources - `state/cutover/rs2000-post-soak-legacy-cleanup.md` Phase 0 and Phase 2 - `state/roadmap/current-platform-roadmap.md` Milestone 01 - Current live RS2000 Docker mount inventory ## Acceptance criteria - A sanitized inventory artifact lists container, image, source path, destination path, rw/ro. - Unique source paths are grouped by service family. - The artifact names which follow-up issue owns each path. - No runtime mutation. - No secret values or file contents are captured. ## Out of scope - Moving data/config. - Deleting backups. - Recreating containers. ## Common safety rules - Recommended executor: Gemini 3.5 Flash local for repo/doc/plan work. - Do not delete, rename, prune, or edit `/opt/vps-home-platform-infra` in this issue. - Do not print secrets, env values, private messages, emails, or Iskra memory. - Runtime execution requires a separate explicit operator approval in the PR/issue thread. - First step is always read-only evidence refresh. - Preserve ownership, modes, symlinks, and timestamps when copying data/config. - Update compose/module docs through a PR before recreating affected services. - Recreate only affected service(s), never the whole platform, unless a later operator gate says otherwise.
Author
Collaborator

Inventory refreshed after PRs #583-#593 and runtime apply.

Current sanitized legacy mount summary:

  • total legacy mounts across all containers: 16
  • running legacy mounts: 14
  • exited legacy mounts: 2
  • zero unhealthy containers

Remaining running families and owning issues:

  • Matrix/Synapse/Element: #545
  • NP core + Obsidian vault: #546
  • NP apps + Radicale config/data: #547
  • OpenClaw Mail gateway/worker config: #544

Remaining exited/archived mounts:

  • vault-bootstrap env/scripts: #555; do not rerun the archived oneshot as part of routine cleanup.

Completed families closed separately: dashboard, shelfmark, Traefik, Honcho Postgres init, edge utility config, Vault running config, audio-mcp.

No secret values or private file contents were captured.

Inventory refreshed after PRs #583-#593 and runtime apply. Current sanitized legacy mount summary: - total legacy mounts across all containers: 16 - running legacy mounts: 14 - exited legacy mounts: 2 - zero unhealthy containers Remaining running families and owning issues: - Matrix/Synapse/Element: #545 - NP core + Obsidian vault: #546 - NP apps + Radicale config/data: #547 - OpenClaw Mail gateway/worker config: #544 Remaining exited/archived mounts: - `vault-bootstrap` env/scripts: #555; do not rerun the archived oneshot as part of routine cleanup. Completed families closed separately: dashboard, shelfmark, Traefik, Honcho Postgres init, edge utility config, Vault running config, audio-mcp. No secret values or private file contents were captured.
codex closed this issue 2026-05-29 01:04:23 +02:00
Sign in to join this conversation.
No labels
W6d-automerge-calibration
agent/claude-code
agent/codex
agent/hermes
agent/iskra
agent/ollama
agent/patchwarden
automerge-candidate
class/security-sensitive
cutover-gate
dependency/blocked
dependency/blocks-others
dependency/cross-repo
dependency/needs-confirmation
domain:agents
domain:ci
domain:docs
domain:forgejo
domain:infra
domain:memory
domain:runtime
domain:signal
domain:ux
flow/architecture
flow/blocked
flow/deployed
flow/done
flow/implementation
flow/intake
flow/maintained
flow/observed
flow/ready
flow/refining
flow/retired
flow/review
iterating
judge/codex-candidate
judge/hermes-candidate
judge/low-confidence
judge/needs-refinement
judge/operator-needed
judge/p0
judge/p1
judge/p2
judge/p3
judge/park
judge/patchwarden-candidate
judge/stale-priority
kind/adr
kind/bug
kind/chore
kind/feature
kind/infra
kind/ops
kind/refactor
kind/research
large-impact
merge/auto
merge/manual
merge/manual-dependency-conflict
merge/manual-failing-tests
merge/manual-merge-conflict
merge/manual-missing-review
merge/manual-operator-preference
merge/manual-red-zone
merge/manual-security-sensitive
merge/manual-unclear-scope
merge/manual-unknown
meta
mode:operator-only
mode:patchwarden-iskra-approved
mode:safe-auto
needs-operator-decision
needs-triage
not-ready
observed/erroring
observed/needs-followup
observed/pending
observed/retire-candidate
observed/unused
observed/used
operator-emotional
owner-attention
phase/02
phase/03
priority:p0
priority:p1
priority:p2
priority:p3
proposed
ready-for-agent
ready-for-operator
recovery
review:claude-reviewed
review:codex-reviewed
review:dziadek-reviewed
review:needs-human
risk/exposure
risk/process
risk/product
risk/runtime
safety:external-write
safety:no-prod-mutation
safety:prod-impact
safety:secret-touch
size/large
size/medium
size/small
size/tiny
size/unknown
source/adr
source/agent-generated
source/manual
source/operator-chat
source/voice-note
status:blocked
status:codex-ready
status:merged:pending-evidence
status:needs-evidence
status:operator-needed
status:parked
tier/full
tier/lite
tier/stacked
tier:0-platform-substrate
tier:1-iskra-value-layer
tier:2-tools-products-modules
type:bug
type:chore
type:docs
type:feat
type:policy
type:research
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
pdurlej/platform#543
No description provided.