Fix render-bounds EXACT verdict: enumerate floored models instead of trusting grid membership
Grid-ness of an edge was a proxy for "no floor could explain this count," not the test itself — equal remainders on both edges cancel under a full floor. Now checks all three floored models directly and corrects the SHORT/LONG floor-signature docs.
This commit is contained in:
@@ -85,20 +85,32 @@ bool isOnMillisecondGrid(double seconds);
|
||||
// at all. Always non-empty — a capture that answered nothing has to say so, or its
|
||||
// silence reads as a pass.
|
||||
//
|
||||
// EXACT never stands alone as proof: an END that sits on the millisecond grid prints
|
||||
// the SAME EXACT count whether the channel honored the window or floored it and landed
|
||||
// back on the grid by coincidence, so that case is called out in the sentence rather
|
||||
// than left to read as settled — same principle as the existing START-edge caveat.
|
||||
// EXACT never stands alone as proof: the observed count is checked against every
|
||||
// millisecond-floored model of the same window (start floored alone, end floored alone,
|
||||
// both together), and any model that reproduces it is named in the sentence. Grid
|
||||
// membership on an edge is a PROXY for that collision, not the test itself — remainders
|
||||
// on the two edges can cancel under a full floor even when NEITHER edge sits on the
|
||||
// grid, and a remainder under half a frame collides with a floored edge without ever
|
||||
// registering as off-grid at all. Checking the models directly is what a grid test on
|
||||
// either edge alone cannot do.
|
||||
//
|
||||
// A non-zero delta that still falls inside the gate's own tolerance (renderHonoredBounds)
|
||||
// is tagged "(WITHIN TOLERANCE)" — that is the gate's ordinary edge-convention slack, not
|
||||
// evidence of the millisecond floor; a bare SHORT/LONG, or a delta matching
|
||||
// msFlooredEndFrameCount exactly, is the floor's signature.
|
||||
// evidence of the millisecond floor. The floor's signature is ONLY the "floored to the
|
||||
// millisecond" sentence (a delta matching msFlooredEndFrameCount exactly); a bare
|
||||
// SHORT with no such sentence means the shortfall's cause is unestablished, and LONG can
|
||||
// never be the floor's signature — a floor only removes frames, never adds them. A
|
||||
// window whose start and end sit in the same millisecond bucket makes msFlooredEndFrameCount
|
||||
// equal the exact count, so a real one-frame floor there reads as a bare SHORT (WITHIN
|
||||
// TOLERANCE) with no floor sentence at all — that combination is not evidence the floor
|
||||
// didn't happen, just a case this diagnostic can't see into.
|
||||
//
|
||||
// `sampleRate <= 0` means the landed file was never measured: a tail mode adds frames by
|
||||
// design and is not judged, an empty render has none, and a render whose layout failed to
|
||||
// parse or declared no sample rate is refused before it can be judged either — the
|
||||
// sentence then says the run answered nothing rather than inventing a comparison.
|
||||
// sentence then says the run answered nothing rather than inventing a comparison. A
|
||||
// window that rounds to 0 frames at this rate reads NOT JUDGED the same way: a 0-frame
|
||||
// render against a 0-frame window is not a comparison either.
|
||||
//
|
||||
// `bypassingSourceLabel`, when non-null and non-empty, means the render source itself
|
||||
// defined the window (render_settings::sourceBypassesBoundsChannel) — `channelLabel` was
|
||||
|
||||
Reference in New Issue
Block a user