S12 · Multi-Device Coordination
Declared state: built, not well structured.
This is the repository plan and evidence, not a live health reading. A task marked done may still depend on credentials, devices, deployment or a newer acceptance test.
Dependencies
S07, S32, S43
Tasks and gates
12.F1 · Device profiles and edge-lite clients. *gate:* `test_edge_lite.py`,
Tier F · done · Verification: hermetic-test
Gate: `test_edge_lite.py`,
- unverified-import · undated ·
docs/SYSTEMS-DETAILS.md:1903
12.F2 · Reconnect without losing the brain link. *gate:* `test_edge_reconnect.py`
Tier F · done · Verification: hermetic-test
Gate: `test_edge_reconnect.py`
- unverified-import · undated ·
docs/SYSTEMS-DETAILS.md:1905
12.F3 · **One answering device.** Arbitration when two edges hear the same wake word — nearest or
Tier F · done · Verification: hermetic-test
Gate: `test_device_handoff.py` extended [double-wake]
- recorded-note · 2026-09-12 ·
docs/SYSTEMS-DETAILS.md:1906
12.R1 · Session follows the owner between devices (depends on S07.F1).
Tier R · open · Verification: hermetic-test
Gate: `test_session_identity.py` [cross-device]
12.R2 · Per-device capability advertisement — the brain knows which device has a camera, a
Tier R · open · Verification: planned-test
Gate: new `test_device_capabilities.py` - planned gate. new `test_device_capabilities.py`
12.R3 · Graceful degradation to a text-only or push-only device.
Tier R · open · Verification: hermetic-test
Gate: `test_edge_lite.py` extended.
12.R4 · **The wire is versioned.** `src/mushegh/shared/protocol.py` carries the edge↔brain message
Tier R · done · Verification: hermetic-test
Gate: new `test_protocol_contract.py` - every message type round-trips (through the brain's parser for edge->brain), unknown fields are tolerated, required-only frames from older senders parse, and required fields must equal REQUIRED for PROTOCOL_VERSION.
- hermetic-green · 2026-10-17 ·
bench/test_protocol_contract.py
12.E1 · Walk from desk to kitchen mid-sentence; the answer follows without a repeat.
Tier E · open · Verification: hermetic-test
Gate: live drill recorded in TODO + `test_device_handoff.py`
12.R5 · **Phone-side presence** — named the biggest single absence (p=0.65) and scored 3.15/4 conf 0.75: the goal says laptop, phone and glasses, and without a phone the assistant only exists at a desk, which is not an always-on companion.
Tier R · open · Verification: planned-test
Gate: new `test_phone_presence.py` — a phone client authenticates, holds a turn end to end, and hands back to the laptop without losing session context.
HUD screen contracts
- iPhone voice gateway · /iphone
- Multi-Device Coordination · /systems/S12
All subsystems · Source: docs/systems-plan.json.