- Preserve the provisional Path A selection: prepare a scheduled complete Arch host upgrade, but require separate approval for the final transaction and reboot; never perform a partial Arch upgrade or install the unmodified AUR extras package.
- Use a version-matched, checksum-pinned Moby launcher and a genuine per-user Docker service managed through root-controlled `user@1200.service`; never enable lingering or run `dockerd` from a system service with `User=le_app_codex`.
- Apply containment and the proposed `user-1200.slice` limits to the complete user manager; accept only `unix:///run/user/1200/docker.sock`.
- Create an IPv4-only root-owned namespace with default-deny egress and explicit host/LAN/WireGuard/metadata/private/loopback/bridge/SMTP/IPv6 denial after DNS and complete address inventories are approved.
- Use the refreshed post-NoMachine 220-package checksummed baseline; require exact disposition of the reviewed 234 DrKonqi desktop crash-processing failures and hard-stop on any fingerprint change or other failed unit.
- Verify the repaired `/.snapshots` Btrfs subvolume and create, number, and independently verify an explicit pre-upgrade Snapper snapshot; do not enable Btrfs quotas or treat unavailable quota accounting as snapshot failure.
- Prototype with schema push only on disposable development PostgreSQL.
- Replace push with committed deterministic migrations before authoritative rehearsal.
- Implement captured email recovery/verification and shared cookie/session contract.
## Milestone 3 — deterministic migration pipeline
- Implement separate reset, schema, import, and validation jobs.
- Import in dependency order with preserved IDs/timestamps/ownership and repaired sequences.
- Preserve password hashes for compatibility research without logging them.
- Copy referenced media and retain/classify all unreferenced files.
- Make imports restartable/idempotent or fail safely with explicit checkpoints.
## Milestone 4 — application compatibility and end-to-end behavior
- Move each Directus consumer behind shared Payload/compatibility clients.
- Rebuild Ko-fi, claims, memberships, flows, and backfill behavior.
- Implement API contract comparisons and the full fixture/snapshot test matrix.
- Validate password-hash transitional login and forced rehash strategy.
## Milestone 5 — full rehearsals and staging candidate
- Run repeated clean destination rehearsals.
- Verify counts, IDs, relationships, timestamps, ownership, permissions, files, checksums, API behavior, and browser workflows.
- Produce aggregate/non-personal validation summaries and unresolved product decisions.
- Build immutable release images and promote their digests to staging.
## Production boundary
Stop for explicit authorization before production deployment, reverse-proxy/DNS changes, production secrets or SMTP use, email to real users, final write freeze/cutover, Directus restart/retirement, production database mutation, or archive destruction.