Warenverteilung: Controller und sichere Replays

PR 26 ist mit allen 17 erfolgreichen CI-Prüfungen bereit und wurde am 1. Oktober 2026 an Opus zur Prüfung und Integration übergeben.

Pull Request 26 · Branch sol/goods-distribution-controller
Exakt getesteter Commit: 90a88472bdba8e27cacc0f90ca0e4f70f65aa01e.

Was sich verbessert

Beim Betrachten eines Replays konnten Controller, Mausrad und direkte Klicks auf Verteilungsbalken die angezeigten Prioritäten verändern. Beim Schließen erschien dadurch eine falsche Warnung über ungespeicherte Änderungen. Das Fenster stellt jetzt sofort die aufgezeichneten Werte wieder her. Standardwerte bleiben im Replay gesperrt; Hilfe und Registerwechsel bleiben verfügbar.

Nachweise

Alle 17 Prüfungen des genannten Commits sind erfolgreich: Linux, macOS und Windows, Debug und Release, GCC/Clang, Coverage, Formatierung und Clang-Tidy. Direkte Belege: Unit tests – erfolgreich und Static analysis – erfolgreich.

Der eigene GCC12-Debug-Build mit Warnungen als Fehler besteht die vollständige Splitscreen-Suite: 504 Testfälle und 180.980 Assertions. Davon betreffen 19 Fälle mit 130.236 Assertions diese Warenverteilung. Sie betreten das Fenster über echte Controller-Eingaben im laufenden lokalen Netzwerkspiel und prüfen alle acht Kombinationen von Wein-, Leder- und Köhler-Addons, sämtliche Register und Grenzen, Standardwerte, erneutes Öffnen, Mausbedienung und Timer-Versand. Geänderte Prioritäten müssen nach dem echten Server-Rundlauf im Spielzustand ankommen.

Acht selbst erzeugte Aufzeichnungen prüfen gesperrte Replay-Eingaben, aufgezeichnete Werte, Hilfe, Schließen ohne falsche Warnung und fehlerfreien Replay-Abschluss. Temporäre Einstellungen werden auf normalen und außergewöhnlichen Ausgängen ausdrücklich zurückgesetzt und noch vor der Fixture-Zerstörung überprüft. Es wird kein zweites Singleton erzeugt.

Die Tests erkennen den Fehler

Mit der alten Produktion scheitern alle acht ausgeführten Replay-Fälle an 15.751 vorgesehenen Assertions. Ein absichtlich nur Standardwerte versendender Befehl scheitert in zwei ausgeführten Fällen am tatsächlichen Spielzustand. Die alte Hilfe-Sperre scheitert im ausgeführten Hilfe-Test. Anschließend wurde die Produktion bytegenau wiederhergestellt, neu gebaut und die vollständige Debug-Suite erfolgreich wiederholt.

Die ausschließlich lesende Prüfung mit exakt gpt-6.1-sol fand keine blockierenden Punkte. Formatierung, Repository-Prüfungen, Diff-Prüfung und JARVIS-TypeScript-Prüfung waren erfolgreich.

Übergabe und Grenzen

Der Entwurfstatus ist entfernt, die PR-Beschreibung enthält den exakten getesteten Commit und beide erfolgreichen Workflows. GitHub meldete den Branch als konfliktfrei integrierbar. Opus erhält die vollständige Übergabe über die Report-API (Auftrag t_mupki43l2abve9); Sol hat seine Dateireservierungen freigegeben und PR 26 in den ausschließlich getesteten Abschlussbestand aufgenommen. Zehn vorbereitete, voneinander getrennte Arbeitspakete bleiben erhalten.

Sol hat den PR nicht zusammengeführt und nicht auf master/main gepusht. Die Änderung ist erst nach Opus’ Integration und einer Veröffentlichung bei Spielern verfügbar. Diese Nachweise stammen aus automatisierten Tests mit realen Eingabe- und Netzwerkpfaden; eine Prüfung auf Jans Steam Deck ist damit nicht behauptet.