chore(release): v1.0.0

Feldtest auf PVE 9.2 vollständig (VM/LXC × Debian 12/13, Ubuntu 22.04/24.04/26.04, mit und ohne SSH zum Node); 8.x nicht im Einsatz und nicht geprüft. Dazu Standardwerte je Server und die Fehler aus dem Feldtest.

Closes #020
Closes #023

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-23 16:13:04 +02:00
co-authored by Claude Opus 5.5
parent ca9d6de446
commit f338061d0f
10 changed files with 93 additions and 24 deletions
+47 -11
View File
@@ -1,21 +1,57 @@
# #020 Feldtest 8.x und 9.x, Version 1.0.0
**Status:** offen
# #020 Feldtest und Version 1.0.0
**Status:** erledigt
**Meilenstein:** v1.0.0
**Labels:** test
**Geschätzt:** 6 h **Tatsächlich:** –
**Geschätzt:** 6 h **Tatsächlich:** 2 h 15 min (Sitzung 5)
## Ziel
Vollständiger Durchlauf gegen echte Proxmox-Hosts beider Hauptversionen.
Vollständiger Durchlauf gegen echte Proxmox-Hosts.
**Umfang angepasst (Florian, 2026-10-23):** im Einsatz ist nur Proxmox VE 9.x – kein Feldtest auf 8.x,
kein zweiter 9.x-Host; OIDC vorerst nicht gegen einen echten Identity Provider (lokale Benutzer reichen).
## Aufgaben
- [ ] Matrix: VM/LXC × Debian/Ubuntu × mit/ohne SSH × 8.x/9.x
- [ ] Gefundene Fehler als eigene Issues
- [x] Matrix auf pve-demo (PVE 9.2.2): VM/LXC × Debian/Ubuntu × mit/ohne SSH zum Node
- [x] Gefundene Fehler behoben (siehe unten), jeweils mit Test
- [x] Abhängigkeiten auf bekannte Lücken geprüft (`pnpm audit --prod`)
## Akzeptanzkriterien
- [ ] Alle Kombinationen grün oder mit Begründung ausgeschlossen
## Matrix (PVE 9.2.2)
## Abhängigkeiten
alle
| Gast | mit SSH zum Node | ohne SSH zum Node |
|---|---|---|
| VM Debian 13 | ✓ pd-test01…04, pd-cli01 | – (Weg wie Debian 12) |
| VM Debian 12 | – | ✓ pd-deb12 (Template über Bau-Adresse, #021) |
| VM Ubuntu 22.04 | – | ✓ pd-ft-u2204 |
| VM Ubuntu 24.04 | ✓ pd-ubu01 | – |
| VM Ubuntu 26.04 | – | ✓ pd-ft-u2604 |
| LXC Debian 13 | ✓ pd-ct01 (pct exec) | ✓ pd-abnahme (SSH in den Container) |
| LXC Debian 12 | – | ✓ pd-ft-ct-d12 |
| LXC Ubuntu 22.04 | – | ✓ pd-ft-ct-u2204 |
| LXC Ubuntu 24.04 | ✓ pd-cli02 | ✓ pd-ct02 |
| LXC Ubuntu 26.04 + docker | – | ✓ pd-ft-ct-u2604 (Docker 29.9 im unprivilegierten CT) |
Templates: Debian 12/13, Ubuntu 22.04/24.04/26.04, Debian 13 mit eingebackenem docker. „Ohne SSH“
heißt hier: über die installierte Instanz (LXC-Installer, CT 109), die keinen SSH-Zugang zum Node hat.
Die Wege „mit/ohne SSH“ unterscheiden sich nur beim Template-Bau (Snippet vs. Bau-Adresse) und bei der
LXC-Provisionierung (pct exec vs. SSH in den Container); beide sind je Familie mindestens einmal gelaufen.
## Gefunden und behoben
- **Next.js 16.4.0** hatte zwei kritische und eine hohe Lücke → 16.4.2; Prisma 7.10.1 hebt `mysql2`/`deepmerge-ts`.
- **Ausgelasteter Node** (76 % I/O-Druck, Storage-Abfragen 15 s): Aufträge brachen beim ersten
Verbindungswackler ab. Jetzt: GET bis zu dreimal wiederholt, Statusabfragen laufender Tasks bis zum
Task-Zeitlimit, Schreibendes nur bei sicher nicht angekommener Anfrage, Verbindungsaufbau 30 s,
Schreibaufrufe 120 s.
- **Angelegte ID zu spät gemerkt:** brach das Warten ab, legte Proxmox den Gast trotzdem fertig an und
„Aufräumen“ kannte ihn nicht (CT 114). Jetzt gemerkt, sobald Proxmox den Auftrag angenommen hat.
- **Benutzer wie eine vorhandene Gruppe** („admin“ auf Ubuntu 22.04) → useradd Code 9. Gruppe wird Primärgruppe.
- **nesting** jetzt standardmäßig an wie in der Proxmox-Oberfläche (Warnung bei systemd 249/252).
- `pnpm test:container` lief seit pnpm 12 nicht (`pnpm -s`); deckt jetzt auch den Gruppenfall ab.
## Notizen / Entscheidungen
–
- Paralleles Ausrollen wurde auf dem Testhost bewusst nur mit zwei Gästen geprüft (Batch in Etappe 4):
fünf Gäste plus zwei Template-Builds überfordern dessen Storage.
- Randfall: eine VMID-Reservierung wird bei Auftragsende frei, auch wenn Proxmox den Gast noch anlegt;
ein zweiter Auftrag kann dieselbe ID bekommen. Mit dem längeren Schreib-Zeitlimit selten; „Aufräumen“
löscht wegen der Prüfung der Beschreibung trotzdem nie das Falsche (im Feldtest so beobachtet).
- Die Entwicklungs-App wurde zweimal von außen beendet (Neustart eines anderen Projekts per
`pkill -f "next start"`); der Feldtest lief deshalb über die installierte Instanz.