The platform-check step that decides whether to skip a build based on detect-changes outputs is duplicated across sample app workflows (sample-application.yml, sample-application-expo.yml). The logic is nearly identical — check if the sample itself changed, then check the platform-specific needs_* output.
We could extract this into a reusable workflow (or composite action) that takes the platform and the relevant detect-changes outputs as inputs and returns a skip output.