24 lines
1.0 KiB
Markdown
24 lines
1.0 KiB
Markdown
# 04 — Fehlerstrategie für kaputte Mods
|
|
|
|
Type: grilling
|
|
Status: open
|
|
Blocked by: 03
|
|
|
|
## Question
|
|
|
|
Was passiert, wenn ein Mod kaputt ist — und wie sieht das im Rust-Code aus?
|
|
|
|
Explizites Rust-Lernticket. Heute macht `items.rs::parse()` ein `panic!` mit Backtrace; bei Mod-Support
|
|
ist fehlerhaftes TOML der Normalfall, nicht der Ausnahmefall. Zu klären:
|
|
|
|
- Welche Fehlerklassen gibt es? TOML-Syntax kaputt, Pflichtfeld fehlt, unbekannte Typ-ID,
|
|
Abhängigkeit nicht installiert, ID-Kollision ohne Override-Absicht.
|
|
- Welche davon sind hart (Start abbrechen) und welche weich (Mod überspringen, Rest laden, warnen)?
|
|
- Wie erreicht die Meldung den Spieler — vor dem TUI-Start auf stderr, oder als Bildschirm im TUI?
|
|
Braucht es ein Mod-Log?
|
|
- Rust-seitig: eigener Fehlertyp mit `thiserror`, oder `anyhow` mit Kontext, oder handgeschriebenes
|
|
`enum LoadError`? Wo endet die `Result`-Kette?
|
|
- Wie kommt die Herkunft in die Meldung — Datei, Zeile, Mod-ID?
|
|
|
|
Ergebnis: Fehlerklassifikation, Reaktion je Klasse, und die gewählte Rust-Fehlerbehandlung mit Begründung.
|