CG-Feedback-Monitor/docs/DEV_ISOLATION.md
Lars 234f87d408 V2-Dev-Stand: Skala 1-10, Benefits/Concerns, DEV-Isolation und Gitea-Doku.
Bündelt die Neuentwicklung in AssigmentMonitorV2 (eigene Ports/DB), die Umstellung auf numerische Bewertungen, Meeting-Checklisten, KI-Tagging und die geplante Feedback-Kaskade — als Basis für Versionsverwaltung in Gitea.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-08 17:35:05 +02:00

46 lines
1.8 KiB
Markdown

# Entwicklungs-Isolation — AssignmentMonitorV2
Dieses Projekt ist die **Neuentwicklung**. Das Produktivsystem darf nicht verändert werden.
| | Produktiv | DEV (dieses Repo) |
|---|---|---|
| Ordner | `c:\dev\AssigmentMonitor` | `c:\dev\AssigmentMonitorV2` |
| Frontend | http://localhost:5173 | http://localhost:5174 |
| API | http://localhost:4000 | http://localhost:4001 |
| SQLite | `server/data/assignment-monitor.sqlite3` | `server/data/assignment-monitor-v2-dev.sqlite3` |
| PWA-Name | Assignment Monitor | Assignment Monitor DEV |
## Start
```bash
# einmalig: .env aus Vorlage (bereits vorhanden, falls nicht:)
copy .env.example .env
npm run dev:all
```
Öffnen: **http://localhost:5174** (nicht 5173).
## Frische Datenbank
```bash
npm run db:reset
npm run dev:all
```
`db:reset` löscht nur die V2-Dev-Datei. Der Produktiv-Ordner wird per Pfad-Guard abgelehnt.
## Sicherheitsmechanismen
1. **Eigene Ports** (5174 / 4001) — Defaults und `.env`; Start bricht ab, wenn Port 5173 bzw. 4000 gewählt wird.
2. **Eigene DB-Datei** — anderer Dateiname; `SQLITE_FILENAME` darf kein Pfad sein.
3. **Pfad-Guard** in `server/database.ts` — DB nur innerhalb von `AssigmentMonitorV2`; Zugriff auf `AssigmentMonitor\server\data` wird blockiert.
4. **`server/data/` ist gitignored** — keine DB im Repo.
5. **strictPort** — Vite weicht nicht still auf den Produktiv-Port aus.
## Regeln
- Niemals Skripte aus V2 gegen den Produktiv-Ordner ausführen.
- Niemals die Produktiv-SQLite nach `AssigmentMonitorV2/server/data/` kopieren, außer bewusst als read-only Analyse (dann anderen Dateinamen verwenden und nicht als `SQLITE_FILENAME` setzen).
- Backup-Import in V2 nur mit **anonymisierten / Testdaten**, nicht mit dem Produktiv-Backup, solange ihr an der Skala umbaut — sonst vermischt ihr personenbezogene Produktivdaten mit Experimenten.