Repository navigation
Conversation
GPLaider
marked this pull request as ready for review
November 8, 2026 17:55
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds an isolated keyboard/editor fixture that enables and selects KeliBoard, touches the visible q/w/e keys, asserts exactly
qwe, and opens the main settings screen. The test exposed stale accessibility coordinates; virtual key queries now refresh the keyboard's screen position so injected touches reach the keys.The existing
testRunTestsUnitTestcommand remains in place. A following API 35/default/x86_64 emulator job explicitly prepares SDK command-line tools and builds the smoke APKs, runs the same Python/ADB script, and uploads screenshots, XML, Logcat, command output and PASS/FAIL JSON. Both jobs use JDK 21 for Robolectric API 36; app bytecode remains Java 17 and minSdk remains 21.The runner restores and verifies the original IME settings, removes newly installed test apps, preserves partial output on timeout, and requires evidence from the current run. Android CLI layout/screenshot diagnostics are optional. Official CLI/Codex-plugin installation, local commands and tool requirements are documented in
tools/ime-smoke/README.md. No cloud authentication, billing setup or remote device reservation is used.Validation: 285 existing unit tests passed with no failures/errors/skips; x86_64 APK builds passed; local API 35 Pixel 2 smoke tests passed both with ADB alone and with Android CLI diagnostics. Missing-device and injected-timeout failure paths passed, including restoration after failure. actionlint, Python/XML parsing and whitespace checks passed. Hosted Ubuntu CI also passed both the existing unit-test job and the API 35 emulator smoke job: https://github.com/GPLaider/KeliBoard/actions/runs/42506347159. Downloaded artifacts confirm all three checks passed, both screenshots/XML pairs are present, and cleanup/diagnostic error lists are empty. Physical-device input, Korean composition, gestures and minified variants are not claimed as verified. Based on merged main
baf52651; PR #8 is excluded and unchanged.