hackathon-ENGIN/docs/REVIEW_RESPONSE.md
Jakub Famulski 2 9032c49993
All checks were successful
ENGIN CI / Build, test and smoke (push) Successful in 43s
ui: align cylinder controls with service workflow
2026-08-25 15:52:36 +02:00

22 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Odpowiedź na krytykę — iteracja 2
| Uwaga z przeglądu | Zmiana | Dowód regresji |
| --- | --- | --- |
| Wybór cylindra niepotrzebnie obciążał przegląd silnika | wybór jest dostępny wyłącznie w widoku szczegółów; przegląd pokazuje tylko stan i priorytety | `test_cylinder_selector_exists_only_in_detail_view` |
| Selektor i karta mogły po pierwszym wejściu wskazywać różne cylindry | trwały stan wyboru i stan widżetu mają osobne klucze; test porównuje wartość selektora z nagłówkiem karty | `test_cylinder_selector_exists_only_in_detail_view` |
| Wielokrotny wybór pokazywał angielskie i sprzeczne komunikaty | zastąpiono go trzema opcjonalnymi, polskimi polami porównawczymi bez możliwości duplikatów | `test_cylinder_selector_exists_only_in_detail_view` |
| Automatyczna skala mapy wyolbrzymiała różnice w zdrowych silnikach | mapa ma stałą skalę ±20 mV i opis diagnozy przy każdym cylindrze | `test_all_chart_factories_return_populated_figures` |
| Status `WYMAGA WERYFIKACJI` był nieosiągalny | status zależy bezpośrednio od label/severity; `unknown` bez nazwanej usterki ma dedykowany status | `test_unknown_only_engine_requires_verification` |
| Engine Health 0100 był arbitralny | liczba została usunięta; UI pokazuje najwyższe rzeczywiste severity i porządkowy triage | testy explainability + smoke UI |
| OOD otrzymywał sztuczny confidence 5099% | score OOD jest `NaN`; UI nazywa pozostałe wartości score modelu i wyjaśnia brak kalibracji | `test_diagnostics_are_complete_for_the_application` |
| Globalny próg OOD mógł reagować na ogólny szum jednostki | override wymaga 7.25 mV **i** 2.5× mediany anomalii własnego silnika | `test_globally_noisy_engine_is_not_treated_as_isolated_ood` |
| Stare CSV wyglądały jak finalne metryki | artefakty przeniesiono do `archive/legacy_experiments/`; skrypty mają nagłówki statusu | kontrola struktury repo + README archiwum |
| Docstring finalnego modelu nie opisywał faktycznych cech | opis wskazuje signed/absolute deviation, ratio delta i statystyki | `final_pipeline.py` |
Po zmianie OOD ponownie wykonano pięć seedów grouped CV dla clean i masked 5%. Wyniki pozostały bez zmian:
- clean: Macro F1 `0.9811`, severity `0.9298`, Raw Score `0.9683`,
- masked 5%: Macro F1 `0.9829`, severity `0.9333`, Raw Score `0.9705`.
Pełny pakiet po iteracji: `38/38` testów oraz poprawny test stanu Streamlit `ok`.