7.2 KiB
7.2 KiB
Codex Worklog
2026-04-20 - Creative Surface kompakter und Preview-FPS-Pruefung
- Geaenderte Dateien:
web/v1/styles.cssweb/v1/app.jscrates/infinity_host/src/runtime.rsdocs/architecture.md
- Fachliche Aenderungen:
- Creative Surface kompakter aufgestellt, damit die 18 Preview-Panels im 6x3-Raster besser vollstaendig sichtbar bleiben.
- Frontend-Preview-Drosselung von ca. 11 fps entfernt und auf eine ruhige
requestAnimationFrame-basierte Taktung mit Host-orientiertem Ziel-FPS umgestellt. - Host-Preview-Schedule von 15 Hz auf 60 Hz angehoben, ohne neue Architektur einzuziehen.
- Dokumentation des Preview-Ziels auf den aktuellen Stand gebracht.
- Gelaufene Tests:
cargo fmt --checkcargo test -q -p infinity_hostcargo test -q -p infinity_host_api --test contract- lokaler API-Check gegen temporaeren Host auf
127.0.0.1:9002mit bestaetigtemengine.preview_hz = 60 - kein echter Browser-Handtest in dieser CLI-Umgebung moeglich
- Bewusste Abweichungen zur Python-Version:
- Kein Canvas-Preview-Rewrite in diesem Schritt; die bestehende DOM/CSS-Preview bleibt erhalten und wird nur verschlankt sowie render-seitig entdrosselt.
2026-04-20 - Diskretere Preview-Wirkung und weniger Preview-Clutter
- Geaenderte Dateien:
crates/infinity_host/src/scene.rscrates/infinity_host_api/src/server.rsweb/v1/app.jsweb/v1/index.html
- Fachliche Aenderungen:
- Normale Pattern-Intensitaet vor Preview-Ausgabe auf 10%-Stufen quantisiert.
- Normales Preview-Smoothing standardmaessig stark reduziert; nur
breathingdarf weiterhin ueber den bestehendenfade-Pfad weich bleiben. - Preview-Stream im WebSocket sendet Preview nur noch bei geaendertem Payload; der bestehende Snapshot-Heartbeat bleibt fuer den API-Vertrag erhalten.
- Master Brightness in den Header verschoben; linke Brightness-Sektion zeigt nur noch pattern-spezifische Helligkeitsparameter.
- Den sichtbaren
speed-Slider aus der Creative Surface entfernt; BPM oben plustempo_multiplierbleiben die Geschwindigkeitsbedienung.
- Gelaufene Tests:
cargo fmt --checkcargo test -q -p infinity_hostcargo test -q -p infinity_host_api --test contract
- Bewusste Abweichungen zur Python-Version:
- Keine vollstaendige Python-Pattern-Engine-Portierung; stattdessen gezielte Diskretisierung und Stream-Beruhigung innerhalb der bestehenden Rust-Host-/Web-Architektur.
- Kein echter Browser-Handtest in dieser CLI-Umgebung moeglich.
2026-04-20 - Creative Surface Redesign und Control-Fix (gezielt)
- Geaenderte Dateien:
web/v1/index.htmlweb/v1/app.jsweb/v1/styles.csscrates/infinity_host/src/scene.rs
- Fachliche Aenderungen:
- Redundante globale Brightness-Steuerung in der linken Spalte entfernt; Master Brightness bleibt oben im Header.
- Sichtbaren
speed-Slider in der Creative Surface entfernt; Bedienung ueber BPM oben plustempo_multiplierin den Pattern-Parametern. palette,color_mode,direction,mirrorals feste Controls (keine freien Textfelder) in der Web-UI beibehalten/abgesichert.- Palette auf zwei feste Gruppen mit den vorgegebenen Namen und Hex-Werten umgestellt; Host-Palette-Mapping auf dieselben IDs umgestellt.
- Layout gezielt entkapselt: weniger harte Rahmen, leichtere Rails, kompaktere Topbar, mehr zusammenhaengende Arbeitsflaeche.
- Preview-Grid auf feste 6 Spalten gesetzt und Tiles quadratisch gemacht (
aspect-ratio: 1 / 1) fuer ein klares 3x6-Raster.
- Gelaufene Tests:
cargo fmt --checkcargo test -q -p infinity_hostcargo test -q -p infinity_host_api --test contract
- Browser-Handtest:
- Versuch via lokalem Headless-Firefox auf
127.0.0.1:9002ist in dieser Umgebung fehlgeschlagen (cannot open display: :0/ Firefox Headless-Crash).
- Versuch via lokalem Headless-Firefox auf
- Bewusste Abweichungen zur Python-Version:
- Die neue, fest vorgegebene Palette-Liste ersetzt die alten Python-Palettenamen; das ist eine inhaltliche Vorgabe dieses Arbeitsschritts.
2026-04-20 - Palette ersetzen, linken Brightness-Slider entfernen, linke Rail entzerren
- Geaenderte Dateien:
web/v1/index.htmlweb/v1/app.jsweb/v1/styles.css
- Fachliche Aenderungen:
- Die Creative-Surface-Palette bleibt auf die kuratierte WS2812-Liste mit exakt vorgegebenen Namen und Hex-Werten beschraenkt.
- Den unteren Brightness-Bereich in der linken Spalte vollstaendig entfernt; globale Helligkeit bleibt ausschliesslich im Header.
- Den dynamisch aus Host-Parametern kommenden
brightness-Control in der linken Rail ausgefiltert. - Die linke Rail moderat verbreitert und Parameterfelder so nachgezogen, dass Dropdowns, Labels und Farbwerte weniger gequetscht sind.
- Gelaufene Tests:
cargo fmt --checkcargo test -q -p infinity_hostcargo test -q -p infinity_host_api --test contract- lokaler CLI-Smoke gegen temporaeren Host auf
127.0.0.1:9002via/api/v1/stateund/api/v1/preview
- Bewusste Abweichungen zur Python-Version:
- Keine; dieser Schritt korrigiert nur die Web-Darstellung und blendet den global redundanten Brightness-Slider links aus.
2026-04-20 - Technical Surface null-safe gegen fehlende recent_events
- Geaenderte Dateien:
web/v1/technical.jscrates/infinity_host_api/tests/contract.rsdocs/codex_worklog.md
- Fachliche Aenderungen:
- Technical Surface gegen unvollstaendige oder startende Snapshot-Daten robuster gemacht.
recent_events,system,technical,nodesundpanelswerden in der UI jetzt ueber null-safe Helper mit Fallbacks gelesen.- Direkter Zugriff auf
snapshot.recent_events.map(...)entfernt, damit/technicalnicht mehr crasht, wenn das Feld fehlt. - Contract-/UI-Smoke-Test ergaenzt, der absichert, dass das ausgelieferte
technical.jsden Guard fuer fehlenderecent_eventsenthaelt, waehrend/api/v1/statedas Feld weiterhin weglassen darf.
- Gelaufene Tests:
cargo fmt --checkcargo test -q -p infinity_host_api --test contract- lokaler Host-Smoke auf
127.0.0.1:9011mit erfolgreichem Abruf von/und/api/v1/state
- Bewusste Abweichungen zur Python-Version:
- Keine; das ist ein reiner Stabilitaets-/Robustheitsfix in der bestehenden Web-Oberflaeche.
2026-04-20 - Browser-Smoke-Runner und Output-Disable-Fix
- Geaenderte Dateien:
web/v1/technical.jscrates/infinity_host_api/tests/contract.rsscripts/codex_browser_smoke.shdocs/codex_worklog.md
- Fachliche Aenderungen:
- Technical-Output-Controls gegen Polling-/Apply-Rennen stabilisiert, indem waehrend
saveOutputSettings()einoutputSaving-Zustand gesetzt wird. - Output-Controls werden waehrend des Speicherns kurz deaktiviert und der Draft wird in dieser Zeit nicht von Polling-Snapshots ueberschrieben.
- Contract-Test ergaenzt, der absichert, dass
output_enablednach vorherigem Aktivieren wieder sauber auffalsegesetzt werden kann. - Kleinen lokalen Browser-/Route-Smoke-Runner fuer Codex angelegt, der eine Kurzinstanz startet und
/,/technicalsowie/technical.jsselbst prueft.
- Technical-Output-Controls gegen Polling-/Apply-Rennen stabilisiert, indem waehrend
- Gelaufene Tests:
cargo test -q -p infinity_host_api --test contractscripts/codex_browser_smoke.sh 9012
- Bewusste Abweichungen zur Python-Version:
- Keine; der Schritt behebt einen Web-Workflow-Bug und verbessert nur den lokalen Debug-Pfad.