Create Wristivo iPhone and Apple Watch foundation

This commit is contained in:
2026-09-17 17:59:08 +04:00
commit a92698e1e6
48 changed files with 2492 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
# Physical test record — copy per integrated commit
Status: NOT RUN. Do not change this template to imply a completed test.
Date/tester/consent:
Commit/build:
Xcode and SDK:
iPhone model, iOS version/build:
Watch model, watchOS version/build, wrist side/crown orientation:
TV model from Settings/label, region and firmware/Tizen version if displayed:
Network path (same LAN / guest / VLAN; redact addresses):
Debugger attached? Repeat key lifecycle cases detached:
App lifecycle and permission setup:
| Scenario | Expected | Actual / evidence | Pass / fail / not run |
| --- | --- | --- | --- |
| First pair | Wristivo shown; explicit TV approval needed | | |
| Deny / timeout | No commands, recoverable UI | | |
| Reconnect / revoke | Stored token works; revoked token cannot control | | |
| Certificate changed | No silent acceptance; explicit reapproval | | |
| Phone direction button | One matching TV press | | |
| Watch touch direction | Phone relay, one matching press | | |
| Four wrist directions | Count correct, missed, wrong and duplicates | | |
| Neutral return / held pose | No opposite press or repeats | | |
| Casual motion while armed | False-positive measurement | | |
| Wrist lowered / inactive | Sensors stop, no motion commands | | |
| Reopen / resume | Explicit re-arm and neutral baseline | | |
| Phone locked / suspended | Measured behavior and limitation | | |
| Phone terminated/rebooted | No stale session/token leaks; recover truthfully | | |
| No phone / phone out of range | Fail fast, no queued commands | | |
| TV off / Wi-Fi interruption | Expire/drop, no replay after reconnect | | |
| Target switch / forget | Old commands rejected, token deleted | | |
| Wrong version / duplicate / stale | Receiver rejects safely | | |
| Motion / network permission denied | Touch/failure guidance remains usable | | |
| VoiceOver / large text | All core actions reachable | | |
Gesture evaluation: report per-direction trial counts, TP/FP/FN, confusion matrix, precision, recall, duplicates, incidental-motion duration and false commands. Separate calibration/tuning from final evaluation samples.
Latency: sample size, warm p50/p95, cold/wake p50/p95, failures/timeouts. Define timing points (motion completion to observed TV effect); do not compare monotonic timestamps from different devices. Use synchronized video or a justified same-clock method.
Battery: initial/final levels, duration, display state, sensor rate, connectivity, warm/cold conditions and comparison baseline. No numerical battery claim without measured runs.
Attach only redacted screenshots/video with original or authorized screen content. Never include pairing tokens, cert private material, network identifiers or private TV-account details. Raw recordings stay outside git with a deletion date. List all failures and release blockers.