Repository navigation
Open
Description
Observed
PR #74's CI run on 522baa9 failed in four existing TranscriptScreenTest methods:
rawTerminalKeyboardControlRestoresDismissedImesmallCompletedTurnAndComposerRemainVisibleInConstrainedImeViewporttranscriptKeepsFirstTurnVisibleWhenImeInsetsArrivetranscriptKeepsLatestTurnVisibleWhenImeInsetsArrive
Retrieved with:
gh run view 36915845190 --repo R055LE/threadline --log-failedEach failure was:
androidx.compose.ui.test.ComposeTimeoutException: Condition still not satisfied after 10000 ms
The source stacks point to the initial wait for WindowInsetsCompat.Type.ime() visibility at TranscriptScreenTest.kt:1016, :1537, and the shared helper at :1645. The failures happened before asserting transcript layout or restoring a deliberately dismissed keyboard.
The seven new recovery tests passed. JVM tests, lint, debug/release builds, and release shrinker checks also passed in this run.
Evidence and limits
- The preceding PR revision's full CI run passed with the same UI and Android test sources. The final revision changed session-manager queue cleanup and a JVM regression only.
- Two complete local Android suites passed, including one on
522baa9: 139 test cases, nine prerequisite/opt-in skips, zero failures. - All four failing methods then passed together on a restarted local API 35 emulator, once with
show_ime_with_hard_keyboard=0and again with it set to1. The generated Pixel 6 AVD configuration, using CI's device/package arguments, hashw.keyboard=no. The hardware-keyboard policy hypothesis did not reproduce the failure. - CI has no retained Android reports or device-state capture (Retain CI test reports when verification fails #72). The failed log shows where the tests timed out, but not whether the device was locked, the activity had window focus, or the IME had a served input connection.
The same-commit rerun passed the full verification job, including the Android suite. The hosted failure was intermittent across these two attempts. Its cause remains unconfirmed; the green retry does not erase the failed attempt.
Requested boundary
- Capture screen/keyguard state, window focus, IME state, and relevant device logs when an IME visibility wait fails.
- Reproduce the missing initial keyboard on the CI emulator before choosing a product or harness change.
- Preserve the real software-keyboard assertions. Do not replace them with a skipped check or an arbitrary longer timeout.
Metadata
Metadata
Assignees
Labels
No labels
Activity