# Scanner Rework Status Updated: 2026-07-09 Short current-state entry point: [CURRENT_STATUS.md](CURRENT_STATUS.md). ## Was Es Kann - Native IK-Erfassung ist als neuer schneller Pfad verdrahtet: Electron/React starten und zeigen Status, der C# Helper prueft IK-Listen, fokussiert Genshin, klickt das 16:9 8x4 Grid, scrollt und schreibt Detailkarten-Crops. - IK `inventorylists` aus Inventory Kamera 1.4.4 sind 1:1 unter `data/ik-inventorylists` uebernommen und werden in Builds als Resource mitgeliefert. Der Helper meldet Version `6.7.0` mit `61` Artifact-Sets, `289` Artifact-Pieces, `247` Waffen, `119` Charakteren und `715` Materialien. - Jeder native Run legt `manifest.json`, `capture-jobs.jsonl` und `status.json` im Run-Ordner an. Damit kann OCR/Parsing als nachgelagerte Queue laufen, ohne den Capture-Loop wieder in React/Electron zu ziehen. - Nach einem nativen Run kann die App `capture-jobs.jsonl` nachgelagert verarbeiten und `scan-results.json` plus `processing-report.json` schreiben. `scan-results.json` enthaelt dauerhafte Ergebnis-Eintraege mit Extraction-Status, Review-Zustand und bewusst deferierter Value-Auswertung. Diese Stufe OCRt/parst nach der Erfassung, matched native Artifact-Ergebnisse gegen IK `inventorylists`, zwingt IK-Konflikte in Review, verarbeitet Crops ueber eine bounded Queue, schreibt Parser-Feldconfidence in die Resultate und persistiert standardmaessig noch nicht in die DB. - Smart Capture reads the current artifact detail view through focused 16:9 crops, OCR preprocessing, deterministic parser matching, and local lookup data. - Visible-inventory auto-scan is the production baseline: preflight, grid detection, focus, click, detail verification, OCR, parse, store/review, scroll, and summary. - The current live path has completed a 100-artifact run with `100/100` verified and parsed, `98` stored, `2` duplicates, `0` review samples, `0` misses, and `393 ms/artifact`. - Native IK live smoke passed on 2026-07-09 with runtime signature `2026-07-09-native-ik-visual-probe`: visual preflight ready, guarded probe changed the detail panel, `2/2` native artifact card crops captured, post-capture processing parsed `2/2`, `0` review, `0` errors, and `queueConcurrency: 2` without persisting to the artifact store. - Native 20/50/100 dry validation also passed in the same live session. The 100-item run captured and parsed `100/100` across 4 pages with `0` errors, `3` correctly gated Review results, and `0` store writes. See `docs/NATIVE_SCANNER_VALIDATION_2026-07-09.md`. - Stored artifacts, review samples, local text replacements, GOOD-compatible import/export, scanner diagnostics, and OCR eval are implemented. - The scan page now has a compact `Letzte Ergebnisse` rail. It uses the latest native `scan-results.json` entries after post-processing and falls back to newest stored artifacts when no native run result is loaded. Rail rows open the Inventory surface for detail inspection. - The app now has an `Inventory` navigation view for browsing native scan result entries, stored artifacts, and snapshot fallback rows with filters, sorting, a detail panel, and native crop previews loaded from the scan run directory. The same view is now scoped to Artifact scanning: it shows IK Artifact set/piece coverage, a Native Artifact pipeline strip for capture, post-processing, review, promotion, and evidence, plus a per-result `Naechster Schritt` panel. Weapons, materials, and character details remain loaded data only and are intentionally hidden from the active feature UI while they are not scanned. - The live-soak runner writes JSON/CSV evidence bundles and validates quality via `scan-performance-assessment.json`. ## Was Zuletzt Gemacht Wurde - Der aktive UI-Scope wurde auf Artifact scanning begrenzt. - Waffen, Materialien und Charakterdetails bleiben als vendored IK-Daten vorhanden, werden aber nicht mehr als aktive Scanner-Features in der Inventory UI dargestellt. - Die Inventory UI zeigt jetzt eine Native Artifact Pipeline: Scope, Native Capture, OCR Queue, Review Gate, Promotion und Evidenz. - Native Ergebnislabels wurden geschaerft: `Geparst` bedeutet extrahiert, `Stored` bedeutet persistiert, `Review` bedeutet unsicher und `Wert offen` bedeutet bewusst noch nicht bewertet. - Native Artifact Details zeigen jetzt einen `Naechster Schritt`: Promotion bereit, Review zuerst, bereits im Store, blockiert oder Wert spaeter. - Inventory Filter wurden um native Ergebnisse und speicherbare Ergebnisse erweitert. - Ein ausgewaehltes, sauberes natives Ergebnis kann jetzt nach einer zweiten UI-Bestaetigung promotet werden. Der Main-Prozess validiert die autoritative Run-Datei erneut, prueft Store-Duplikate, schreibt den Store, aktualisiert `scan-results.json` und protokolliert in `promotion-log.jsonl`. - Native Review-Ergebnisse koennen direkt im Inventory anhand des Crops editiert, gegen IK, kanonische Main-Werte und legale Substat-Rolls validiert sowie freigegeben oder abgelehnt werden. Freigaben aktualisieren `scan-results.json`, schreiben `review-log.jsonl` und erzeugen einen normalen Eval-Review-Sample. - Projekt-, Roadmap-, Architektur-, Runbook- und Checklist-Doku wurden auf Artifact-only Scope nachgezogen. ## Was Noch Nicht - Native IK-Erfassung captured aktuell Karten-Crops; OCR/Parser laufen erst nachgelagert ueber den Processor. GOOD-Speichern und Evaluierung laufen noch nicht automatisch im nativen Pipeline-Nachgang. - Native IK-Erfassung ist aktuell auf das sichtbare 16:9 Artifact-Inventar begrenzt. - The result rail is still a foundation: it can show native `scan-results.json` entries after post-processing, but does not yet calculate or show real value scores. - The inventory browser is still a foundation: value scoring and richer review/edit flows are not complete. - Upgrade projection and build recommendations should wait until inventory and detail evaluation have trustworthy stored artifacts. - Repeatability across later sessions, more accounts, more locked/equipped combinations, and more confirmed OCR corpus cases still needs growth. - The strict `333 ms/artifact` budget for 3 artifacts/second is not proven. - Weapons, materials, and character details are intentionally out of active scope until their values are actually scanned. ## Wo Es Noch Probleme Macht - Die native Pipeline hat jetzt 20/50/100-Skalenevidenz aus einer Live-Session. Spaetere Session-Repeatability und Packaged-App-Evidenz stehen noch aus. - Capture roundtrip and OCR remain the main timing costs in the 100-artifact path. - Auto-scan still requires a visible artifact inventory detail card for the production path; broader auto-entry modes remain dev experiments. - OCR/parser quality is good on the confirmed corpus, but review samples must be manually labeled before they can become permanent eval ground truth. - Non-16:9 or unusual game layouts are intentionally higher risk and should block or fall into review instead of silently scanning. - The UI now labels these risks in the Artifact Inventory pipeline. Same-session scale is proven, but external-tool parity and later-session repeatability are intentionally not claimed. ## Was Noch Verbesserungsfaehig Ist - Repeat the bounded 20/50/100 native runs in a later session and in a packaged app to verify that the current post-capture queue remains repeatable. - Keep native persistence explicit: clean selected results can be promoted after confirmation, while uncertain results must pass single-item review. - Finish value scoring and value-reason contracts in the existing detail view from `docs/scanner-results-inventory-roadmap.md`. - Keep diagnostics available but out of the primary scan surface. - Continue expanding confirmed OCR eval cases from real review samples. The first three native Review cases are corrected, approved, and permanent regression cases. - Add artifact value/detail evaluation without collapsing extraction confidence and artifact value into one ambiguous status. - Continue performance work only when it reduces capture/OCR overhead without weakening review, miss, duplicate, or safety gates. ## Was Als Naechstes Ansteht 1. Artifact Value Evaluation ergaenzen, aber erst nach sauberer Extraktion und weiterhin getrennt von OCR/Parser-Confidence. 2. Detail-Ansicht um Value-Gruende und optionale Upgrade-Projektion erweitern. 3. Packaged-App-Verhalten fuer Helper, IK-Listen, Preload-Bridge, Crop-Preview und Smoke-Kommandos pruefen. 4. Empfehlungen und Build-UX erst danach wieder nach vorne ziehen. ## Current Validation Commands ```powershell npm run scan:live:preflight npm run scan:iterate:validated npm run scan:goal:validated npm run scan:repeatability:wait npm run scan:assessment:validate -- --latest --summary npm run eval npm test npm run build ``` Latest static validation after the Artifact-only Inventory UI update: ```powershell npm run lint # passed npm test # passed, 252 tests npm run build # passed git diff --check ``` `git diff --check` passed with existing CRLF warnings for `electron/services/inputHelperPowerShellFallback.ts` and `src/styles/base.css`.