RichardandClaude Opus 5 cb58e094b6 Drei offene Bugfixes sichern (Stand vor dem Fruehjahrsputz)
Lagen unfertig im Worktree bzw. auf einem eigenen Branch und werden hier
gebuendelt, damit der Ausgangsstand vor der Aufraeumaktion festgehalten ist.

1. Event-Upsert kappte nur Slug und Title. Description, ImageUrl und Tags
   haben in AppDbContext ebenfalls ein HasMaxLength, wurden aber ungekuerzt
   geschrieben. Ein Polymarket-Event mit einer Beschreibung ueber 4096
   Zeichen liess MySQL den gesamten Batch mit "Data too long for column
   'Description'" ablehnen - damit brach der komplette Marktsync ab, nicht
   nur dieses eine Event. Ersetzt durch TruncateEventStrings, analog zum
   bereits vorhandenen TruncateMarketStrings. Regressionstest deckt beide
   Zweige ab (neues und bestehendes Event); uebernommen vom Branch
   fix-event-description-truncation, der damit aufgeht.

2. FingerprintSnapshotService warf bei jedem Trader, der in zwei
   Unterkategorien derselben Kategorie gehandelt hat. Der eindeutige Index
   ist TraderId+Category+Subcategory, ein ToDictionary auf die Kategorie
   allein kollidiert deshalb. Jetzt per GroupBy summiert.

3. DcErrorReporter meldete Zustandswechsel nur auf Debug-Ebene. Ein stumm
   abgeschalteter oder abgewiesener Fehler-Stream fiel erst auf, wenn im
   Deployment Center nach einem Absturz nichts ankam. Meldet jetzt auf
   Warning - das erreicht den DcErrorSink nicht (Error+) und erzeugt daher
   keine Rueckkopplung. Transportfehler werden nur beim ersten Mal
   gemeldet, damit ein Netzwerkaussetzer keine Warnung pro Fehler ausloest.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 10:46:46 +02:00
@
2026-07-23 17:35:49 +02:00
S
Description
No description provided
1.5 MiB
Languages
C# 86.5%
HTML 6.2%
JavaScript 4.8%
CSS 2.5%