Wichtigster Fund: mein eigener CI-Check hat nur den zuletzt aktualisierten
Task angeschaut statt beide Jobs (backend-tests/frontend-build) einzeln zu
prüfen - dadurch ist die tatsächlich rote backend-tests-Pipeline seit
mehreren Commits unbemerkt geblieben (auch schon deployed).
Echter Bug (von mir eingeführt in SEARCH-002): /suche filterte auf
Objektposition.status, das Feld heißt aber ist_status - AttributeError bei
jeder Materialsuche.
5 veraltete Testerwartungen korrigiert (Logik in dashboard.py ist seit
längerem korrekt und dokumentiert, Tests wurden nie nachgezogen):
"noch_nie_kontrolliert" gilt laut _kategorie_und_gruende() IMMER zusätzlich
zu jedem anderen Grund - test_dashboard.py/test_mangel.py/
test_fahrzeugdetails.py prüften teils das Gegenteil.
1 Typo-Bug in test_kontrolle.py (UUID != str-Vergleich, immer falsch).
Offen/nicht geklärt: test_stammdaten.py::test_fach_verwendung_und_ersetzen_
fuehrt_zusammen (KeyError 'id' bei Fach-Merge-Response) - ohne lokale
Testausführung nicht sicher diagnostizierbar, braucht echten pytest-Lauf.
Nebenbei: FOUND-009/FOUND-011 im Backlog korrigiert (CI existiert bereits
unter .gitea/, vorheriger Abgleich hatte nur .github/ geprüft).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV
Wer nach einem Material sucht (z.B. "Kompresse"), will die Objekte finden,
die es aktiv führen - nicht nur Objekte, deren eigener Name/Code passt.
GIN-Trigram-Index auf material.name (Migration 0025), /suche joint jetzt
zusätzlich über objektposition (nur status=aktiv) auf material.name.
Direkter Objekt-Treffer hat Vorrang vor Material-Treffer für dasselbe
Objekt. Command Palette zeigt bei Material-Treffern einen Hinweis
("führt „Kompresse“") statt nur dem Code.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV
Command Palette lud bisher beim Öffnen ALLE Objekte und filterte nur
clientseitig per .includes() - unscharf und würde bei mehr Objekten
langsam werden. Jetzt: GIN-Trigram-Index auf objekt.name/code (Migration
0023), neuer GET /suche?q=-Endpunkt (Ähnlichkeits-Ranking per pg_trgm
similarity()), Frontend debounced (250ms) statt vollständiger Objektliste.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV