also looking at this
fix(native): preserve workspace sources and native overlay lifecycle
#384
20 files
+500
-227
| @@ -90,6 +90,7 @@ const device = await createAndroidEmulator({ | ||
| 90 | 90 | avdmanager: '/ci/pantry/.bin/avdmanager', |
| 91 | 91 | image: 'system-images;android-35;google_apis_playstore;x86_64', |
| 92 | 92 | acceleration: 'software', |
| 93 | memoryMb: 4096, | |
| 93 | 94 | artifactsDirectory: '/ci/artifacts/android', |
| 94 | 95 | acceptLicenses: true, |
| 95 | 96 | }) |
| @@ -106,13 +107,23 @@ the Android emulator's explicit `-accel off` mode on x86_64 hosts; it provides | ||
| 106 | 107 | functional test evidence, with no claim about hardware performance. The public |
| 107 | 108 | helper defaults to a ten-minute boot budget, and hardware mode cannot exceed |
| 108 | 109 | it. Software callers may explicitly set `bootTimeoutMs` up to twenty minutes. |
| 110 | `memoryMb` selects the requested guest RAM, defaulting to 2048 MB. It accepts | |
| 111 | the emulator's documented [1536–8192 MB range](https://developer.android.com/studio/run/emulator-commandline#startup-options). | |
| 112 | `virtualCpus` selects the guest CPU count, defaulting to 2 and accepting values | |
| 113 | from 1 through 8. The stock Play software verifier requests four guest CPUs: | |
| 114 | the four-thread Intel runners used for this acceptance profile otherwise starve | |
| 115 | SystemUI during TCG startup and surface a real platform ANR. | |
| 116 | The stock Play software verifier requests 4096 MB after retained cold boots | |
| 117 | showed low-memory/process-death churn and a SystemUI ANR. It keeps the same | |
| 118 | image, readiness checks and twenty-minute deadline. | |
| 109 | 119 | The stock Play software CI verifier uses that cold-provisioning profile: the |
| 110 | 120 | API 35 image took 943,520 ms in the retained diagnostic run |
| 111 | 121 | [39113277828](https://github.com/craft-native/craft/actions/runs/39113277828). |
| 112 | 122 | This is OS provisioning before app installation; app and performance budgets |
| 113 | are unchanged. Both modes require a readable event-log stream, SettingsProvider, | |
| 123 | are unchanged. Both modes require a complete event-history read, SettingsProvider, | |
| 114 | 124 | the package manager and System UI to be ready, with HOME resolved beyond the |
| 115 | automatic Android SDK setup activity. Logs record the budget, actual | |
| 125 | automatic Android SDK setup activity and its launcher package owning the current | |
| 126 | input-focus window. Logs record the budget, actual | |
| 116 | 127 | boot duration, host CPU interval, selected image, acceleration |
| 117 | 128 | probe, process identity and boot result. Disposal reaps only the owned process |
| 118 | 129 | and deletes only its disposable AVD; the managed SDK and other devices remain |