main war als Fast-Forward auf feature/linux-net10 zu ziehen; beide stehen jetzt auf402c372. Vor dem Push gegen einen vollstaendigen Rebuild geprueft: warnungsfrei, 126 Tests gruen. Die zehn Feature-Zweige der Analytik- und Portierungsarbeit sind lokal und auf origin geloescht. Neun waren restlos in main enthalten (rev-list einzeln geprueft). Der zehnte, fix-event-description-truncation, nur inhaltlich: sein Fix und sein Regressionstest stecken seitcb58e09in main, der Commit selbst wurde nie gemergt - der Unterschied beschraenkte sich auf den Kommentartext und ein static. Damit das Loeschen nichts vernichtet, haelt ihn jetzt der Tag archiv/fix-event-description-truncation (8a8a353) fest. feature/linux-net10 bleibt vorerst stehen und ist mit main identisch. STATUS.md und ROADMAP.md entsprechend nachgezogen: Zweig-Uebersicht, Build gilt jetzt als warnungsfrei, und die drei bestimmenden offenen Punkte sind neu sortiert - der Linux-Erstlauf ist jetzt der groesste Block, der geloeschte API-Schluessel nur noch der Hinweis, dass die KI-Analyse bis zum Hinterlegen eines neuen Schluessels ruht. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
6.7 KiB
Predictalytics — Stand des Projekts
Bestandsaufnahme vom 2026-08-23, erstellt beim Frühjahrsputz. Jede Aussage hier ist gegen den Code geprüft, nicht aus den Plandokumenten übernommen — die waren zu diesem Zeitpunkt durchweg veraltet.
Dieses Dokument beschreibt den Ist-Stand. Was ansteht, steht in
ROADMAP.md; die abgelösten Plandokumente liegen unterdocs/archiv/.
1. Wo wir stehen
Predictalytics analysiert Polymarket-Trader auf ihre Eignung fürs Copytrading. Die Anwendung ist funktional vollständig und läuft im Betrieb: 151.094 Trader und 38,2 Mio. Trades in der Produktivdatenbank (Stand 2026-08-08).
Der Hauptzweig ist main; die Portierung auf .NET 10 und Avalonia ist dort seit dem
2026-08-24 angekommen (402c372). feature/linux-net10 steht auf demselben Stand.
| Zielframework | net10.0, ein einziges für alle Projekte |
| Oberfläche | Avalonia 12.1.1 (Windows + Linux), zusätzlich ein Headless-Modus |
| Datenzugriff | EF Core 9 (bewusst; Pomelo hat keinen EF-10-Provider), 32 Migrationen |
| Tests | 126 grün, 1 bewusst übersprungen |
| Build | fehlerfrei und warnungsfrei |
Aufbau
Predictalytics.Domain 1.321 Z. Entities, Enums, Repository-Interfaces
Predictalytics.Application 3.036 Z. Analytik, Scoring, Kalkulatoren
Predictalytics.Infrastructure 4.966 Z. EF-Kontext, Repositories, Provider (+65 Migrationsdateien)
Predictalytics.Worker 2.449 Z. 13 Hintergrunddienste
Predictalytics.Api 896 Z. Minimal-API-Endpunkte + WebUI (3.247 Z. HTML/JS/CSS)
Predictalytics.Hosting 1.972 Z. Plattformneutraler Kern: Kestrel, Worker, Lizenz, Heartbeat
Predictalytics.Shell 1.305 Z. Avalonia-Bedienhülle
Predictalytics.Application.Tests 3.216 Z. 126 Tests
Predictalytics.Hosting hängt an einem Schwester-Repo: Deploymentcenter muss neben
dem Predictalytics-Checkout liegen, sonst bricht der Build mit einer erklärenden Meldung ab.
2. Was fertig ist
Alles Folgende ist im Code belegt; die Belegstellen stehen in den archivierten Plandokumenten
unter docs/archiv/.
- Kernanalytik (
archiv/UMSETZUNGSPLAN.md, Phase 1): positionsbasierte PnL-Engine nach Average-Cost mit sauberer Behandlung jederTradeSide, marktbasierte Win-Rate, Deep-Dive-Kennzahlen aus echter Preishistorie, Copytrading-Score aus gemessenem Alpha-Verfall gegen das Markt-Tape. - Robustheit (Phase 2): EF-Migrationen statt handgeschriebener
ALTER TABLE, entkoppelte Scoring-Pipeline, Log-Retention, Testprojekt. Alle fünf Bugs aus dem Review-Pass vom 2026-07-01 sind behoben. - Speicher-Haushalt (
archiv/FIXPLAN-G-Speicher.md): budgetabhängiges Retention-Fenster, Burst-Kompaktierung, Per-Kategorie-Edge. - Kategorie-Erkennung (
archiv/FIXPLAN-TODO.md, Teil F): kanonische Tag-Tabelle, Rausch-Filter, Tag-Nachladen für On-Demand-Märkte, Offline-Backfill beim Start. - HF-Trader-Tiering (Teil D):
IngestModemit Hysterese, wöchentliche Biopsie, Aggregations-Buckets. - Web-UI (
archiv/FIXPLAN-UI-Ranglisten.md): Showcase-Sektionen, serverseitige Sortierung und Filterung. - Copytrading-Analytik: Co-Movement samt Clusterung, Strategie-Drift, Edge-Freshness, Copy-Portfolio, Insider-Feed — alle fünf Vorschläge der Roadmap sind umgesetzt und in diesem Zweig enthalten.
- Portierung (
archiv/PLAN-Linux-Portierung.md, Phasen 0–4): .NET 10, extrahierter Hosting-Kern, Avalonia-Shell, abgesicherte Steuerendpunkte, plattformfeste Kultur- und Log-Pfade. Der WinForms-Host ist entfernt. - Betriebsanbindung: Lizenz, Watchdog, UpdateService, Fehler-Stream und Bugtracker laufen alle über das Deployment Center.
3. Was offen ist
Die offenen Punkte stehen vollständig und nach Reihenfolge sortiert in
ROADMAP.md — hier nur die drei, die den Blick aufs Ganze bestimmen:
- Die Portierung ist auf keinem Linux-System je gelaufen. Der Code ist plattformneutral gebaut, die Ende-zu-Ende-Prüfung vom 2026-08-08 lief aber unter Windows. Solange das aussteht, ist „läuft unter Linux" eine Annahme. Roadmap Stufe 2 — der größte offene Block.
- Die Strategie-Klassifikation ist faktisch wirkungslos — zwei Signale, der Großteil
der Trader landet auf
Unknown, und die Logik steht doppelt da. Roadmap 3.1. - Die KI-Analyse ist ohne Schlüssel abgeschaltet. Der alte OpenRouter-Schlüssel ist
entfernt (er war inaktiv); ein neuer gehört in die Umgebungsvariable
OpenRouter__ApiKey, nicht inappsettings.json. Bis dahin überspringt die Anwendung die Analyse mit einer Warnung, alles andere läuft normal. Roadmap 0.1.
4. Zweige
Aufgeräumt am 2026-08-24. Es gibt nur noch zwei, beide auf 402c372:
main— der Hauptzweig, aktuell.feature/linux-net10— identisch mitmain, bleibt vorerst stehen.
Die zehn Feature-Zweige der Analytik- und Portierungsarbeit sind lokal und auf origin
gelöscht. fix-event-description-truncation war der einzige, dessen Commit nie gemergt
wurde (nur sein Inhalt, seit cb58e09); er ist als Tag
archiv/fix-event-description-truncation festgehalten.
5. Bewusst stehengelassen
Beim Aufräumen geprüft und nicht entfernt, weil Löschen hier Funktionsverlust wäre und
nicht Entrümpelung. Dieselbe Liste steht im Anhang der ROADMAP.md, damit sie
nicht versehentlich als Aufgabe wieder auftaucht:
| Was | Warum es bleibt |
|---|---|
Providers/Azuro/AzuroProvider.cs |
Platzhalter mit IsImplemented => false. Die Worker überspringen ihn sauber; er kostet nichts und markiert den Ausbaupfad. |
Providers/Limitless/ (3 Dateien) |
Voll implementierter zweiter Marktplatz mit IsImplemented => true. Wird produktiv nur nicht bespielt. |
Services/CopytradingBacktestHarness.cs (123 Z.) |
Fertig implementierter Latenz-Sweep, per DI registriert, aber von niemandem aufgerufen. Entscheidung steht aus, siehe Roadmap 3.2. |
wwwroot/landing.html, wwwroot/docs.html |
Marketing-Seiten mit Preis-Abschnitt, vom Dashboard aus nicht verlinkt. Passen zur später angedachten Monetarisierung. |
| 65 Migrationsdateien | Die Schemahistorie. Zusammenfassen ginge, ist aber riskant — siehe Roadmap 4.4. |
(Ein hier zuvor notierter Nebenbefund — der Kategorie-Backfill lade beim Start alle Märkte in den Speicher — war in zwei Punkten falsch: er läuft nicht beim Start, sondern nur in der manuellen Aktion „Recalculate All Traders", und die Abfrage ist seit dem 2026-08-24 eingeschränkt. Siehe Roadmap 1.3.)