New: tooling/migrate/rename-to-nexus.sh — idempotent maintenance-window cutover script (pg_dump → restore → volume copy → bring up under new project name)
Intentional survivor
packages/api/src/lib/anonymization.tsDEFAULT_ANONYMIZATION_SEED is a functional cryptographic constant — changing it would invalidate all stored anonymization aliases.
After merge
Run tooling/migrate/rename-to-nexus.sh dev in a brief maintenance window to migrate the running Docker stack (DB dump/restore, volume copy, compose project rename). Old capakraken DB + role are retained for rollback.
After the Phase 3 rename the project name flipped from 'capakraken' to 'nexus'.
The QNAP runner may still have capakraken-redis-1 running (holding port 6380).
The down step only cleaned up the 'nexus' project, leaving the old container
alive and causing "Bind for 0.0.0.0:6380 failed: port is already allocated".
Add an explicit `docker compose -p capakraken ... down` before the normal
cleanup so stale pre-rename containers are always removed first.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The app service is declared under the 'full' profile. Without --profile full,
docker compose down skips it — leaving nexus-app-1 (or capakraken-app-1)
running and holding port 3100, which causes the next run to fail with
"Bind for 0.0.0.0:3100 failed: port is already allocated".
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
POSTGRES_DB/POSTGRES_USER,pg_isreadyhealth-checks,DATABASE_URL, volume names (nexus_pgdata,nexus_prod_pgdata,nexus_prod_redis).github/workflows/ci.yml:POSTGRES_PASSWORD, psql credentials,GRANTstatements,POSTGRES_PASSWORD=nexus_devfor Docker Deployscripts/db-target-guard.mjs,prisma-with-env.mjs,e2e/test-server.mjs→NEXUS_EXPECTED_DB_NAME;safe-destructive-env.ts,reset-dispo-import.ts,destructive-db-guard.ts/.test.tsnexus:rbac-invalidate,nexus:sse,nexus:ratelimit, logger service namenexus-postgres-1), localStorage/sessionStorage keys, email domain fixturescheck-architecture-guardrails,export/import-dev-seed,harden-postgres,start.sh,worktree-hygiene.testtooling/migrate/rename-to-nexus.sh— idempotent maintenance-window cutover script (pg_dump → restore → volume copy → bring up under new project name)Intentional survivor
packages/api/src/lib/anonymization.tsDEFAULT_ANONYMIZATION_SEEDis a functional cryptographic constant — changing it would invalidate all stored anonymization aliases.After merge
Run
tooling/migrate/rename-to-nexus.sh devin a brief maintenance window to migrate the running Docker stack (DB dump/restore, volume copy, compose project rename). OldcapakrakenDB + role are retained for rollback.Test plan
pnpm test:unit— all passing locally ✓pnpm lint— no errors ✓pnpm --filter @nexus/web exec tsc --noEmit— clean ✓./tooling/migrate/rename-to-nexus.sh dev, verify row counts match, app boots undernexuscompose project🤖 Generated with Claude Code