feat: consolidate iOS with API and web preserving history
Rebuild & Deploy / rebuild (push) Failing after 23s
Rebuild & Deploy / rebuild (push) Failing after 23s
This commit is contained in:
commit
d735ee72fa
102 files changed
+13077
-258
No files matched your search
@@ -0,0 +1,57 @@
|
||||
# Device testing checklist
|
||||
|
||||
Simulator verification covered connect/disconnect, transcripts (text mode), tasks
|
||||
panel, and the hardening pass. The items below need a **real
|
||||
iPhone on the LAN** (`https://192.168.86.2:9178`) because mic input, WebRTC capture,
|
||||
and audio session behavior don't work in this simulator environment (CoreAudio `-4010`,
|
||||
0 input channels).
|
||||
|
||||
Setup: recheck device availability and signing, then build/install with Xcode or
|
||||
the installed XcodeBuildMCP skill workflow. The phone was paired and the Nearlight
|
||||
build launched successfully on September 12; that does not prove today's availability
|
||||
or a still-valid provisioning profile. Verify the server certificate pin after an
|
||||
actual certificate rotation, not automatically after every container restart.
|
||||
|
||||
For each check, record date, source revision, device/iOS version, backend/model,
|
||||
observed result and supporting logs. Leave unchecked items unqualified; installing
|
||||
the app or passing a simulator state test is not equivalent to hearing a reply.
|
||||
|
||||
## 1. Mic input with real speech
|
||||
|
||||
- [ ] Start → agent joins → mic enables **without** `-4010`.
|
||||
- [ ] Speak: Lightwell/status transitions to **listening**; mic meter moves with voice level.
|
||||
- [ ] Stop speaking, wait >2 s while agent is silent → **thinking** chip appears.
|
||||
- [ ] Agent replies: state goes to **speaking** (remote audio drives it), TTS audible.
|
||||
- [ ] User transcript finals arrive in the list with correct role/timestamps.
|
||||
|
||||
## 2. Barge-in
|
||||
|
||||
- [ ] While the agent is speaking, start talking → conversation continues without a
|
||||
"barge-in" glitch; state returns to listening/thinking as expected.
|
||||
- [ ] Switching to Type leaves microphone capture off and text messaging usable.
|
||||
|
||||
## 3. Wake lock (screen off)
|
||||
|
||||
- [ ] During an active conversation, observe that auto-lock is suppressed
|
||||
(`isIdleTimerDisabled` prevents the device from locking due to inactivity).
|
||||
- [ ] Note: `isIdleTimerDisabled` does **not** prevent a user from pressing the
|
||||
side button to lock the device. It only disables the automatic idle timeout.
|
||||
- [ ] After hang-up, auto-lock returns (idle timer re-enabled).
|
||||
|
||||
## 4. Audio interruption (phone call / Siri)
|
||||
|
||||
- [ ] Mid-conversation, trigger an interruption (incoming call or "Hey Siri").
|
||||
- [ ] On end (with `shouldResume`), mic and conversation resume automatically.
|
||||
|
||||
## 5. Mic permission denied fallback
|
||||
|
||||
- [ ] Deny microphone permission in iOS Settings for the app, relaunch.
|
||||
- [ ] Start → session reaches **ready** despite mic failure (non-fatal); a visible
|
||||
error explains the problem and offers iPhone Settings recovery; Type remains usable.
|
||||
|
||||
## 6. General device sanity
|
||||
|
||||
- [ ] Connect / hang-up / reconnect matrix (3×) — no crashes, state resets cleanly.
|
||||
- [ ] Change server URL in Settings while idle → session recreates without crash.
|
||||
- [ ] Reconnect banner appears on network loss mid-call; recovers on return.
|
||||
- [ ] Voice/model picker changes take effect live on the agent and survive relaunch.
|
||||
Reference in new issue
Block a user