Skip to content

fix(ios): gate talk barge-in on isolated audio routes#18265

Merged
mbelinky merged 3 commits intomainfrom
slice/ios-talk-hardening
Feb 16, 2026
Merged

fix(ios): gate talk barge-in on isolated audio routes#18265
mbelinky merged 3 commits intomainfrom
slice/ios-talk-hardening

Conversation

@mbelinky
Copy link
Contributor

@mbelinky mbelinky commented Feb 16, 2026

Intent

Ship Slice 3 hardening: reduce false Talk Mode interruptions caused by speaker bleed when output is on built-in device audio.

Changes

  • gate shouldInterrupt(...) by current audio output route
  • disable speech-interrupt barge-in when output route is built-in speaker or built-in receiver
  • keep barge-in enabled for isolated routes (headphones/Bluetooth/USB/CarPlay/AirPlay)
  • add changelog attribution

Scope Guardrails

  • no background lifecycle changes
  • no VoIP entitlement changes
  • no chat.push behavior changes

Attribution

Validation

  • pnpm check

Greptile Summary

Adds audio route detection to gate Talk Mode barge-in behavior, preventing false interruptions when TTS output plays through built-in speaker/receiver (which can cause feedback loops). Barge-in remains enabled for isolated audio outputs like headphones, Bluetooth, and CarPlay.

Confidence Score: 5/5

  • Safe to merge - focused hardening change with clear scope and no breaking changes
  • Clean implementation of audio route-based gating for speech interrupts. Logic is straightforward, uses standard AVFoundation APIs correctly, includes clear comments, and has proper CHANGELOG attribution. No security concerns, no breaking changes, and aligns with the stated scope guardrails.
  • No files require special attention

Last reviewed commit: 637de5d

@openclaw-barnacle openclaw-barnacle bot added app: ios App: ios size: XS maintainer Maintainer-authored PR labels Feb 16, 2026
@github-actions
Copy link

⚠️ Formal models conformance drift detected

The formal models extracted constants (generated/*) do not match this openclaw PR.

This check is informational (not blocking merges yet).
See the formal-models-conformance-drift artifact for the diff.

If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there.

@github-actions
Copy link

⚠️ Formal models conformance drift detected

The formal models extracted constants (generated/*) do not match this openclaw PR.

This check is informational (not blocking merges yet).
See the formal-models-conformance-drift artifact for the diff.

If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there.

@mbelinky mbelinky merged commit 9e26fe4 into main Feb 16, 2026
10 checks passed
@mbelinky mbelinky deleted the slice/ios-talk-hardening branch February 16, 2026 17:37
@github-actions
Copy link

⚠️ Formal models conformance drift detected

The formal models extracted constants (generated/*) do not match this openclaw PR.

This check is informational (not blocking merges yet).
See the formal-models-conformance-drift artifact for the diff.

If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app: ios App: ios maintainer Maintainer-authored PR size: XS

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments