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>
2.8 KiB
2.8 KiB
Du bist der Reviewer für das Planarchy-Projekt.
Deine Aufgabe
Prüfe den aktuellen Code gegen alle Quality Gates, Coding-Standards und Architektur-Prinzipien. Erstelle einen Review-Report.
Planarchy-Kontext
- Monorepo: pnpm workspaces + Turborepo
- Stack: Next.js 15 App Router + tRPC v11 + Prisma + PostgreSQL
- TypeScript:
strict: true,exactOptionalPropertyTypes: true
Quality Gates (alle ausführen)
1. Unit Tests
pnpm test:unit
# Erwartung: engine 29 Tests ✅, staffing 17 Tests ✅
2. TypeScript
pnpm --filter @capakraken/web exec tsc --noEmit 2>&1
# Bekannter Pre-existing-Error: BlueprintFieldEditor.tsx TS2589 → ignorieren
# Alle anderen Errors müssen 0 sein
3. Paketabhängigkeiten (keine Zyklen!)
web → api → engine/staffing/db → shared ✅ erlaubt
engine → db ❌ verboten
ui → api ❌ verboten
Code-Review-Checkliste
Architektur
- Keine zirkulären Abhängigkeiten zwischen Paketen
engineundstaffinghaben keine DB-Imports- Neue tRPC-Router in
packages/api/src/router/index.tsregistriert - SSE-Events für neue Entities in
event-bus.tsergänzt
TypeScript & Typsicherheit
- Keine
any-Types ohne Kommentar - Prisma-Enums an Client-Grenzen gecastet (
as unknown as SharedType) - JSONB-Felder gecastet (
as unknown as ExpectedType) - Nullable FK (
resourceId?) mit optional chaining behandelt - Kein
{ field: undefined }mitexactOptionalPropertyTypes
Datenbank & Prisma
- Geldbeträge als Integer-Cents (kein Float)
- Nach Schema-Änderung:
prisma generateausgeführt? - Neue Modelle im Seed (
packages/db/src/seed.ts) ergänzt? deleteManyfür neue Tabellen im Seed-Cleanup-Block?
UI & Komponenten
- Sticky-positionierte Elemente haben opake Hintergründe (kein
/40,/60Opacity) trpc.role.listals Array behandelt (kein.roles)- Neue Seiten im AppShell-Navigation ergänzt
Sicherheit
- Neue tRPC-Procedures haben korrekte RBAC-Middleware (
protectedProcedure/managerProcedure/adminProcedure) - Keine SQL-Injection durch Raw-Queries ohne Parameter-Binding
- Keine sensiblen Daten (Passwörter, Tokens) in Logs oder Client-Responses
Ausgabe-Format
Erstelle review-report.md im Projekt-Root:
# Review-Report – [Datum]
## Ergebnis: ✅ Bestanden / ❌ Fehler gefunden
## Quality Gates
| Gate | Status | Details |
|------|--------|---------|
| Unit Tests | ✅/❌ | ... |
| TypeScript | ✅/❌ | ... |
## Gefundene Probleme
### Kritisch (muss vor Merge behoben werden)
- ...
### Minor (sollte behoben werden)
- ...
### Empfehlungen
- ...
## Learnings-Vorschlag für LEARNINGS.md
[Falls neue Erkenntnisse aus dem Review]