ad6c676e605636ee666b7f061bae2000597f1e2d
Phase RF-1 (read-only): Scanner holt bald aufloesende Favoriten von einer IFarmingMarketSource, bewertet sie und schreibt JEDEN Kandidaten (akzeptiert wie abgelehnt inkl. Grund) nach rf_candidates. Platziert keine Orders. - MarketScannerService.Evaluate (pur/statisch, voll getestet): Filterkette mit Reject-Grund = erster Fehlschlag (Preisband -> Kategorie -> Blacklist -> Aufloesungsfenster -> Netto-Edge nach Fees). Cluster-Key + Score immer berechnet. - ScanAccountAsync: Beschaffung -> Bewertung -> Persistenz. BackgroundService-Loop (12min) ueber Accounts mit Settings; fehlertolerant. - IFarmingMarketSource + ScannedMarket-DTO trennen die (live-/API-gebundene) Beschaffung von der Bewertung -> Pipeline ohne echte Gamma/CLOB-API testbar. - NullFarmingMarketSource als Default: Modul laeuft ohne Live-Anbindung (die im Zielland registriert wird) und produziert dann korrekt keine Kandidaten. Hinweis: Zur Laufzeit fragt der Scanner rf_settings ab; bis die Migration angewendet ist, faengt der try/catch den fehlenden-Tabelle-Fehler ab (nur Log). Migration bewusst separat anzuwenden. 7 neue Tests (Evaluate-Faelle + Orchestrierung). Build 0 Fehler, 296 Tests gruen, --smoke-ui ok. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Description
No description provided
1.5 MiB
Languages
C#
100%