Skills

Mobile Sim Verification

Verify apps/mobile behavior end-to-end on the iOS simulator against a local API and...

Install

npx skills add ParadevAI/Paradev --skill mobile-sim-verification -g -a claude-code -y
Repository
ParadevAI/Paradev15.8k
Category
Testing
Updated
3d ago
License
See repository
Context cost
Mediumabout 1,799 tokens
Runs scripts
No, instructions only

What it does

Verify apps/mobile behavior end-to-end on the iOS simulator against a local API and relay, with Maestro for input and a stand-in host instead of a second machine. Use when asked to verify, reproduce, screenshot, or edge-test a mobile change in the real app rather than in tests.

Mobile Simulator Verification

The mobile counterpart to cdp-verification. There is no CDP on a phone: input goes through Maestro, evidence comes from simctl screenshots and recordings, and state comes from the real local API and relay. "Rules" is what counts as valid evidence. "Mechanics" is how to get there. apps/mobile/scripts/e2e/host-states.sh is a working example.

Rules

  1. Use the real screen. Sign in and reach the screen the way a user does. A temporary preview route that mounts one component with fixed props is diagnostic support, and must be reported as such. It hides the header, the data hooks, loading states and navigation.

  2. Drive state through real services. Change what the app sees by changing the local API or relay (register a host, open or close its socket), not by seeding the query cache.

  3. Run the edge pass before reporting "tested". The main path is not the test. At minimum: cold start, a dependency down (relay or API stopped), recovery when it returns, app backgrounded and resumed, rapid state flapping, a very long name, one long-string locale (German) and one CJK locale, and the largest text size. Say which you ran and which you did not.

  4. Never show "unknown" as a negative. A query that is pending or failed has not said "offline", "empty" or "none". Check what the screen paints in both states; this is the most common mobile bug found by this process.

  5. Catch flashes with a recording. A screenshot taken after a sleep cannot show a state that lasts half a second. Record the launch and diff the frames.

  6. Attribute failures correctly. Before reporting that a check is red on main, confirm it in CI. A fresh worktree's mobile typecheck shows errors in unrelated packages that CI does not.

Mechanics

Services

Start each in a Paradev terminal so it outlives the tool call. --local is required; without it the command returns nothing.

Read the whole SKILL.md on GitHub

More in Testing