RichardandClaude Opus 5 c1e13f5441 WebUI: Server-Einstellungen ohne Geheimnisse bearbeiten
Umsetzung von #561.

Entscheidung Richard, 13.09.2026: Alles, was keine Geheimnisse beruehrt, soll
ueber das WebUI gehen; Geheimnisse ausschliesslich im Desktop.

Eine ausdrueckliche Freigabeliste (ServerSettingsCatalog) statt Reflection. Der
Desktop zeigt per Reflection alles, was ServerSettings hat. Uebernaehme das
WebUI das, stuende jedes kuenftige Feld automatisch im Netz, auch ein
Geheimnis.

Bearbeitbar, je Feld mit Pruefung:
- Farbschema und Zeitzone: nach Neustart
- VPN an/aus und VPN-Standort: sofort
- Blockchain-Listener: nach Neustart
- Polymarket-WSS: sofort
- Watchdog an/aus, Source, Instance und Intervall: sofort

"Sofort" und "nach Neustart" sind am Code belegt, nicht am Feldnamen geraten.
Zeitzone und Blockchain-Listener werden nur beim Start gelesen, das Farbschema
haelt der ThemeManager.

Nur im Desktop, Aenderungsversuch 403 und protokolliert:
- Geheimnisse: Mullvad-Account, Polygon-RPC-URL (enthaelt den Alchemy-Key),
  Watchdog-Token, Lizenzschluessel
- Watchdog-URL: an diese Adresse geht der Watchdog-Token, wer sie aendert,
  bekommt ihn
- Mullvad-CLI-Pfad: dieses Programm wird ausgefuehrt

Von den Geheimnissen zeigt das WebUI nur, ob sie gesetzt sind. OpenRouter- und
Master-Key werden dafuer nicht gelesen.

Gefunden dabei: MullvadVpnService baut die Kommandozeile als eine Zeichenkette
("relay set location <Wert>"). Der VPN-Standort nimmt deshalb nur Mullvad-
Kennungen an (cz, cz-prg). "cz account login 999" wird abgelehnt, ein Test
haelt das fest. Source und Instance gehen als JSON ans Deploymentcenter und
sind auf Kennungszeichen begrenzt.

POST prueft alle Werte zuerst und schreibt dann alles oder nichts, ueber
ServerSettingsFile. Danach zieht er den laufenden Stand nach: das Singleton,
MullvadVpnService.ReloadSettings und WatchdogHeartbeatService.ReloadSettings.

Desktop - bisher schrieb er eine WebUI-Aenderung still zurueck:
Die Einstellungen wurden einmal beim Oeffnen geladen, und "Speichern",
"Watchdog-Token setzen" und "Lizenzschluessel setzen" schrieben jeweils das
ganze alte Objekt zurueck. Jetzt:
- Speichern vergleicht innerhalb der Dateisperre den Dateistand vom Laden und
  verweigert, wenn sich die Datei inzwischen geaendert hat.
- Token und Lizenzschluessel schreiben nur noch ihr eigenes Feld.
- Eine unlesbare Datei sperrt das Speichern, statt Vorgaben zu zeigen, die
  beim Speichern die Schluessel geloescht haetten.

Die WebUI-Ansicht zeigt je Feld den Wirkungsvermerk und schickt nur, was
geaendert wurde. Der Leak-Test legt seine Kanarienwerte jetzt auch in die
Einstellungsdatei, sonst liefe die neue Route gegen eine leere Datei.

Nicht durch Unit-Tests abgedeckt: die Desktop-Aenderung an SettingsWindow
(Oberflaechenklasse). Sie wird mit der Sichtpruefung auf der VM abgenommen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-13 14:12:00 +02:00

Doku (Predictalytics / PolyTraderSharp)

Zentrale Ablage für Roadmap, Leitfäden, Fach- und Business-Dokumente. Code-gekoppelte Pläne bleiben bewusst in diesem Repo (statt in einem separaten Docs-Repo), damit „Plan → umsetzende Commits" nachvollziehbar bleibt.

Wo anfangen?

ROADMAP.md Das Steuerungsdokument. Alle Vorhaben, Status, Reihenfolge — was als Nächstes zu tun ist und was bewusst liegen bleibt
PROJEKTSTAND.md Der Ist-Zustand: Architektur, Kennzahlen, Modul-Stand

Kurzformel: PROJEKTSTAND = was ist. ROADMAP = was kommt.

Leitfäden (vor der Arbeit lesen)

Struktur

  • archiv/ — die Umsetzungspläne und Konzepte, aus denen die Roadmap zusammengeführt wurde. Nicht tot: weiterhin die Bauanleitungen mit Code-Bezügen, Akzeptanzkriterien und Begründungen. Nur der Status darin ist eingefroren — dafür gilt ausschließlich die Roadmap. Details in archiv/README.md.
  • sicherheit/ — Sicherheitskonzept und die wiederkehrende Audit-Checkliste. Die offenen Kästchen in Abschnitt 6 sind eine Vorlage für jedes Release, kein Rückstand.
  • steuer/ — Steuer-/Buchhaltungs-Fachdokumente und Vorlagen, auch zum Weitergeben an Berater.
    • Accounting-US-Tax-Questionnaire.md — Fragebogen (EN) für die US-Steuerberaterin (Florida LLC).
  • pruefplaene/ — Prüf-/Validierungspläne zum Abarbeiten.
    • PRUEFPLAN-Linux-Betrieb.md — erster Lauf auf einer Linux-VM (Roadmap A4a).
    • PREDICTALYTICS-PRUEFPLAN-Master-Auswahl.md — Master-Trader-Auswahl (separates Predictalytics-Projekt).
  • ideen/ — frühe Ideen, bevor sie zu einem Konzept reifen.
  • UI-SPEZIFIKATION-WinForms.md — Beschreibung der abgelösten Oberfläche. Vergleichsvorlage für die Abnahme A5.
  • IDEENSAMMLUNG-Feldtest-2026-08.md — Beobachtungen aus dem laufenden Einsatz. Nur sammeln, Umsetzung später.

Konventionen

  • Eine Statusquelle. Fortschritt wird ausschließlich in der Roadmap gepflegt, nirgends sonst. Bis zum 22.08.2026 stand der Status in einem Dutzend Dokumenten — mehrere davon waren wochenlang falsch.
  • Plandokument und Code wandern im selben Commit. Wer etwas abhakt, committet die Roadmap mit.
  • Neue Detailpläne: UMSETZUNGSPLAN-*.md → archiv/umsetzungsplaene/, und in der Roadmap verlinken. Neue Konzepte analog nach archiv/konzepte/.
  • Übergreifende, an Externe weitergebbare Dokumente können später in ein eigenes Predictalytics-Docs-Repo ausgelagert werden (Ordner rausziehen genügt) — für jetzt bewusst hier gebündelt.
S
Description
No description provided
Readme
2.3 MiB
Languages
C# 87%
JavaScript 6.5%
HTML 4.6%
CSS 1.3%
PowerShell 0.6%