Skip to content

Fix #1016: prepare selected sources within the Program deadline - #1018

Merged
iamfatness merged 37 commits into
mainfrom
codex/source-readiness-deadline
Oct 23, 2026
Merged

iamfatness merged 37 commits into
mainfrom
codex/source-readiness-deadline

Conversation

@iamfatness

@iamfatness iamfatness commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Fix #1016: Program could commit an older source image even when the selected image completed preparation before the original output deadline. Reserve one existing Program pool credit for the immutable source/Take choice and compose it on the next production tick, retaining the original slot, deadline, two-frame latency and bounded capacity. Exact-source failures remain failures. The first real consumer is the buffered D3D11 Program compositor.

This also addresses qualification blocker #1017: shared_ptr::use_count() was being used as the snapshot pool's reuse handoff. Explicit reader lease retirement now supplies the acquire/release synchronization while retaining the fixed pool and nonblocking refusal under reader pressure.

Validation so far: the initial prototype passed all 1,841 Windows Release native tests with real capture enabled, including causal older-picture controls and cancellation/expiration cases. That run preceded the final shipping-default switch, picture-probe additions and snapshot lease fix, so it is not final-head acceptance. Five picture-judge fixtures pass, including advancing Program counters with stale camera pictures, a frozen screen and a frozen ordinary camera image. The combined 91b9fb0 build subsequently passed all 1,844 Windows Release native tests with real capture enabled, all 55 compiled UI checks, and the bundled runtime probe. The hosted ThreadSanitizer job also passed. Installed workload remains pending.

The independent registered OS camera receiver can now sample declared picture coordinates. Camera identity bands are painted in captured pixels before GPU preparation, separately from Program output markers; an independently logged desktop stimulus exercises moving screen capture. Actual recorded/received source pictures, source cadence, original GPU deadlines, Program plus eight Zoom ISO recordings, and mapped 60 Hz physical display delivery must all be checked.

Draft includes the #1008 changes plus these qualification fixes. It targets main to exercise the required CI workflows; do not merge either PR or publish a beta until the installed full-workload gate passes. See docs/qa/source-composition-deadline-2026-10-21.md for retained evidence and scope. No full-workload pass is claimed.

@iamfatness
iamfatness changed the base branch from codex/graphics-local-sources to main October 22, 2026 02:46
iamfatness and others added 6 commits October 22, 2026 08:12
Owner ruling 2026-10-22. Program/ISO/OS-camera/stream per-frame identity over
the 30-minute workload is the release gate, zero tolerance. The on-screen
Studio cells are DWM-composed windowed surfaces; on a mixed-refresh desk
Windows omits a frame at the monitor-clock beat for every application (the
app-less control reproduced it with the media core stopped), so a
zero-omission desktop check cannot pass a soak and no longer blocks.

desktop-picture-cadence.py v2 reports the cells against: longest hold
<= 100 ms, omission ratio <= 1 %, no torn/reordered pictures. Replayed on
retained evidence: qualification-1008-21 (Present(1)) is within tolerance
at 0.41 % / 39.8 ms; qualification-1008-22 (Present(0)) still fails at
13.8 %. Twelve regression tests. CLAUDE.md, the delivery audit and the
backlog record the ruling and the retired investigations.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@iamfatness
iamfatness marked this pull request as ready for review October 23, 2026 00:10
@iamfatness
iamfatness merged commit f96a136 into main Oct 23, 2026
18 checks passed
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.

Program commits older source pixels before selected image deadline despite available buffer budget

1 participant