Richard
9effc43206
@
...
R6: Security - Master-Key + AES-256-GCM at-rest + TLS-Warnung
- Core/Security/SecretProtection: AES-256-GCM at-rest, Master-Key aus env IBKRTRADER_MASTER_KEY
bzw. gitignorierte master.key; selbstheilendes enc:v1:-Format; Passthrough ohne Key (mit Warnung)
- Core/Security/EncryptedStringConverter (EF-ValueConverter, bereit fuer kuenftige Credentials)
- Program: ConfigureSecretProtection (Master-Key laden) + WarnIfDbTlsNotEnforced (SslMode) beim Start
- master.key gitignored
- Tests: SecretProtection (Round-Trip/Idempotenz/Passthrough/Tamper/Key-Fehler) -> 56/56 gruen
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
@
2026-07-28 19:53:21 +02:00
Richard
8f44c0fd82
@
...
R2: Generic Host + Modul-Vertrag + Shell-UI (PolytraderSharp-Konzept)
- Core/Modularity: neuer IModule (Name, DbPrefix, RegisterServices(services,config),
RegisterUi(host,sp), StartAsync/StopAsync, GetActivationBlocker) + ModuleView
+ IModuleUiHost + WindowMenu. Alte IModule/ModuleRegistry/WindowManager/ModuleFormBase entfernt.
- Program.cs: Host.CreateDefaultBuilder + IConfiguration (appsettings.json/.Local.json);
Core-Services registriert, Module via RegisterServices, Views via RegisterUi.
- UI: ShellUiHost (Einzelinstanz-Fenster + Fenster-Menue), LauncherForm als Shell
(Buttons je View), Core-Views Logs/Settings/Workers als eigene Fenster.
- CongressTrading auf neuen Vertrag; Worker als IWorker registriert.
- --smoke-ui Headless-Test (konstruiert jede View + Launcher).
- appsettings.Local.json gitignored.
- Tests angepasst -> 30/30 gruen; Build + Smoke-UI + App-Start verifiziert.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
@
2026-07-28 00:24:00 +02:00
Richard and Claude Opus 4.8
ebeb035e92
Initial commit: IBKRTrader
...
.NET WinForms-Anwendung (Core, Modules/CongressTrading, UI).
Enthaelt .gitignore und settings.example.json als Konfigurationsvorlage.
Echte settings.json mit Zugangsdaten ist bewusst ausgeschlossen.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-26 18:19:47 +02:00