Skip to content

ios: wait for final Mermaid height report in row test - #2013

Merged
ex3ndr merged 1 commit into
mainfrom
steve/ios-mermaid-layout-test
Nov 9, 2026
Merged

ex3ndr merged 1 commit into
mainfrom
steve/ios-mermaid-layout-test

Conversation

@ex3ndr

@ex3ndr ex3ndr commented Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

Change

Make the Mermaid row-replanning test wait for both height reports sent by the bundled page: its animation-frame report and its settling-timer report. The previous 0.6-second quiet-period heuristic could finish before WebKit delivered the timer report on a busy CI simulator, leaving an m1 event after the test cleared its actions.

This is a test-only change. It removes the now-unused quiet helper and preserves every existing geometry, page identity, render token, no-new-action, and m2 routing assertion. No production code, timeout increase, tolerance change, or test removal.

Verification

  • Exact failing case: 20 consecutive passes, no retries, on Kirill Mac's iPhone 17 / iOS 27 simulator, TEST_RUNNER_HAPPY_TEST_TIME_SCALE=2.5.
  • Evidence: /Users/kirilldubovitskiy/ctb-out/mermaid-final.0yt122/repeated.xcresult (20 tests, 0 failures, 28.200 seconds).
  • Full UIKit suite: 482 tests, 0 failures, 1 existing skip, same directory's uikit.xcresult.
  • Independent source review: PASS, no findings. The two-report wait matches the actual bundled page/native forwarding contract.
  • Existing CI failure evidence: fix(ios): discard connection snapshots after page hide #2010 first UIKit attempt and fix(ios): hide Cloud project settings and mark Policy vaults #2012 first UIKit attempt, same row-replanning case.

No Preview upload.

@ex3ndr

ex3ndr commented Nov 9, 2026

Copy link
Copy Markdown
Contributor Author

Required UIKit CI passed: 482 tests, zero failures, one existing skip, including the exact Mermaid row-replanning case (2.332 seconds) in job 128907203080. Local proof is 20 consecutive passes plus the full UIKit suite. Independent exact-commit review passed.

Explicit approval was given to normally squash-merge this isolated fix despite hosted failures: the sole changed file is Tests/HappyUIKitTests/ChatMermaidViewTests.swift. project.yml includes it only in the separate UIKit target. The hosted target includes Tests/HappyUIKitHostedTests and TestTime.swift, not this file. Production and hosted-test sources are unchanged from the base.

Hosted failures recorded, not fixed or retried:

  • BrowserStates testALiveArtifactWhoseComputerIsGoneSaysSoAndOpensWhenItIsBack: expected liveUnavailable, received serverNotResponding; wrong error copy and Try Again timeout. Follow up on main during the next hosted run because this is Cloud-related.
  • SidebarList dark image difference: 0.0029695 versus 0.002 threshold. Treat as a flake unless it repeats.
  • LegacyChatKeyboardMotion: composer did not finish returning (627.57 versus 840), keyboard-hide movement 91 versus >100. Treat as a flake unless it repeats.
  • Other failures were the documented InstantSignOut, NavigationTiming, SystemMonitor, ThumbHash, ChatNavigation, ChiefOfStaffAsk, and legacy StreamingReveal timing cases.

Overall hosted CI is not claimed green. No comparison runs, assertion relaxations, admin override, bypass, or Preview upload.

@ex3ndr
ex3ndr merged commit 247e722 into main Nov 9, 2026
1 of 4 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.

1 participant