cd78f72f33
Complete rename of all technical identifiers across the codebase: Package names (11 packages): - @planarchy/* → @capakraken/* in all package.json, tsconfig, imports Import statements: 277 files, 548 occurrences replaced Database & Docker: - PostgreSQL user/db: planarchy → capakraken - Docker volumes: planarchy_pgdata → capakraken_pgdata - Connection strings updated in docker-compose, .env, CI CI/CD: - GitHub Actions workflow: all filter commands updated - Test database credentials updated Infrastructure: - Redis channel: planarchy:sse → capakraken:sse - Logger service name: planarchy-api → capakraken-api - Anonymization seed updated - Start/stop/restart scripts updated Test data: - Seed emails: @planarchy.dev → @capakraken.dev - E2E test credentials: all 11 spec files updated - Email defaults: @planarchy.app → @capakraken.app - localStorage keys: planarchy_* → capakraken_* Documentation: 30+ .md files updated Verification: - pnpm install: workspace resolution works - TypeScript: only pre-existing TS2589 (no new errors) - Engine: 310/310 tests pass - Staffing: 37/37 tests pass Co-Authored-By: claude-flow <ruv@ruv.net>
6.9 KiB
6.9 KiB
Technischer Rename: planarchy → capakraken — Migrationsplan
Uebersicht
| Kategorie | Dateien | Vorkommen | Aufwand | Risiko |
|---|---|---|---|---|
| A: Package-Namen & Imports | 277 | 548 | 3 Std | KRITISCH |
| B: Datenbank & Docker | 26 | 32 | 30 Min | KRITISCH |
| C: CI/CD & Scripts | 13 | 45 | 15 Min | HOCH |
| D: Dokumentation | 30 | 200+ | 1 Std | MITTEL |
| E: Test-Daten & Emails | 35 | 85 | 30 Min | HOCH |
| Gesamt | 372 | 910+ | ~5 Std |
Phase 1: Package-Namen & Imports (KRITISCH)
1.1 Package-Namen umbenennen (12 package.json)
| Alt | Neu |
|---|---|
@capakraken/api |
@capakraken/api |
@capakraken/application |
@capakraken/application |
@capakraken/db |
@capakraken/db |
@capakraken/engine |
@capakraken/engine |
@capakraken/shared |
@capakraken/shared |
@capakraken/staffing |
@capakraken/staffing |
@capakraken/ui |
@capakraken/ui |
@capakraken/web |
@capakraken/web |
@capakraken/eslint-config |
@capakraken/eslint-config |
@capakraken/prettier-config |
@capakraken/prettier-config |
@capakraken/tsconfig |
@capakraken/tsconfig |
1.2 Import-Statements (277 Dateien, 548 Vorkommen)
# Globaler Find+Replace
find . -type f \( -name "*.ts" -o -name "*.tsx" \) \
-not -path "*/node_modules/*" -not -path "*/.next/*" \
-exec sed -i 's/@planarchy\//@capakraken\//g' {} +
1.3 tsconfig.json Path-Mappings (8 Dateien)
"@capakraken/*" → "@capakraken/*"
1.4 next.config.ts transpilePackages
"@capakraken/api" → "@capakraken/api" (6 Eintraege)
Phase 2: Datenbank & Docker (KRITISCH)
2.1 Docker Compose (2 Dateien, 32 Vorkommen)
| Alt | Neu |
|---|---|
POSTGRES_DB: planarchy |
POSTGRES_DB: capakraken |
POSTGRES_USER: planarchy |
POSTGRES_USER: capakraken |
POSTGRES_PASSWORD: capakraken_dev |
POSTGRES_PASSWORD: capakraken_dev |
planarchy_pgdata (Volume) |
capakraken_pgdata |
planarchy_prod_pgdata |
capakraken_prod_pgdata |
planarchy_prod_redis |
capakraken_prod_redis |
admin@capakraken.dev (pgAdmin) |
admin@capakraken.dev |
2.2 Datenbank migrieren
# 1. Backup erstellen
docker exec capakraken-postgres-1 pg_dump -U planarchy planarchy > backup.sql
# 2. Neue DB + User erstellen
docker exec capakraken-postgres-1 psql -U postgres -c "
CREATE USER capakraken WITH PASSWORD 'capakraken_dev';
CREATE DATABASE capakraken OWNER capakraken;
GRANT ALL PRIVILEGES ON DATABASE capakraken TO capakraken;
"
# 3. Daten importieren
docker exec -i capakraken-postgres-1 psql -U capakraken capakraken < backup.sql
# 4. .env.local aktualisieren
DATABASE_URL=postgresql://capakraken:capakraken_dev@localhost:5433/capakraken
2.3 Environment-Dateien (3 Dateien)
DATABASE_URL=postgresql://planarchy:capakraken_dev@localhost:5433/planarchy
→ DATABASE_URL=postgresql://capakraken:capakraken_dev@localhost:5433/capakraken
Phase 3: CI/CD & Scripts (HOCH)
3.1 GitHub Actions (.github/workflows/ci.yml, 25 Vorkommen)
sed -i 's/@planarchy\//@capakraken\//g' .github/workflows/ci.yml
sed -i 's/capakraken_test/capakraken_test/g' .github/workflows/ci.yml
sed -i 's/POSTGRES_USER: planarchy/POSTGRES_USER: capakraken/g' .github/workflows/ci.yml
sed -i 's/pg_isready -U planarchy/pg_isready -U capakraken/g' .github/workflows/ci.yml
3.2 Root package.json Scripts (9 Vorkommen)
sed -i 's/@planarchy\//@capakraken\//g' package.json
3.3 Start/Stop/Restart Scripts
sed -i 's/planarchy/capakraken/g' scripts/start.sh scripts/stop.sh scripts/restart.sh
3.4 Dependabot
sed -i 's/planarchy/capakraken/g' .github/dependabot.yml
Phase 4: Test-Daten & Emails (HOCH)
4.1 Seed-Dateien (2 Dateien)
admin@capakraken.dev → admin@capakraken.dev
manager@capakraken.dev → manager@capakraken.dev
viewer@capakraken.dev → viewer@capakraken.dev
4.2 E2E-Tests (11 Spec-Dateien)
find apps/web/e2e -name "*.spec.ts" \
-exec sed -i 's/@planarchy\.dev/@capakraken.dev/g' {} +
4.3 LocalStorage-Keys
planarchy_theme → capakraken_theme
planarchy_sidebar_collapsed → capakraken_sidebar_collapsed
planarchy_prefs → capakraken_prefs
planarchy_dashboard_v1 → capakraken_dashboard_v1
planarchy_pwa_dismiss → capakraken_pwa_dismiss
planarchy-chat-messages → capakraken-chat-messages
4.4 Email-Defaults (3 Dateien)
noreply@capakraken.app → noreply@capakraken.app
Phase 5: Dokumentation (MITTEL)
5.1 Kern-Dokumente
# Globaler Replace in allen .md Dateien
find . -name "*.md" -not -path "*/node_modules/*" \
-exec sed -i 's/planarchy/capakraken/g; s/Planarchy/CapaKraken/g; s/plANARCHY/CapaKraken/g' {} +
5.2 CLAUDE.md aktualisieren
- Projektname, Monorepo-Struktur, Package-Referenzen
5.3 Code-Kommentare
grep -rn "planarchy" --include="*.ts" --include="*.tsx" . \
| grep -v node_modules | grep -v .next | grep "\/\/"
# Manuell pruefen und aendern
Phase 6: Verzeichnis-Umbenennung (OPTIONAL)
Nicht umbenennen (zu riskant):
packages/Verzeichnisnamen bleiben (packages/api/, nichtpackages/capakraken-api/)- Git-Remote URL aendern ist ein separater Schritt beim Hoster
Umbenennen (sicher):
- Docker-Container-Namen aendern sich automatisch durch docker-compose Aenderungen
Phase 7: Verifikation
# 1. Node Modules neu installieren
rm -rf node_modules apps/web/node_modules packages/*/node_modules
pnpm install
# 2. Prisma regenerieren
pnpm --filter @capakraken/db exec prisma generate
# 3. TypeScript pruefen
pnpm --filter @capakraken/web exec tsc --noEmit
# 4. Unit Tests
pnpm test:unit
# 5. Build
pnpm --filter @capakraken/web exec next build
# 6. E2E (nach Seed mit neuen Emails)
pnpm --filter @capakraken/db db:seed
pnpm test:e2e
Risiken
| Risiko | Mitigation |
|---|---|
| pnpm Workspace-Aufloesung bricht | Nach Rename sofort pnpm install ausfuehren |
| Import-Pfade nicht komplett ersetzt | grep -rn "@planarchy" --include="*.ts" als Kontrolle |
| Docker Volumes mit alten Namen | Alte Volumes manuell loeschen: docker volume rm planarchy_pgdata |
| Bestehende User-Sessions invalide | Alle User muessen sich neu einloggen (NEXTAUTH_SECRET bleibt gleich) |
| LocalStorage-Keys veraltet | Alte Keys werden ignoriert, neue Defaults greifen |
| Git-History referenziert alten Namen | Kein Problem — History bleibt unveraendert |
Empfohlene Reihenfolge
- Backup erstellen (DB + Git Tag)
- Phase 1 durchfuehren (Package-Namen + Imports)
pnpm install→ pruefen ob Workspace funktioniert- Phase 2 (Docker + DB Migration)
- Phase 3 (CI/CD + Scripts)
- Phase 4 (Tests + Emails)
pnpm test:unit→ alle Tests gruen?- Phase 5 (Dokumentation)
- Phase 7 (Vollstaendige Verifikation)
- Commit + PR als einzelner "chore: rename planarchy → capakraken" Commit