aarwitz/Tapp Release Gate

Autonomous QA gate for iOS PRs — explores the app on a simulator, replays Tapp Flows, fails on new high/critical issues.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
bundle-idBundle identifier of the app under test (e.g. com.example.app)yes
app-pathPath to a prebuilt SIMULATOR .app. If omitted, the action builds one from scheme/project.no""
projectPath to the .xcodeproj or .xcworkspace to build (used when app-path is not given)no""
schemeScheme to build (used when app-path is not given)no""
configurationBuild configurationnoDebug
max-actionsExploration budget (number of autonomous actions)no40
flowsGlob of Flow YAMLs to replay (default: .autotap/flows/*.yml in the workspace, if present)no""
baselinePath to a baseline report JSON to diff against (default: .autotap/baseline.json if present). New high/critical findings vs. this baseline fail the gate.no""
fail-onGate policy: gate (regressions + failed flows; default), blocked (verdict-based), any (any finding)nogate
simulator-deviceSimulator device to boot when none is bootednoiPhone 16 Pro
test-emailLogin email for apps behind an auth wall (pass via a secret). Used by the exploration login preamble.no""
test-passwordLogin password for apps behind an auth wall (pass via a secret).no""
launch-argsJSON array of app launch arguments, e.g. ["--uitesting"] to bypass login on a supporting build.no""
launch-envJSON object of app launch environment, e.g. {"UI_TEST_BACKEND":"staging"}.no""
login-stepsJSON array of explicit login steps for a custom login UI (see .autotap.yml app.login.steps). $TEST_EMAIL/$TEST_PASSWORD are substituted.no""
comment-on-prPost the report as a sticky comment on the PR (only on pull_request events).notrue
github-tokenToken used to post the PR comment. Defaults to the workflow token.no${{ github.token }}
namedescription
reportPath to the full JSON report (usable as the next baseline)
verdictThe run verdict: ready | caution | blocked
gate-failedtrue when the gate failed (merge should be blocked)