24 lines
1.2 KiB
Markdown
Executable File
24 lines
1.2 KiB
Markdown
Executable File
# ADR-001: Rust/axum statt Python/Flask (In-Place-Rewrite)
|
||
|
||
**Datum:** 2026-07-15 · **Status:** Akzeptiert · **Entscheider:** Moe (Vorgabe), umgesetzt via Claude
|
||
|
||
## Kontext
|
||
Die Flask-Version (single-file, ungepinnte Dependencies) hatte 8 Sicherheits-
|
||
Review-Befunde; Nutzer-Vorgabe: alle Schwachstellen beseitigen, technisch
|
||
aktuellster Stand, ITIL v3/v4, Umstellung auf Rust. Es existierte ein
|
||
Parallelbau-Plan (AES projects/itsm-rust) mit späterem Cutover.
|
||
|
||
## Entscheidung
|
||
Kompletter In-Place-Rewrite in Rust mit axum 0.7 + tokio-postgres/deadpool +
|
||
askama — gleicher Stack wie forge-web (einheitliche Technologierichtung).
|
||
Der Parallelbau-Plan wurde auf explizite Nutzer-Anweisung übersprungen.
|
||
|
||
## Konsequenzen
|
||
+ Ein Binary, kompilierte Templates, keine Laufzeit-Dependency-Drift mehr.
|
||
+ Stack-Konsistenz mit Forge (Wartbarkeit, Wissenstransfer).
|
||
− Kein paralleles Rollback-System; kompensiert durch: identisches Schema
|
||
(nur additiv migriert), Werkzeug-Hash-Kompatibilität (ADR-003), E2E-Tests
|
||
vor Push, Compose-Backup als Rollback-Punkt.
|
||
− Lehre aus Produktion (Forensik phase-010 B4): Kompatibilitätsannahmen
|
||
gegen ECHTE Produktionsdaten testen, nicht nur gegen eigene Vektoren.
|