Repository navigation
Android: 16 KB aligned injected dependencies, and a gate that resolves them - #6120
Conversation
…s them CameraX 1.3.4, injected for CodeScanner and the vision views, ships a 4 KB aligned libimage_processing_util_jni.so, and Google Play rejects the upload. check-16k-page-alignment.py reads tracked files only, so it never saw it. - CameraX 1.4.2; ML Kit, LiteRT and ONNX Runtime raised to aligned releases (ONNX lifts the Stable Diffusion floor to minSdk 24). - rootbeer-lib 0.1.2 (0.1.0 is misaligned); rootCheck lifts minSdk to 21. - play-services-panorama / -safetynet were misspelled and never resolved; safetynet now reads its own default. - android.playService.indexing fails with a clear message: the artifact ended at 9.8.0 and no version works beside a current play-services base. - scripts/check-android-dependency-alignment.py resolves every injected coordinate with Gradle, each group alone, and runs the ELF check; AndroidSixteenKbPageFloorTest holds measured floors and ratchets the lister against every coordinate the builder sources name. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Developer Guide build artifacts are available for download from this workflow run:
Developer Guide quality checks: |
Cloudflare Preview
|
✅ Continuous Quality ReportTest & Coverage
Static Analysis
Generated automatically by the PR CI workflow. |
|
Compared 191 screenshots: 191 matched. Native Android coverage
✅ Native Android screenshot tests passed. Native Android coverage
Benchmark ResultsDetailed Performance Metrics
|
|
Compared 227 screenshots: 227 matched. |
✅ ByteCodeTranslator Quality ReportTest & Coverage
Benchmark Results
Static Analysis
Generated automatically by the PR CI workflow. |
Flutter vs Codename OneSame application, built both ways: Flutter's AOT compile of the gallery, and the identical Dart source transpiled to Java on Codename One. Lower is better for every metric, so a ratio above 1.00x means Codename One is ahead by that factor. android9 interleaved rounds; host load 0.74, 1.75, 1.51
Compute -- the VM workloads (
Gate: within tolerance against
ios9 interleaved rounds; host load 28.33, 24.77, 20.8
Compute -- the VM workloads ( Not measured: iOS compute is not measured: a device build needs signed hardware, and on the simulator Flutter runs its JIT debug engine rather than AOT code. The macOS row runs the same ParparVM and Dart AOT compilers on the same Apple silicon. Gate: within tolerance against
javascript9 interleaved rounds; host load 2.33, 1.57, 0.72
Compute -- the VM workloads (
Gate: within tolerance against
linux9 interleaved rounds; host load 0.22, 2.86, 2.38
Compute -- the VM workloads (
Gate: within tolerance against
macos9 interleaved rounds; host load 2.02, 9.34, 13.58
Compute -- the VM workloads (
Gate: within tolerance against
windows9 interleaved rounds
Compute -- the VM workloads (
Gate: within tolerance against
Codename One wins 26 of 26 measured metrics across 6 platform(s). |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The step runs in maven/, where the lister's default source path (relative to build-engine) does not exist. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Compared 192 screenshots: 192 matched. Benchmark Results
Detailed Performance Metrics
ParparVM vs HotSpot (JDK 25): macOS arm64Runner CPU: Apple M1 (Virtual) (baseline Ratios are ParparVM / JDK 25: below 1.00x ParparVM is faster (time) or smaller (RAM). Median of 5 interleaved, paired rounds; every run's output was verified. A ratio more than 20% (time) / 25% (RAM) above its baseline in
Result: no regression |
|
Compared 184 screenshots: 184 matched. |
|
Compared 189 screenshots: 189 matched. Benchmark Results
Build and Run Timing
Detailed Performance Metrics
|
|
Compared 249 screenshots: 249 matched. |
|
Compared 188 screenshots: 188 matched. Benchmark Results
Detailed Performance Metrics
|
|
Compared 189 screenshots: 189 matched. Benchmark Results
Build and Run Timing
Detailed Performance Metrics
|
Google Play rejected an upload for
libimage_processing_util_jni.so, which comes from CameraX 1.3.4: the builder injects it forCodeScannerand the vision views.check-16k-page-alignment.pyreads tracked files only, and builder-injected Gradle dependencies are downloaded at build time, so nothing checked them.Pins: CameraX 1.4.2 (same minSdk 21, every class
AndroidCameraImplreaches by reflection is present), ML Kit, LiteRT 1.4.2 (sameInterpreter/Tensor/DataTypeAPI) and ONNX Runtime 1.21.1 (Stable Diffusion floor now minSdk 24). rootbeer-lib 0.1.0 was misaligned and moves to 0.1.2;android.rootChecklifts minSdk to 21.Bugs the gate found:
play-services-panaroma/-safenetwere misspelled and never resolved;play-services-appindexingended at 9.8.0, soandroid.playService.indexingnow fails with a clear message.Gate:
scripts/check-android-dependency-alignment.pyresolves every injected coordinate with Gradle, each group in its own configuration (pooled, highest-version-wins hid misaligned pins), and runs the ELF check.AndroidSixteenKbPageFloorTestis the offline half: measured floors, plus a ratchet that fails when a builder source names a coordinate the lister does not list. Locally: 95 groups, 72 64-bit libraries, all aligned.The cloud builder twin (BuildDaemon, same branch name) runs this script from this repo, so this one merges first.
🤖 Generated with Claude Code