Add documentation requirements and asset respect guidelines to nexumi.mdc
- 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.
This commit is contained in:
@@ -16,6 +16,8 @@ alwaysApply: true
|
|||||||
- Keine Stub-Implementierungen, keine `TODO`-Platzhalter, keine auskommentierten Halbfertigteile in abgeschlossener Arbeit. Ein Modul ist fertig, wenn Commands, Datenbank, Jobs und (ab Phase 7) die WebUI-Seite funktionieren.
|
- Keine Stub-Implementierungen, keine `TODO`-Platzhalter, keine auskommentierten Halbfertigteile in abgeschlossener Arbeit. Ein Modul ist fertig, wenn Commands, Datenbank, Jobs und (ab Phase 7) die WebUI-Seite funktionieren.
|
||||||
- Das Moderations-Modul aus Phase 1 ist das Referenzmodul. Jedes weitere Modul übernimmt dessen Struktur (Ordnerlayout, Command-Registrierung, Settings-Zugriff, Fehlerbehandlung, Tests) exakt.
|
- Das Moderations-Modul aus Phase 1 ist das Referenzmodul. Jedes weitere Modul übernimmt dessen Struktur (Ordnerlayout, Command-Registrierung, Settings-Zugriff, Fehlerbehandlung, Tests) exakt.
|
||||||
- Bei Unsicherheit über Discord-API-Verhalten: discord.js-v14-Dokumentation prüfen statt raten. Keine erfundenen Methoden oder Events.
|
- Bei Unsicherheit über Discord-API-Verhalten: discord.js-v14-Dokumentation prüfen statt raten. Keine erfundenen Methoden oder Events.
|
||||||
|
- Fortschritt verpflichtend dokumentieren: `docs/PHASE-TRACKING.md` bei jeder relevanten Änderung aktualisieren (abgeschlossen/offen/manuelle Tests).
|
||||||
|
- Vorhandene Projekt-Assets respektieren und dokumentieren (z. B. Bot-Logo unter `docs/logo/`).
|
||||||
|
|
||||||
## Stack (nicht verhandelbar)
|
## Stack (nicht verhandelbar)
|
||||||
|
|
||||||
|
|||||||
84
docs/PHASE-TRACKING.md
Normal file
84
docs/PHASE-TRACKING.md
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
# 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.
|
||||||
Reference in New Issue
Block a user