Skip to content

Hold paused show frames, catch up clocks and enforce profiling thresholds - #213

Merged
reno- merged 1 commit into
mainfrom
codex/show-clock-safety
Oct 19, 2026
Merged

reno- merged 1 commit into
mainfrom
codex/show-clock-safety

Conversation

@reno-

@reno- reno- commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Pause and Escape previously left ISF feedback/FRAMEINDEX and external input pictures advancing. Render stalls also advanced shader TIME by at most 250 ms and show/media clocks by at most 2 s, accumulating drift. Snapshot composition fades advanced in wall time while layer fades followed show speed.

This holds source/effect frames at Pause or speed zero, latches Escape until explicit GO/Play/recall or releasing Pause, and preserves an independent operator Pause. Blackout and manual output faders remain available in wall time. Running show/media clocks and shader TIME catch up to elapsed wall time; shader TIMEDELTA keeps a bounded integration step. Missed simulation frames are not replayed. Snapshot composition and layer fades now share show time.

The endurance analyzer adds --check with nonzero exit on callback/lock budget violations, control drops, decoder errors, lost or incomplete telemetry. It reports peak tracked memory and lifetime callback/lock percentiles, rejects inactive audio and counter resets, and requires a fresh process for qualification.

Validation: application and engine tests compile on macOS; 19 local CPU/widget CTest areas pass after rebuilding all targets, the clock regressions also pass ASan/UBSan (leak detection disabled), and seven analyzer tests pass, including CLI exit codes. New GPU regressions cover persistent feedback hold/resume, external-input consumption, paused snapshot composition fades, blackout while held, and TIME versus TIMEDELTA across 650 ms / 3.1 s stalls. Linux CI passes all 65 CTest tests, including show_hold and the packaged application smoke test. Workspace ASan, ThreadSanitizer, the UI scenario and fuzzing also pass. Windows engine tests have passed and packaging is in progress; macOS engine tests are still running. The PR remains draft pending the remaining platform results. The exhaustive ISF library render remains disabled.

The single docs/README.md removes the completed show-control definition task and retains actual outstanding profiling, physical endurance/receiver acceptance and color transforms. No hardware performance or receiver A/V claim is made.

@reno-
reno- marked this pull request as ready for review October 19, 2026 14:15
@reno-
reno- merged commit a7bf10e into main Oct 19, 2026
12 checks passed
@reno-
reno- deleted the codex/show-clock-safety branch October 20, 2026 11:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant