Richard and Claude Opus 4.8
43fdc9d181
Docs: Phase 5.1/5.2 abgeschlossen (Modulgrenze via TradingState-Split gezogen)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 20:15:44 +02:00
Richard and Claude Opus 4.8
f8d395b2a3
Phase 5.2: TradingState-Split (Core-State vs. CopyTradingState)
...
- Core TradingState (in Core): globale Schalter, Accounts, MarketCache, GlobalPnl.
- Neuer CopyTradingState (im Modul): Traders, MasterTraderPositions,
TraderAnalyticsCache, TotalCopyTrades/GetNextTradeId, PendingOrderTimestamps,
SixSharesMinimum.
- 10 Konsumenten umgestellt (Program, frm_main, CopyTradingEngine,
TraderMonitor, Alchemy, WSS, Snapshot, StartupHydration, beide Analytics-Jobs):
Modul-Felder von _state.* auf _copyState.* umgeleitet, CopyTradingState via DI.
- Rein mechanische Feld-Umleitung, keine Logikänderung. Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 20:09:50 +02:00
Richard and Claude Opus 4.8
55050a19e5
Phase 5.1: Modul-Modelle in das CopyTrading-Modul
...
- TrackedTrader, TraderAnalyticsResult, MasterTraderHistoryRecord nach
src/PolyTrader.Modules.CopyTrading/Models/ (Namespace beibehalten).
- Ungenutzte Shim-/DB-Usings entfernt (BsonId kommt transitiv via Core).
- Build bestätigt: kein Core-Code referenziert diese Modelle (saubere Grenze).
- Build 0 Fehler. Voraussetzung für den CopyTradingState (5.2).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 19:59:40 +02:00
Richard and Claude Opus 4.8
b18f013f20
Docs: Phase 4 abgeschlossen (soweit ohne TradingState-Split möglich)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 19:53:26 +02:00
Richard and Claude Opus 4.8
0ffc0413c8
Phase 4.7: MullvadVpnService + ThreemaService in den Core
...
- Beide Services nach Core (nutzen nur TerminalLogger/ServerSettings/JobManager,
keine DB/TradingState/Modul-Typen).
- Threema-ProjectReference von App -> Core umgehängt (App nutzte die Lib nur
über ThreemaService).
- Microsoft.Extensions.Hosting.Abstractions als Core-Paket (BackgroundService).
- Toten Stub services/mullvad.cs gelöscht; Mullvad-DB-Usings entfernt.
- Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 19:51:52 +02:00
Richard and Claude Opus 4.8
9c068b448e
Phase 4.6a: CopySignal + PolymarketApiService in den Core
...
- CopySignal als generischer Core-Typ (Namespace PolyTraderSharp.Models beibehalten).
- PolymarketApiService nach Core (nutzt nur TerminalLogger + HttpClient,
keine DB); ungenutzte DB-Usings entfernt.
- Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 19:47:28 +02:00
bergm and Claude Opus 4.8
827193c774
Docs: Phase 4.3-4.5 abgeschlossen, CopySignal-Core-Entscheidung festgehalten
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 18:41:50 +02:00
bergm and Claude Opus 4.8
c88eac5f8a
Phase 4.5: Startup-Reihenfolge-Fix (State-Hydration vor Trading-Services)
...
- Neuer StartupHydrationService (IHostedService), als ERSTER HostedService
registriert: hydriert Accounts (+ Demo-Positionen via Repos) und Trader
(trackers-Collection) in den TradingState, bevor die Trading-Services
ihre ExecuteAsync starten.
- frm_main.LoadDatabaseAndState() + beide Aufrufe entfernt (verhinderte
doppelte, überschreibende Hydration nach Service-Start).
- Behebt den Race, bei dem Services gegen leeren State anliefen.
- Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 18:38:47 +02:00
bergm and Claude Opus 4.8
a1ce3fcbbc
Phase 4.4: IPolyTraderModule-Contract im Core
...
- Modul-Vertrag (Name, DbPrefix, RegisterServices, StartAsync/StopAsync)
unter src/PolyTrader.Core/Modularity/.
- UI-Teil (RegisterUi/IModuleUiHost) bewusst auf Phase 5 vertagt.
- Microsoft.Extensions.Configuration.Abstractions als Core-Paket.
- Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 18:35:53 +02:00
bergm and Claude Opus 4.8
8c126cd1ba
Phase 4.3: ServerSettings in den Core verschoben
...
- ServerSettings-Model nach src/PolyTrader.Core/Models/ (Namespace beibehalten).
- Keine DB-Abhängigkeit; reines Verschieben. Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 18:34:26 +02:00
bergm and Claude Opus 4.8
168c999fe2
Docs: Phase 4 Fortschritt (4.1/4.2) + CopySignal-Entanglement dokumentiert
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 17:00:20 +02:00
bergm and Claude Opus 4.8
eebe992feb
Phase 4.2: PolymarketClobClient in den Core verschoben
...
- CLOB-Client nach src/PolyTrader.Core/Services/ (Namespace beibehalten).
- Nutzt keinerlei DB/Shim (verifiziert) -> DB-Usings entfernt.
- Nethereum.Web3 6.1.0 als Core-Paket (EIP712-Signing).
- Reines Verschieben, KEINE Logikänderung (clob.md); Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:58:44 +02:00
bergm and Claude Opus 4.8
9039af8d5e
Phase 4.1: Basis-Infrastruktur in den Core (Logging, JobManager)
...
- TerminalLogger, JobManager, JobStatusRow nach Core verschoben
(Namespaces PolyTraderSharp.Services/.Models beibehalten).
- TerminalLogger: ungenutzte DB-Usings entfernt.
- Toten Stub services/logging.cs (internal class Logging) gelöscht.
- Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:53:38 +02:00
bergm and Claude Opus 4.8
f1a5541b67
Docs: Phase 3d (Hot-Path) als abgeschlossen markiert
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:42:40 +02:00
bergm and Claude Opus 4.8
0c6fc6a2af
Phase 3d (2/2): CopyTradingEngine auf Repositories umgestellt
...
- MarketCache-Preload + Market-Hydration -> IMarketRepository
(GetActive/FindByTokenId/Upsert).
- Demo-/Live-Positionen -> IPositionRepository (UpsertDemo/UpsertLive/DeleteDemo).
- Account-Persistenz -> IAccountRepository.
- _db (IMongoDatabase) vollständig aus CopyTradingEngine entfernt.
- Verhalten unverändert; Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:42:18 +02:00
bergm and Claude Opus 4.8
a0e367e645
Phase 3d (1/2): TraderMonitorService auf Repositories umgestellt
...
- 8 Positions-Zugriffe (open_positions_{id}) -> IPositionRepository
(FindLive/UpsertLive/DeleteLive).
- 1 Market-Upsert -> IMarketRepository.
- closed_trades bleibt auf _db (ClosedTrade-Repo folgt in Phase 5).
- Verhalten unverändert (Repos bilden Shim-Semantik 1:1 nach); Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:39:28 +02:00
bergm and Claude Opus 4.8
41c43fa3aa
Docs: Phase 3 Fortschritt (3a-3c erledigt, Hot-Path offen)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:34:54 +02:00
bergm and Claude Opus 4.8
7197f9b31c
Phase 3c: Unkritische Call-Sites auf Repositories umgestellt
...
- MarketSyncService: markets-Zugriffe -> IMarketRepository (kein _db mehr).
- PolymarketWssClient: demo_positions -> IPositionRepository,
accounts -> IAccountRepository (closed_trades bleibt vorerst auf _db,
ClosedTrade-Repo folgt in Phase 5).
- Build 0 Fehler.
Hot-Path (CopyTradingEngine, TraderMonitorService) und frm_main-UI bewusst
noch NICHT migriert (Schritt B / Phase 5).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:34:28 +02:00
bergm and Claude Opus 4.8
ed5d6e35e0
Phase 3b: Repository-Schicht im Core (Interfaces + Mongo-Impl + DI)
...
- Interfaces: IAccountRepository, IMarketRepository, IPositionRepository
(IPositionRepository kapselt das Collection-per-Account-Muster).
- Mongo-Implementierungen bilden die bisherige Shim-Semantik 1:1 mit direkten
MongoDB.Driver-Aufrufen nach (kein App-Shim-Bezug im Core).
- AddCorePersistence()-Erweiterung + Registrierung in Program.cs.
- Noch keine Call-Sites umgestellt; Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:29:51 +02:00
bergm and Claude Opus 4.8
8b3264f240
Phase 3a: Core-Domänenmodelle in den Core verschoben
...
- AccountState, Position, MarketData nach src/PolyTrader.Core/Models/
(Namespace PolyTraderSharp.Models beibehalten → keine Consumer-Änderung).
- AccountState: ungenutzte usings (MongoDB.Driver, PolyTraderSharp.Extensions)
entfernt (Core darf App-Shim nicht referenzieren).
- MongoDB.Driver 2.24.0 als Core-Paket (für BsonId-Attribute).
- Build 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:27:28 +02:00
bergm and Claude Opus 4.8
e2c01432cd
Docs: Phase 2 im Umsetzungsplan als abgeschlossen markiert
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:23:00 +02:00
bergm and Claude Opus 4.8
e312fbbaa7
Phase 2: Konfiguration externalisieren (appsettings.json + IOptions)
...
- Neue Core-Klasse DatabaseOptions (Sektion "Database"), gebunden via IOptions.
- appsettings.json im App-Projekt (Mongo-Connection + DB-Name), wird in den
Output kopiert.
- Program.cs: hart codierte "mongodb://localhost:27017" und "PolyTraderDB"
durch konfigurierte Werte ersetzt.
- Startup-Cleanup-Hack aus dem Kopf von Main() entfernt und gekapselt nach
dem Host-Build über die konfigurierte DB neu verankert.
- Solution-Build 0 Fehler; appsettings.json im Output verifiziert.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:22:37 +02:00
bergm and Claude Opus 4.8
119697a0c0
Docs: Phase 1 im Umsetzungsplan als abgeschlossen markiert
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 16:19:22 +02:00
bergm and Claude Opus 4.8
4f130ff6dd
Phase 1: Multi-Projekt-Gerüst (Core / Modules.CopyTrading / App)
...
- WinForms-Projekt umbenannt zu PolyTrader.App (AssemblyName=PolyTrader.App,
RootNamespace bleibt PolyTraderSharp → .resx/Namespaces intakt).
- Neue leere Class-Libraries: src/PolyTrader.Core, src/PolyTrader.Modules.CopyTrading
(net8.0-windows; CopyTrading mit UseWindowsForms für spätere UI-Tabs).
- Referenzen: App → Core + CopyTrading; CopyTrading → Core; Core → nichts.
- App-csproj: src/** vom Globbing ausgeschlossen (keine Glob-Kollision).
- Noch KEIN Code verschoben — App unverändert lauffähig.
- Solution-Build: alle 4 Projekte, 0 Fehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 15:14:26 +02:00
bergm and Claude Opus 4.8
cc95034f2f
Docs: Phase 0 im Umsetzungsplan als abgeschlossen markiert
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 13:21:59 +02:00
bergm and Claude Opus 4.8
030ad8075c
Phase 0: .claude/settings.local.json von Versionierung ausschließen
...
Maschinenlokale Claude-Code-Einstellungen (ändern sich laufend) gehören
nicht ins Repo.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 13:21:26 +02:00
bergm and Claude Opus 4.8
f76ad737d6
Phase 0: Alt-Backups (.bak) und tote Stub-Klassen entfernt
...
- 11 *.bak-Dateien entfernt (weiterhin im Baseline-Commit rekonstruierbar)
- Tote Stubs entfernt: services/database.cs, services/settings.cs,
polymarket/{blockchainlistener,polymarket-api,trademanager}.cs
(leere, unreferenzierte Klassen)
- Debug-Build verifiziert: 0 Fehler
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 13:20:59 +02:00
bergm and Claude Opus 4.8
475d396f80
Baseline: Ausgangszustand vor Modularisierung
...
Erster Commit des bestehenden monolithischen WinForms-Copytraders,
inklusive der Alt-Backups (*.bak), damit diese dauerhaft in der
Historie rekonstruierbar bleiben. Threema-Lib unter libs/ wurde
vendored (nested .git entfernt).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 13:16:16 +02:00