Reliable iPhone-Watch Command Protocols: Sequence IDs, Acks, and Retry Windows
Cross-device command channels fail most often on duplicate delivery and out-of-order updates. A minimal protocol layer fixes this without heavy infrastructure.
Step 1: Attach monotonic sequence IDs
{
"seq": 1042,
"type": "start_workout",
"payload": {"mode": "interval"}
}
Step 2: Require ack with last-processed sequence
{
"ack": 1042,
"state": "running"
}