Phase 4 cleanup: drop legacy capakraken DB + role after stability window #63

Open
opened 2026-05-21 20:26:27 +02:00 by Hartmut · 0 comments
Owner

Context

The CapaKraken → Nexus rename completed on 2026-05-21. The cutover script:

  • Dumped the capakraken DB to /tmp/capakraken-pre-rename-20260521-201019.sql
  • Created a new nexus DB+role and restored all data into it
  • Brought the full stack up under the nexus compose project name

The old capakraken DB and role were intentionally retained for the rollback window.

When to action

After 2026-05-28 (7 days of stable operation on nexus) — verify the app is healthy, then proceed.

Checklist

  • Confirm app running stably on nexus for ≥7 days (logins work, MFA works, no data loss)
  • Drop legacy DB and role:
docker compose exec postgres psql -U nexus -d postgres \
  -c 'DROP DATABASE capakraken; DROP ROLE capakraken;'
  • Remove pre-rename dump (frees ~22 MB):
rm /tmp/capakraken-pre-rename-20260521-201019.sql
  • Drop legacy Docker volumes:
docker volume rm capakraken_pgdata capakraken_node_modules capakraken_next 2>/dev/null || true
  • Remove the localStorage migration shim from apps/web/src/app/layout.tsx (~30 lines of inline <script> that copies capakraken_* keys to nexus_* on first load). Open a PR with label cleanup/rename-shim.

Notes

  • Pre-rename dump: /tmp/capakraken-pre-rename-20260521-201019.sql — keep until this issue is closed
  • The one surviving capakraken string in code (DEFAULT_ANONYMIZATION_SEED in packages/api/src/lib/anonymization.ts) must not be changed — it is a cryptographic constant; changing it would invalidate all stored anonymization aliases
## Context The CapaKraken → Nexus rename completed on 2026-05-21. The cutover script: - Dumped the `capakraken` DB to `/tmp/capakraken-pre-rename-20260521-201019.sql` - Created a new `nexus` DB+role and restored all data into it - Brought the full stack up under the `nexus` compose project name The old `capakraken` DB and role were **intentionally retained** for the rollback window. ## When to action **After 2026-05-28** (7 days of stable operation on `nexus`) — verify the app is healthy, then proceed. ## Checklist - [ ] Confirm app running stably on `nexus` for ≥7 days (logins work, MFA works, no data loss) - [ ] Drop legacy DB and role: ```bash docker compose exec postgres psql -U nexus -d postgres \ -c 'DROP DATABASE capakraken; DROP ROLE capakraken;' ``` - [ ] Remove pre-rename dump (frees ~22 MB): ```bash rm /tmp/capakraken-pre-rename-20260521-201019.sql ``` - [ ] Drop legacy Docker volumes: ```bash docker volume rm capakraken_pgdata capakraken_node_modules capakraken_next 2>/dev/null || true ``` - [ ] Remove the localStorage migration shim from `apps/web/src/app/layout.tsx` (~30 lines of inline `<script>` that copies `capakraken_*` keys to `nexus_*` on first load). Open a PR with label `cleanup/rename-shim`. ## Notes - Pre-rename dump: `/tmp/capakraken-pre-rename-20260521-201019.sql` — keep until this issue is closed - The one surviving `capakraken` string in code (`DEFAULT_ANONYMIZATION_SEED` in `packages/api/src/lib/anonymization.ts`) must **not** be changed — it is a cryptographic constant; changing it would invalidate all stored anonymization aliases
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Hartmut/Nexus#63