Repository navigation
test: stabilize replay focus and opening motion, trace native failures - #1979
Conversation
81e3d6e to
6f991b8
Compare
6f991b8 to
1df4c01
Compare
0d8881d to
b06ae98
Compare
|
Separate post-merge main receipt: automatic run 38782602296, attempt 1, completes on actual squash |
Closes #1982
Closes #1915
Refs #1978 and #1257
What changed
The destination-effects fixture captures and pauses real native opening animations at panel insertion, before activation returns. It retains those objects for the original 0/150/300 ms paint checks. A regression finishes the actual CSS animations, proves they leave the live animation set, and verifies the retained references still seek correctly. This supplies #1915's prepared observation-race correction without changing product motion or weakening navigation assertions.
The failed-tracker browser fixture keeps native opening, frame handling, React commits and DOM focus, while controlling the replay phase's clock. It retains the two chunks and 60 ms logical separation, verifies no Retry focus at 149 ms after the final chunk and native Retry focus at 150 ms, then restores complete global descriptors before the original eventual assertions. This repairs the scoped focus blocker from #1257 without changing product policy.
The native PDF fixture also retains bounded browser lifecycle probes on failure: launch/PID, page requests, public close/disconnect callers, disconnection, exit status and a stderr tail. Failure, teardown and late-exit snapshots use existing CI artifact collection. Failure-only synchronous writes preserve evidence from late native exit callbacks. No browser protocol command or delivery wait is added to the passing path.
Why this shape
The original focus fixture's requested 60 ms timeout did not bound the gap between committed chunks. A native control releases the final failure chunk only after the existing 150 ms quiet callback consumes the opening intent and focuses the composer. Retry then appears without another focus call, reproducing the exact mismatch. The historical hosted gap remains unknown. The correction controls that fixture boundary and proves the documented 150 ms policy and failure-action routing through actual registered callbacks. Product code and the five-second fallback remain unchanged.
The refreshed diagnostic qualification naturally hit #1915 on Files. Its retained artifact records both native animation ends before the later empty sample. That failure creates a qualification dependency between #1979 and the already-prepared #1975 correction; this combined delivery includes the reviewed fixture patch and needs one fresh complete proof. The actual hosted timeline establishes this occurrence's sampling race.
#1978's original
Target.createTarget: Target closedreceipt lacks a close/exit reason. Bounded native controls have not identified its responsible condition, so this PR supplies diagnostics under Refs. It selects no production transport/teardown correction; the causal criteria on #1978 remain unmet.Proof
Current candidate
b06ae980f7f65d4e74c1dd12249773c93d62eb95, based onb4609b961084268309287fff807b1dbd2687d607:5d0182da75b50c484a345eec2a8b781188e5bcbb. Earlier native timing/pause and late-live-lookup mutations fail all three projects at their named guards; source-matched receipts remain attributed in ui-react: hosted destination proof observes no opening animations #1915.bun run check:pr --base origin/main: 852 pass / zero fail / 5459 assertions across 43 files, plus required local gates.fixture-shutdown-finished. All injected controls are restored. This proves diagnostic persistence, not the historical killer.Current selected hosted qualification: run 38778870365, attempt 1, passes all 14 selected jobs and the aggregate on current head
b06ae980f7f65d4e74c1dd12249773c93d62eb95, tested baseb4609b961084268309287fff807b1dbd2687d607. All 14 actual checkout logs agree on4367ac811e0fd2a7cdd4c7d653f65421fa4872a1, whose immutable parents are that base/head and tree isfc1460e926c0d5521a949e71473bc5b4adf95194; API and local Git agree. Strict types, packaging, native runtime and captures pass. Browser shards pass 4580 / 4228 cases, retaining four / six existing pointer exclusions. Layout shards pass 622 / 428 cases. Unit shards pass 3032 / 3176 / 3437 / 3654, with their existing source-bound conditional exclusions retained; the native PDF case passes in 76.87 ms. Current-head contract checks also pass. Main's #1986 optimizer inputs are included in this fresh proof. No previous run is relabelled.Completed opening-motion qualification before optimizer refresh
Run 38775257762, attempt 1, passes all 14 selected jobs and aggregate on head
0d8881d577667802a9530a107021ad2ef1b50771, based on9274b8a06db43932e17b5d401fcfb900306e97cd. All 14 actual checkout logs agree on556f251488f383bf8febe4fd0cdea4aba19c4cf1, whose parents are that base/head and tree is758424b6e951baa5305ab943002add6ef1e3d357; immutable API and Git agree. Browser shards pass 4580 / 4228 cases with four / six existing exclusions; layouts pass 622 / 428. Unit shards pass 3032 / 3176 / 3437 / 3654; the native PDF case passes in 61.70 ms. Main advanced with #1986 while this run executed, changing shared browser optimizer inputs. The entire run completed before refresh; this success is retained at its actual base, not relabelled as the newer combined tree.Preserved refreshed qualification failure
Run 38771607452, attempt 1, tests older head
1df4c01d8694344216c9b7e2ed5c65b41623fef1on base9274b8a06db43932e17b5d401fcfb900306e97cd. Actual selected checkout12dbfa4c1977daac8056f2444f20550d5aa76fbahas those parents and treed50ccf915878a1fd84c7b6411cf8b7d71680f5b4; API/Git and inspected job logs agree. Browser 2 fails the known #1915 Files late-animation sample: 4225 pass / one fail / six existing exclusions, 534.70 s. Focus repair passes. Artifact 11992338169 retains actual end/sample timestamps. Unit 4 passes 3654 cases / 26744 assertions, including the native PDF case in 84.77 ms. This failed candidate contains no opening-animation correction and is never relabelled green or retried unchanged. The complete run finished before this push: all 14 actual job checkout logs agree. Every other selected job passes; the aggregate fails solely on that browser failure.Completed prior qualification
Run 38742810096, attempt 1, passes all 14 selected jobs and the aggregate at head
6f991b87a759420f2badfaf5860b94f505cf617b, tested base82c1f211ee2ebabf44ed819e4a6bae47c93fca51. All 14 actual checkout logs agree onb75668cc2721a6543889af60df418d510ac5042f, whose immutable parents are that base and head and tree isc12f4eb0a2ec4b13ac22df71e3e2cb225036dae6; API and local Git agree. Browser 2 passes 4226 tests with six existing exclusions, including the repaired focus case. Unit 4 passes 3248 tests / 19266 assertions; the native PDF case passes in 64.57 ms. The separate head-only contract run 38742795719 passes. This successful run is not qualification of the newer combined tree.Preserved earlier failed qualification
Run 38736020887, attempt 1, completed at older head
91b46ef11f9ca1062f19252c233850d7d5aec7b8. All 14 selected checkout logs agree on6c868785eb69ac87d099e956cb0fb697d61ca631, parents main200efc8d4e5e2ef6bd7c5385440a9289bd14c774/ that head, tree8976e08bbbaeaadf36bb9d229402f31b1acd1ead; API and Git agree.All four unit shards, verification, packaging, both layouts, captures, native runtime and browser 1 pass. The PDF case passes in 88.67 ms in unit 4, whose total is 3248 pass / zero fail / 19266 assertions across 239 files. Browser 2 fails the scoped focus case now corrected here: 4225 pass / one fail / six existing exclusions; the aggregate fails. The complete failed run finished before returning this PR to draft or pushing further changes. Its verified recurrence/artifact is preserved; no failed job was rerun unchanged.
Checklist
Anything left open
The scoped failed-tracker fixture repair is #1982. Its broad parent #1257 remains open for other observations. #1978 remains open with
needs: repro: a natural failing lifecycle and responsible causal condition are still missing. Passing controls, injected signals and diagnostic delivery do not complete its causal-fix criteria.After the matching-head merge is verified on main, reconcile #1915 and explicitly supersede preserved draft #1975 with that delivery. #1978 remains open for its missing natural causal evidence. No retry, timeout widening, skipped runtime or guard weakening substitutes for required proof.