[GH#548] [Pre-MVP] StrategyRateHz wirklich anwenden statt nur speichern #15

Open
opened 2026-05-19 22:15:31 +02:00 by Max · 0 comments
Owner

Migrated from GitHub #548
Originally created by @Bio1988 on 2026-05-17T13:24:56Z


Context

In den Settings existiert StrategyRateHz, default aktuell 2 Hz. Die Runtime darf zwar Live-Frames erhalten, aber Strategy-Evaluation muss nicht für jedes SDK-Frame laufen.

Problem

Wenn Strategy-Evaluation bei jedem Frame läuft, entstehen unnötige CPU-Last, unnötige Events und unnötige StrategyState-Writes. Das widerspricht dem Ziel, echte Rennperformance nicht zu beeinträchtigen.

Required behavior

  • Strategy-Evaluation default maximal 2 Hz.
  • Bei kritischen Events darf sofort evaluiert werden:
    • Lap increment
    • FuelLevel signifikanter Drop
    • Pit entry/exit
    • Caution/flags transition
    • Session state change
  • Nicht-kritische Frames werden gedroppt oder nur für letzten Snapshot gehalten.

Tasks

  • Prüfen, ob StrategyRateHz aktuell in TelemetryProfileForSettings oder Runtime ignoriert wird.
  • Rate limiter für Strategy-Evaluation einführen.
  • Event-basierten Bypass für kritische Zustandswechsel definieren.
  • Tests mit 60-Hz-Input schreiben: Strategy-Evaluation darf nur ca. 2 Hz laufen.
  • Tests für kritischen Bypass schreiben.
  • Diagnosezähler ergänzen: inputFrames, strategyEvaluations, droppedStrategyFrames.

Definition of Done

  • StrategyRateHz steuert die tatsächliche Evaluationsrate.
  • Default ist 2 Hz.
  • Kritische Events werden nicht verschluckt.
  • Runtime-Diagnostics zeigen, ob Drosselung greift.
Migrated from [GitHub #548](https://github.com/Bio1988/strategy-desktop/issues/548) Originally created by @Bio1988 on 2026-05-17T13:24:56Z --- ## Context In den Settings existiert `StrategyRateHz`, default aktuell 2 Hz. Die Runtime darf zwar Live-Frames erhalten, aber Strategy-Evaluation muss nicht für jedes SDK-Frame laufen. ## Problem Wenn Strategy-Evaluation bei jedem Frame läuft, entstehen unnötige CPU-Last, unnötige Events und unnötige StrategyState-Writes. Das widerspricht dem Ziel, echte Rennperformance nicht zu beeinträchtigen. ## Required behavior - Strategy-Evaluation default maximal 2 Hz. - Bei kritischen Events darf sofort evaluiert werden: - Lap increment - FuelLevel signifikanter Drop - Pit entry/exit - Caution/flags transition - Session state change - Nicht-kritische Frames werden gedroppt oder nur für letzten Snapshot gehalten. ## Tasks - [ ] Prüfen, ob `StrategyRateHz` aktuell in `TelemetryProfileForSettings` oder Runtime ignoriert wird. - [ ] Rate limiter für Strategy-Evaluation einführen. - [ ] Event-basierten Bypass für kritische Zustandswechsel definieren. - [ ] Tests mit 60-Hz-Input schreiben: Strategy-Evaluation darf nur ca. 2 Hz laufen. - [ ] Tests für kritischen Bypass schreiben. - [ ] Diagnosezähler ergänzen: inputFrames, strategyEvaluations, droppedStrategyFrames. ## Definition of Done - `StrategyRateHz` steuert die tatsächliche Evaluationsrate. - Default ist 2 Hz. - Kritische Events werden nicht verschluckt. - Runtime-Diagnostics zeigen, ob Drosselung greift.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Max/strategy-desktop#15
No description provided.