ReviewOS

also looking at this

craft-native/craft

fix(android): hand the launch link to the page that subscribes for it

#232
Merged glennmichael123 wants to merge fix/android-deep-link-replay into main
17 files +776 -136
.github/workflows/README.mdmodified+8-0
Changes to .github/workflows/README.md
@@ -76,6 +76,14 @@ that part. It waits until `dumpsys window` shows the chooser holding input
7676focus, saves `share-menu.png`, presses Back, and fails the run if the page asked
7777for a dismissal and no menu ever appeared.
7878
79After the suite, each leg also cold-starts the app through a link twice, the
80same two ways as iOS, with `adb shell am start -W -a android.intent.action.VIEW
81-d '<link>' <package>`. Naming the package rather than the activity means the
82link is resolved through the generated manifest's intent filter, and `-W` must
83report `LaunchState: COLD`, so a link delivered to an app that was still
84running cannot pass for one that launched it. The page writes its report to
85logcat, and each launch keeps its own `deeplink-<mode>-logcat.txt`.
86
7987The runtime leg fails on any line where a Zig native gave up — "fell through
8088to the shim", "failed with no fallback" or "could not reach the page" — because
8189Kotlin answering in its place is invisible to the page, and a runtime that has