Frank — illustrated logo

Frank's Fed

User acceptance testing

What's open, who's on it

Tests that need a human to verify, surfaced from each phase's VERIFICATION.md. Pick one, sign in below by editing .planning/uat-state.json (or ask Claude to do it), drop screenshot evidence into .planning/uat-evidence/<test-slug>/, then mark it pass or fail. The publish skill closes the loop into .planning/ on the next run.

From Phase 5 onward we're testing on TestFlight. Builds ship via /testflight; tester comments + screenshots come back automatically via /franks-fed-pull-feedback and land in .planning/inbox/testflight-feedback.md for triage. Read the TestFlight pipeline doc for the full procedure — including the Phase 5 walkthrough next week (VoiceOver, Dynamic Type, Reduce Motion, contrast, 44pt, and the "pretend a pet died" dignity test).

9 total 9 open 0 in progress 0 passed 0 failed
Phase 3 — Widgets + APNs Fan-Out
Two-device live fan-out smoke (24h soak baseline)
Phase 3 WIDGET-04 SC2 soft Open
On Device A log a feed; Device B widget reflects within 5s. Repeat reverse + medication + walk. 24h Wi-Fi window, no widget >5 min stale.
Unassigned · 1 comment · 1 screenshot
Pre-prompt push permission UX (NOTIF-04 / D-14..D-17)
Phase 3 NOTIF-04 soft Open
Fresh install → first feed → sheet timing + Frank/Miles voice copy + iOS dialog suppression on Not now + 1→2 member re-ask + permission denial path.
Unassigned
Phase 4 — Helper System
Grandparent walkthrough — non-technical adult scans QR, joins household, logs one feed
Phase 4 HELP-02 hard Open
Real non-technical adult, stopwatch running. Under 120s from QR scan to undo-toast on first feed. No banned words. No moment of confusion about a technical term.
Unassigned
Universal Link redemption smoke test (Path 1)
Phase 4 HELP-02 soft Open
Tap franksfed.app/h/<token> on physical iPhone. App opens directly to HelperWelcomeView — no Safari, no App Store fallback. Requires AASA team ID substituted first.
Unassigned
In-app QR scanner fallback (Path 2)
Phase 4 HELP-02 soft Open
Tap "Have a household invite? Tap here." → grant camera → scan QR → HelperWelcomeView with correct pet name → HomeView showing only authorised pets.
Unassigned
Revoke end-to-end on device (Path 6)
Phase 4 HELP-06 soft Open
Two devices. Owner taps End access. Helper device shows HelperEndOfSessionView within ~5s. Calm copy, no banned words. Done signs out.
Unassigned
Helper-restricted HomeView (Path 4)
Phase 4 HELP-05 soft Open
Helper session: only authorised pet visible. No Settings tab. No history. All Fed double-tap absent for partial scope.
Unassigned
Medication gate (Path 5)
Phase 4 HELP-05 soft Open
Invite with medication toggle OFF. Helper redeems. Medication button completely absent from pet card (not greyed out).
Unassigned
Banned-words CI gate confirmation for helper copy (Path 7)
Phase 4 HELP-09 soft Open
Run grep_helper_jargon.sh in GitHub Actions lint job on a real PR with helper copy. CI exits 0. (Passes locally — needs live CI confirmation.)
Unassigned
frank.780lab.uk/uat  ·  generated 2026-05-08 from .planning/uat-state.json + 03-VERIFICATION.md + 04-VERIFICATION.md