- Mandate progress documentation in `docs/PHASE-TRACKING.md` for relevant changes. - Emphasize the importance of respecting and documenting existing project assets, such as the bot logo.
85 lines
2.6 KiB
Markdown
85 lines
2.6 KiB
Markdown
# Nexumi – Phasen-Tracking
|
||
|
||
Dieses Dokument hält den aktuellen Implementierungsstand fest. Es wird bei jedem Arbeitsfortschritt aktualisiert.
|
||
|
||
## Assets
|
||
|
||
- Bot-Logo vorhanden: `docs/logo/nexumi-logo.svg`
|
||
|
||
## Phase 1 – Fundament (Status: in Arbeit)
|
||
|
||
### Bereits abgeschlossen
|
||
|
||
- Monorepo-Basis mit Workspaces:
|
||
- `apps/bot`
|
||
- `packages/shared`
|
||
- Basis-Tooling:
|
||
- TypeScript strict
|
||
- ESLint
|
||
- Prettier
|
||
- Vitest
|
||
- Turbo
|
||
- Docker-Compose-Grundstack:
|
||
- `postgres` mit Healthcheck
|
||
- `redis` mit Healthcheck
|
||
- `bot`
|
||
- `webui`-Scaffold-Service (temporär)
|
||
- `backups` Volume angebunden
|
||
- Prisma-Grundmodell inkl. Moderationsdaten:
|
||
- `Guild`
|
||
- `GuildSettings`
|
||
- `User`
|
||
- `Case`
|
||
- `Warning`
|
||
- `ModNote`
|
||
- `EscalationRule`
|
||
- Bot-Grundarchitektur:
|
||
- Sharding-Startpfad
|
||
- Command-Registrierung
|
||
- Command-Routing
|
||
- zentraler Permission-Check
|
||
- Basis-i18n in `@nexumi/shared`
|
||
- Health-Endpoint (`/health`) und token-geschütztes `/metrics`-Scaffold
|
||
- BullMQ-Integration:
|
||
- Moderation-Queue
|
||
- Temp-Ban-Expire-Job
|
||
- täglicher Backup-Job (`pg_dump`)
|
||
- Backup-Retention-Cleanup
|
||
- Moderation als Referenzmodul (implementiert):
|
||
- `/ban`, `/unban`, `/kick`, `/timeout`, `/untimeout`
|
||
- `/warn add|list|remove|clear`
|
||
- `/warn escalation-set|escalation-list|escalation-remove`
|
||
- `/purge` (Filter: User, Bots, Links, Attachments, Regex)
|
||
- `/slowmode`, `/lock`, `/unlock`
|
||
- `/nick set|reset`
|
||
- `/case view|edit|delete`
|
||
- `/modnote add|list`
|
||
- Tests (aktuell vorhanden):
|
||
- `packages/shared/src/i18n.test.ts`
|
||
- `apps/bot/src/modules/moderation/duration.test.ts`
|
||
|
||
### Noch offen für Phase 1
|
||
|
||
- Vollständige i18n-Auslagerung:
|
||
- Alle user-facing Moderations-Strings in Locale-Dateien verschieben (de/en parallel).
|
||
- Slash-Command-Bestätigungen für destruktive Aktionen gemäß SPEC-Regel:
|
||
- Ban, Purge und weitere destruktive Flows sollen explizite Bestätigungsschritte erhalten.
|
||
- Audit-/Case-System weiter härten:
|
||
- Einheitliche, nachvollziehbare Audit-Metadaten pro Moderationsaktion.
|
||
- Migrations-Workflow finalisieren:
|
||
- Neue Prisma-Migration für `EscalationRule` erzeugen und versionieren.
|
||
- Setup-Doku erweitern:
|
||
- Konkrete Restore-/Backup-Runbook-Schritte mit Beispielbefehlen pro Umgebung.
|
||
- `docker compose up -d` End-to-End gegen echte `.env` und Test-Discord-Guild final verifizieren.
|
||
|
||
### Verifikation (letzter Lauf)
|
||
|
||
- `pnpm prisma:generate` erfolgreich
|
||
- `pnpm typecheck` erfolgreich
|
||
- `pnpm lint` erfolgreich
|
||
- `pnpm test` erfolgreich
|
||
|
||
## Nächster geplanter Schritt
|
||
|
||
- Phase 1 vollständig abschließen (offene Punkte oben), dann erst nach expliziter Freigabe in Phase 2 wechseln.
|