17 lines
1.5 KiB
Markdown
17 lines
1.5 KiB
Markdown
# Arbeitsregeln fuer Codex
|
|
|
|
- Das Repository ist ein npm-Workspace-Monorepo mit `apps/frontend`, `apps/backend` und `packages/api-client`; keine Nx-Einfuehrung.
|
|
- TypeScript bleibt strikt. Kein `any`, keine unnoetigen Non-Null-Assertions.
|
|
- Backend-Controller verwenden niemals TypeORM-Repositories direkt, sondern Services.
|
|
- Services kapseln Fachlogik; Datenbankzugriffe laufen ueber Repository-Klassen oder klar benannte Persistence-Services.
|
|
- Keine UI-Library einsetzen. Angular bleibt mobile-first, mit eigenem HTML und SCSS.
|
|
- OIDC-Tokens bleiben ausschliesslich im Backend. Der Browser erhaelt nur Session-Cookie und CSRF-Token.
|
|
- Sessions liegen serverseitig in MySQL. Session-Cookies enthalten keine Tokens oder sensiblen Daten.
|
|
- Permissions sind im Code definiert. Benutzer haben keine direkten Permissions, sondern Rollen.
|
|
- Das Backend ist fuer Authentifizierung, Autorisierung und CSRF verbindlich; Angular nutzt Permissions nur zur Darstellung.
|
|
- Migrationen werden niemals automatisch beim normalen App-Start ausgefuehrt. Der Start prueft nur auf fehlende Migrationen.
|
|
- Secrets, Session-IDs und Tokens duerfen nicht geloggt oder ins Repository aufgenommen werden.
|
|
- Tests muessen Verhalten pruefen; keine trivialen Tests, die nur Existenz testen.
|
|
- Keine Auth- oder CSRF-Umgehung fuer Entwicklung oder Tests in Production-Code einbauen.
|
|
- Vor Abschluss muessen `npm run lint`, `npm run format:check`, `npm run typecheck`, `npm test`, `npm run build` und `docker build .` bestehen.
|