2.7 KiB
name, description
| name | description |
|---|---|
| test-preflight | Verify or prepare a mobile/integration test environment from a declared matrix: artifacts, tester bindings, HOST/PUBLIC_HOST, service probes, and fixture/cleanup contracts. Use before tester runs; it is not a deployment, build, or business-data skill. |
test-preflight
Use this skill before integration or journey tests. It answers whether the
declared environment can start a run and emits one YAML and one CSV evidence
file. It never logs in, creates business data, builds/downloads an artifact, or
deploys production.
Modes
verifyis read-only: validate the matrix, artifact identity, binding, actual tester-node platform/device state, DNS/TCP/HTTP probes, backend probes, and fixture/cleanup declarations. It must not install, launch, or deploy.prepareis side-effecting only within the test environment: call the caller-supplied deployer command contract, run the same checks, then use the tester-node command contract to install and launch the already supplied APK or IPA. It never calls a builder and refusesenvironment: prod.
The command is:
python3 <skill-dir>/scripts/preflight.py verify \
--config <matrix.yaml> --yaml <preflight.yaml> --csv <preflight.csv>
python3 <skill-dir>/scripts/preflight.py prepare \
--config <matrix.yaml> --yaml <preflight.yaml> --csv <preflight.csv>
Read references/schema.md for the input contract and references/boundaries.md before wiring a real agent-runtime/deployer adapter. The included command-contract fixture is the safe way to test remote-node behavior without pretending that this machine is a Mac or that a deployment happened.
Overall status is ready, blocked, or environment-fail:
blockedmeans a required declaration, artifact, binding, runner, fixture, cleanup contract, or authorization is absent/unsafe.environment-failmeans a declared environment exists but DNS/TCP/HTTP, device/toolchain, installation, launch, or deployment execution failed.readymeans every recorded check passed. A ready preflight permits the caller to continue withintegration; this skill does not run test cases.
This project assumes the client has the required album picker, photo permission, and Chinese
IME capabilities. Preflight does not probe or gate these capabilities, and does not read
AUTHORIZE_ALBUM or IME_PINYIN. Their real behavior is exercised by journey cases; a failure
there is a product test failure, not an environment block.
Do not treat a preflight report as a product result. A preflight failure means
no client session may be created; the tester owns not-run propagation and must write
one result row per selected testcase with blocked_by: [test-preflight].