17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-11-13 08:20:59 +01:00

fix: the bugs and vulnerabilities SonarCloud reports on PR #216

This commit is contained in:
2026-11-07 22:11:08 +01:00
parent 8e85def98f
commit 7667e5b2ec
65 changed files with 910 additions and 121 deletions

20
pr-reviews/PR-260.md Normal file
View File

@@ -0,0 +1,20 @@
# Review PR #260 — fix(cab): on the SU45 and SU46 the open line contactors lamp lights with the contactors opened by the pressure switch
Autor: @jerrrrycho · base: `master` · 3 pliki, +124/−1 · Fixes eu07/maszyna#263
https://github.com/MaSzyna-EU07/maszyna/pull/260
**Werdykt: Approve**
## Podsumowanie
`LineContactorsLampLit()` dla `DieselElectric` zwraca samo `!StLinFlag` — lampka styczników liniowych na SU45/SU46/SP45 świeci także, gdy styczniki otworzył presostat (PG < 3.6 bar albo hamulec > 2 bar). Lokomotywy elektryczne bez zmian.
## Co jest dobrze
- Precyzyjna tabela stanów (przed/po) i weryfikacja w grze krok po kroku.
- Lista pojazdów w danych, których to dotyczy — zgodnie z `CLAUDE.md`.
- Testy z nowym `diesel_electric.json`, a test na niskie ciśnienie failuje bez poprawki.
## Uwagi
1. **Rozróżnienie po `EngineType`.** Semantyka lampki to cecha obwodu konkretnej lokomotywy, a nie typu napędu. Dziś w danych to się pokrywa (tylko SU45/SU46/SP45), ale przyszła spalinowo-elektryczna lokomotywa z lampką „start możliwy” dostanie złe zachowanie. Rozważyć opcjonalny klucz w `.fiz`/`.mmd` (domyślnie: obecna heurystyka po typie silnika), albo przynajmniej komentarz „heurystyka, zmienić gdy pojawi się pojazd …”.
2. **`i-contactorsb`** — opis mówi, że dotyczy też tej lampki; w testach jest tylko `LineContactorsLampLit()`. Jeśli `i-contactorsb` używa tej samej funkcji — OK, warto to zaznaczyć w opisie testu.
3. Drobne: komentarz nad funkcją w `MOVER.h` jest długi (3 linie z historią issue). Szczegóły historyczne lepiej w commit message, w kodzie wystarczy reguła.
4. Do rozważenia: SP45 (`DumbDE`) nie był sprawdzany w grze — tylko SU46. Szybki test na SP45 przed merge.