Files
wristivo/docs/decisions/0001-platform-and-scope.md
T

2.3 KiB

ADR-001: paired phone relay and explicit wrist sessions

Date: 2026-09-16. Status: accepted as the architecture baseline; hardware feasibility pending. Owner: integration engineer.

Context

The user wants wrist movements on Apple Watch to control a Samsung Tizen TV, a native iPhone companion, parallel AI implementation, private Gitea source hosting, and later App Store release. Initial devices are Ultra 2, iPhone 13 Pro Max and a tentative QA85Q8FAAUXZN television. Paid Apple developer membership is deferred until the prototype is useful.

Decision

Use watch Core Motion while explicitly active, semantic commands over live WatchConnectivity, and an iPhone-only paired TV WebSocket transport. Keep pure protocol/gesture/admission logic in a dependency-free Swift package. First pair by manual TV address. Provide native accessible touch alternatives and an honest demo. The baseline has no server/cloud dependency, TV app, direct watch socket, always-on gesture listener, background-mode workaround, streaming, or subscription.

Reason and consequences

Apple's low-level watch networking restrictions exclude a general TV-remote WebSocket. Ordinary runtime also cannot guarantee background motion processing. The phone therefore remains required and locked-phone relay responsiveness is a critical experiment. TV protocol support and certificate behavior need physical validation before promising compatibility. Active sessions may be less convenient than the original all-day hands-free idea; measure usability early rather than building around an unsupported promise.

Parallel agents can work through domain contracts and fakes, but the integration owner must freeze session/connection/storage/motion interfaces and build membership before live adapter branches diverge. Firmware or OS discoveries may require a new ADR; no agent may silently replace the relay with a cloud service or fabricate an entitlement.

Evidence: Apple TN3135, WatchConnectivity sendMessage, watch runtime guidance. Detailed limits and hardware experiments are in PLATFORM-FEASIBILITY.md.