com um clique
verify
// Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction. Use after making changes to visually confirm they work from a user's perspective.
// Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction. Use after making changes to visually confirm they work from a user's perspective.
Evaluate WooAIAssistant against a structured scenario suite with hard invariants + LLM-as-judge rubric scoring. Runs live against the demo store + gpt-5.1 via the woo-mobile-ai backend wrapper, writes a JSONL run record, compares against stored baselines, and surfaces regressions. Always delegated to a subagent so the main context only sees the markdown report.
Create a pull request following WooCommerce iOS conventions
Set up the ContextA8C MCP server for accessing Automattic internal resources (Slack, Linear, P2s, GitHub Enterprise, etc.)
Discover and boot an iOS simulator. Use before any command that needs a simulator UDID.
Start or stop the WireMock API mock server for UI testing and E2E verification.
Use swift-snapshot-testing to visually verify SwiftUI views during implementation. Renders views to PNG for comparison against design references. Fast feedback loop (~25s/cycle).
| name | verify |
| description | Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction. Use after making changes to visually confirm they work from a user's perspective. |
| user-invocable | true |
| allowed-tools | Bash, Read, Grep, Glob, mcp__mobile-mcp__* |
Build the app, launch it on the iOS simulator, and verify the affected feature areas work correctly by navigating the UI and checking for expected elements.
Read .claude/references/screen-identifiers.md to understand how to identify screens and navigate between them.
Before setting up anything, determine what's already available:
xcrun simctl list devices booted | grep iPhone)xcrun simctl listapps <UDID> 2>/dev/null | grep com.automattic.woocommerce)Most verification happens during development where the simulator has a current build and an active session. In this case, you only need to build your changes and re-launch — no mock server or login flow needed.
Use the mocked environment (WireMock + logout-at-launch) only when:
If a mocked environment is not needed, skip Steps 3 and the mock-specific launch args in Step 5.
Determine which features were changed:
git diff --name-only trunk...HEAD
If no diff against trunk, fall back to git diff --name-only HEAD~1.
Read .claude/references/feature-map.json and match changed file paths against pathPatterns for each feature. Collect all matched features. If no features match, skip verification entirely — report which files changed, note that none matched any feature path pattern, and stop (do not proceed to Steps 3-8).
Use the /mocks skill approach: start WireMock on port 8282 in the background. Verify it's running before proceeding.
Use the /simulator skill approach to discover a booted simulator UDID.
xcodebuild -workspace WooCommerce.xcworkspace -scheme WooCommerce \
-destination "platform=iOS Simulator,id=<UDID>" -sdk iphonesimulator \
build 2>&1 | tail -30
If the build fails, analyze errors and report. The build must succeed — verification requires the current code.
If using mocked environment, collect launch arguments:
logout-at-launch, disable-animations, mocked-wpcom-api, -ui_testing, -mocks-port, 8282launchArgs from feature-map.jsonhttp://yourwoosite.com, email t@wp.com, password pwLaunch using xcrun simctl launch (supports launch arguments, unlike mobile-mcp's launch_app):
xcrun simctl launch <UDID> com.automattic.woocommerce <all-args-space-separated>
If using existing environment, launch without mock args:
xcrun simctl launch <UDID> com.automattic.woocommerce
Wait 5 seconds for the app to settle.
Use mobile-mcp tools (list_elements_on_screen, click_on_screen_at_coordinates, take_screenshot) to interact with the app.
Consult .claude/references/screen-identifiers.md for screen identification, element lookup, and navigation flows (including login flow when using mocked environment).
For each matched feature from the feature map:
verifyElements from feature-map.json are presentinteractions — execute each actionSummarize:
xcrun simctl terminate <UDID> com.automattic.woocommerce
If mock server was started, stop it using the /mocks skill approach (kill by port).