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.
+2 -2
View File
@@ -1,8 +1,8 @@
# #023 Standardwerte je Server
**Status:** erledigt
**Meilenstein:** v0.7.0
**Meilenstein:** v1.0.0
**Labels:** feature
**Geschätzt:** 1 h **Tatsächlich:** –
**Geschätzt:** 1 h **Tatsächlich:** 1 h 40 min (inkl. Fehlersuche Handy-Übersicht)
## Ziel
Die Vorgabe nennt unter „Einstellungen“ Standardwerte. Der Server kannte sie schon (die CLI füllt
+2 -2
View File
@@ -23,7 +23,7 @@ Details und Architektur: [../architektur.md](../architektur.md). Zeiten werden a
| [#017](017-branding.md) | Branding-Assets | erledigt | v0.6.0 | 4 h | 0 h 17 min |
| [#018](018-readme.md) | README und Dokumentation | erledigt | v0.6.0 | 4 h | 0 h 02 min |
| [#019](019-installer.md) | Docker-Image und LXC-Installer | erledigt | v0.6.0 | 6 h | 0 h 20 min |
| [#020](020-feldtest.md) | Feldtest 8.x und 9.x, Version 1.0.0 | offen | v1.0.0 | 6 h | – |
| [#020](020-feldtest.md) | Feldtest 9.x, Version 1.0.0 | erledigt | v1.0.0 | 6 h | 2 h 15 min |
| [#021](021-template-bau-ohne-ssh.md) | Template-Bau ohne SSH (Bau-Adresse) | erledigt | v0.3.0 | 3 h | 0 h 54 min |
| [#022](022-template-profile.md) | Templates mit eingebackenen Profilen | erledigt | v0.3.0 | 4 h | 0 h 22 min |
| [#023](023-standardwerte.md) | Standardwerte je Server | erledigt | v0.7.0 | 1 h | – |
| [#023](023-standardwerte.md) | Standardwerte je Server | erledigt | v1.0.0 | 1 h | 1 h 40 min |