원클릭으로
qa
Run QA test scenarios for the Convos iOS app. Use when asked to run QA tests, verify app functionality, or execute test scenarios.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Run QA test scenarios for the Convos iOS app. Use when asked to run QA tests, verify app functionality, or execute test scenarios.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Reclaim Xcode and iOS-simulator disk space safely. Measures usage first, then clears the big recoverable caches (global DerivedData, per-worktree .derivedData while skipping any active build, module caches, old iOS DeviceSupport) and offers simulator cleanup (unavailable + duplicate + orphaned custom sims). Shows before/after free space; confirms destructive simulator/Archive deletions. Use when the user asks to free disk, prune DerivedData, clean Xcode/simulator storage, or "my disk is full".
Build and launch the Convos iOS app in this worktree's dedicated simulator. Use when the user wants to run, launch, or test the app.
Write new QA test sequences for the Convos iOS app. Use when asked to create, draft, or add a new QA test.
Use when working with Convos messaging - privacy-focused ephemeral messaging with per-conversation identities, invites, profiles, and group management via the convos CLI tool
| name | qa |
| description | Run QA test scenarios for the Convos iOS app. Use when asked to run QA tests, verify app functionality, or execute test scenarios. |
Run end-to-end QA tests for the Convos iOS app using the iOS simulator tools and the convos CLI.
qa/RULES.md in full. It contains general rules, tool references, app details, and conventions that apply to all tests..pi/skills/convos-cli/SKILL.md for the full CLI command reference. Tests describe actions in natural language — use the skill file to find the right commands..pi/skills/run/SKILL.md.convos identity list. If it fails, run convos init --env dev --force.| Test | File | Description |
|---|---|---|
| 01 | qa/tests/01-onboarding.md | Fresh onboarding flow (requires simulator erase) |
| 02 | qa/tests/02-send-receive-messages.md | Send and receive text, emoji, attachment, and link preview messages |
| 03 | qa/tests/03-invite-join-deep-link.md | Join a conversation via deep link URL |
| 04 | qa/tests/04-invite-join-paste.md | Join a conversation by pasting invite URL in scan view |
| 05 | qa/tests/05-reactions.md | React to all message content types |
| 06 | qa/tests/06-replies.md | Reply to messages from app and CLI |
| 07 | qa/tests/07-profile-update.md | Update display name in a conversation |
| 08 | qa/tests/08-lock-conversation.md | Lock conversation and verify invites invalidated |
| 09 | qa/tests/09-explode-conversation.md | Explode (destroy) a conversation |
| 10 | qa/tests/10-pin-conversation.md | Pin and unpin conversations |
| 11 | qa/tests/11-mute-conversation.md | Mute and unmute conversations |
| 12 | qa/tests/12-create-conversation-from-app.md | Create conversation from app and invite others |
| 13 | qa/tests/13-migration.md | Database migration from main branch to current branch |
| 14 | qa/tests/14-profile.md | Global profile auto-apply on new convos, App Settings edit, activate-sync into existing convos, per-conversation override isolation |
| 15 | qa/tests/15-performance.md | Performance baselines: conversation open, create, join timings |
| 16 | qa/tests/16-conversation-filters.md | Unread filter, clear filter, empty state, filter persistence |
| 17 | qa/tests/17-swipe-actions.md | Mark read/unread via swipe and context menu |
| 18 | qa/tests/18-delete-all-data.md | Delete all data flow, confirmation, progress, completion |
| 19 | qa/tests/19-profile-photo.md | Profile photo, group photo, sync to other participants |
| 20 | qa/tests/20-send-receive-photos.md | Send photos from app, receive from CLI, context menu |
| 21 | qa/tests/21-message-gestures.md | All message gestures: double-tap, swipe reply, long-press menu, link tap, avatar tap |
| 22 | qa/tests/22-rejoin-existing-conversation.md | Rejoin existing conversation via deep link or paste in scanner |
| 23 | qa/tests/23-pending-invites-home-view.md | Pending invites appear in home view, filter, swipe/context restrictions, approval transition |
| 25 | qa/tests/25-conversations-list-baseline.md | Conversations list baseline for UICollectionView migration - captures all UI states and interactions |
| 26 | qa/tests/26-failed-message-send.md | Failed message send: "Not Delivered" state, retry, and delete |
| 27 | qa/tests/27-send-receive-video.md | Send and receive video messages, inline playback, context menu, size limit |
| 28 | qa/tests/28-receive-file-attachments.md | Receive file attachments (PDF, text, CSV, JSON), file bubble display, QuickLook preview, Save to Files |
| 28b | qa/tests/28-app-icon-badge-count.md | App icon badge count for unread conversations |
| 29 | qa/tests/29-typing-indicators.md | Typing indicators: receive, dismiss, message-arrival clearing, grouping, expiry |
| 30 | qa/tests/30-verified-assistants.md | Verified assistant UI: badges, labels, skills button, agent vs assistant distinction |
| 32 | qa/tests/32-voice-memo-transcription.md | Voice memo transcription: receive voice memo, on-device transcript appears, expand/collapse, persistence across relaunch, retry on failure |
| 33 | qa/tests/33-read-receipts.md | Read receipts: send on view, display avatars, opt-out setting |
| 42 | qa/tests/42-agent-builder-attachment-summary.md | Agent builder: create agent with prompt + photo attachment, verify summary card renders the photo thumbnail (pre- and post-rehydration) |
| 43 | qa/tests/43-long-message-rendering.md | Long-message UX: short renders unchanged, long shows Read More + inline expand, pathological pushes MessageDetailView (Back/Copy/Reply), no-hang guard |
| 44 | qa/tests/44-icloud-pairing-prompt.md | First-install iCloud pairing prompt: Pair ? sheet from a synced keychain backup, Skip persistence, and the full no-QR pair handshake (two simulators; Device B is a clone of Device A) |
| 44b | qa/tests/44b-pairing-prompt-ordering.md | Pairable-backup ordering rule: backups newer than this install's own key are never offered; verified both directions via the restamp launch hook (single disposable clone) |
| 45 | qa/tests/45-reinstall-message-continuity.md | Delete + reinstall while actively chatting: same inbox resumes from the keychain, old installation auto-revoked, and messages flow both ways with the CLI in every prior conversation (erased disposable clone) |
| 46 | qa/tests/46-devices-icloud-section.md | Devices screen iCloud section: paired/iCloud footers, Main-device designation on the oldest key, targeted initiator sheet from an iCloud row, escalated delete-all copy on the main device (single disposable clone) |
When asked to run a specific test (e.g., "run QA test 03"), read the test file and execute the steps in order. Report pass/fail for each criterion.
When asked to run all tests, execute them in order. Tests 01 (onboarding) should run first since it resets the simulator. Subsequent tests build on a working app state.
Recommended order:
After each test, output:
## Test XX: <Test Name>
Status: PASS / FAIL / PARTIAL
### Results
- [x] Criterion 1 — passed
- [ ] Criterion 2 — FAILED: <description of failure>
- [x] Criterion 3 — passed
### Notes
<Any observations, unexpected behavior, or infrastructure issues>
### Accessibility Improvements Needed
<List any UI elements that were hard to find — missing identifiers, coordinate-only taps, etc.>
After all tests complete, output a summary table:
## QA Summary
| Test | Status | Notes |
|------|--------|-------|
| 01 - Onboarding | PASS | |
| 02 - Messages | PARTIAL | Attachment display issue |
| ... | ... | ... |