From e35ea9e708feaf6c424923029d6a89b61270b386 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Sun, 17 May 2026 23:42:02 +0200 Subject: [PATCH 01/11] ci: grant security-events:write to bandit SARIF upload + bump action to v4 The `bandit` job in `.github/workflows/audit.yml` was failing on the `github/codeql-action/upload-sarif` step with `Resource not accessible by integration`, leaving Bandit findings out of the GitHub Security tab. Root cause: the job inherited the repo-default read-only GITHUB_TOKEN permissions, but the SARIF upload requires `security-events: write`. Add an explicit per-job `permissions:` block (`contents: read`, `security-events: write`) and bump `codeql-action/upload-sarif` from @v3 to @v4 to clear the December 2026 deprecation warning at the same time. --- .github/workflows/audit.yml | 9 ++++++++- CHANGELOG.md | 12 ++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/.github/workflows/audit.yml b/.github/workflows/audit.yml index e73ddf02..a1afcf6f 100644 --- a/.github/workflows/audit.yml +++ b/.github/workflows/audit.yml @@ -87,6 +87,13 @@ jobs: bandit: name: Python static analysis (bandit) runs-on: ubuntu-latest + # `security-events: write` is required by `codeql-action/upload-sarif` + # to push findings into the GitHub Security tab. Without it the upload + # step fails with "Resource not accessible by integration". `contents: + # read` is the minimum the checkout step needs. + permissions: + contents: read + security-events: write steps: - uses: actions/checkout@v6 - name: Set up Python 3.12 @@ -112,7 +119,7 @@ jobs: bandit -r libraries/python/getpatter -ll -iii \ --exclude libraries/python/getpatter/dashboard/ui.py \ -f sarif -o bandit.sarif || true - - uses: github/codeql-action/upload-sarif@v3 + - uses: github/codeql-action/upload-sarif@v4 # Only upload when the SARIF file was actually produced — if the # formatter install fails on a future bandit version the step # shouldn't fail the job, it just skips the Security-tab upload. diff --git a/CHANGELOG.md b/CHANGELOG.md index 7310d9ae..4caef5a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ ## Unreleased +### Fixed + +- **CI: Security Audit workflow could not upload Bandit SARIF to the GitHub + Security tab.** The `bandit` job in `.github/workflows/audit.yml` was + failing on `github/codeql-action/upload-sarif` with `Resource not + accessible by integration` because the job inherited the repo-default + read-only `GITHUB_TOKEN` permissions. Added an explicit + `permissions: { contents: read, security-events: write }` block on the + job so SARIF findings reach the Security tab as intended. Bumped the + action from `@v3` to `@v4` to drop the deprecation warning ahead of the + December 2026 sunset. + ## 0.6.1 (2026-05-15) ### Fixed — `OpenAIRealtime2`: audio transcoding for Twilio + outbound chunking + VAD tuning (TypeScript only) From 7bc143ad812f68e7bcffb909f6cb87a12b1f9f66 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 18 May 2026 11:40:19 +0200 Subject: [PATCH 02/11] fix(metrics): drop late recordTurnComplete after recordTurnInterrupted on same turn MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pipeline `transcript.jsonl` rows after a barge-in carried an empty `user_text` even when the user had clearly spoken. Root cause was a race between the two turn-close paths: 1. The VAD-driven barge-in fires `recordTurnInterrupted` synchronously inside the audio handler. `_resetTurnState` clears `_turnUserText`. 2. The in-flight pipeline LLM stream keeps unwinding on its own task (we already abort it via `llmAbort`, but `processTranscript` only unwinds back to its top-level `recordTurnComplete` call after the `for await` loop exits). 3. That late `recordTurnComplete` pushed a SECOND turn for the same logical exchange — `agent_text=`, `user_text=""`. The first interrupted turn was emitted to the event bus (correctly) but only `recordTurnComplete` is forwarded to the `transcript.jsonl` writer, so the operator-facing JSON showed the phantom row. Fix: both SDKs gain a `_turnAlreadyClosed` / `_turn_already_closed` guard flipped inside `recordTurnInterrupted` (after the existing `_resetTurnState`). `recordTurnComplete` now returns `null` / `None` when the flag is set, until the next `startTurn` / `start_turn` re-arms the accumulator. `emitTurnMetrics` / `_emit_turn_metrics` were already null-safe, so the late call becomes a silent no-op end-to-end. Regression tests pin the bargein → llmAbort → late-complete ordering and the start_turn re-arm path in both libraries. See `patter-sdk-acceptance/BUGS.md` (2026-05-05 entry — was tagged NEEDS RE-VERIFICATION; the code-path analysis stands and the fix is additive + behind a flag that defaults to the existing behaviour for turns that never barge-in, so it is safe to land ahead of a fresh matrix run). --- CHANGELOG.md | 19 +++++++ .../python/getpatter/services/metrics.py | 31 ++++++++++- libraries/python/tests/test_metrics.py | 51 +++++++++++++++++- libraries/typescript/src/metrics.ts | 33 +++++++++++- libraries/typescript/tests/metrics.test.ts | 54 +++++++++++++++++++ 5 files changed, 183 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4caef5a5..ae0f5101 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,25 @@ ### Fixed +- **Pipeline metrics: `transcript.jsonl` rows after a barge-in carried an + empty `user_text` even when the user had clearly spoken.** Root cause + was a race between the two turn-close paths: a VAD-driven barge-in + fired `record_turn_interrupted` / `recordTurnInterrupted` synchronously + inside the audio handler and `_reset_turn_state` cleared + `_turn_user_text`, while the in-flight pipeline LLM stream kept + unwinding on its own task and eventually reached + `record_turn_complete` / `recordTurnComplete` — which then pushed a + second turn for the same logical exchange carrying `user_text=""`. + Both SDKs now flip a `_turn_already_closed` / `_turnAlreadyClosed` + guard on `record_turn_interrupted` and have `record_turn_complete` + return `None` / `null` until the next `start_turn` re-arms the + accumulator. `_emit_turn_metrics` / `emitTurnMetrics` were already + null-safe, so the late call becomes a silent no-op end-to-end. + Regression tests pinning the bargein → llmAbort → late-complete + ordering live in `libraries/python/tests/test_metrics.py` and + `libraries/typescript/tests/metrics.test.ts`. See + `patter-sdk-acceptance/BUGS.md` (2026-05-05 entry). + - **CI: Security Audit workflow could not upload Bandit SARIF to the GitHub Security tab.** The `bandit` job in `.github/workflows/audit.yml` was failing on `github/codeql-action/upload-sarif` with `Resource not diff --git a/libraries/python/getpatter/services/metrics.py b/libraries/python/getpatter/services/metrics.py index 1637816b..1c0a794e 100644 --- a/libraries/python/getpatter/services/metrics.py +++ b/libraries/python/getpatter/services/metrics.py @@ -90,6 +90,18 @@ def __init__( self._bargein_stopped_at: float | None = None self._turn_user_text: str = "" self._turn_stt_audio_seconds: float = 0.0 + # Guard against the record_turn_interrupted / record_turn_complete + # race. A VAD-path barge-in fires ``record_turn_interrupted`` + # synchronously inside the handler while the in-flight pipeline + # LLM stream keeps unwinding on its own task. When the LLM stream + # eventually exits, the pipeline path falls through to + # ``record_turn_complete``, which would push a second turn for + # the same logical exchange (this time carrying ``user_text=""`` + # because the field was already reset). The flag is flipped by + # ``record_turn_interrupted`` and read by ``record_turn_complete`` + # so the late ``record_turn_complete`` becomes a no-op until the + # next ``start_turn`` re-arms the accumulator. + self._turn_already_closed: bool = False # Cross-turn TTFT storage so _emit_turn_metrics can read it after reset self._last_turn_llm_ttft_ms: float = 0.0 @@ -201,6 +213,7 @@ def start_turn(self) -> None: self._bargein_stopped_at = None self._turn_user_text = "" self._turn_stt_audio_seconds = 0.0 + self._turn_already_closed = False # Reset per-turn TTFB guard flags self._llm_ttfb_emitted = False self._tts_ttfb_emitted = False @@ -397,8 +410,18 @@ def record_tts_stopped(self, ts: float | None = None) -> None: """ self._bargein_stopped_at = ts if ts is not None else time.monotonic() - def record_turn_complete(self, agent_text: str) -> TurnMetrics: - """Finalize the current turn and return its metrics.""" + def record_turn_complete(self, agent_text: str) -> TurnMetrics | None: + """Finalize the current turn and return its metrics. + + Returns ``None`` when ``record_turn_interrupted`` has already + closed the current turn — this protects against the VAD-barge-in + / pipeline-LLM race where both paths try to finalise the same + logical turn and the second would otherwise push a phantom entry + with ``user_text=''``. The caller treats ``None`` as "nothing to + emit"; ``_emit_turn_metrics`` is already null-safe. + """ + if self._turn_already_closed: + return None latency = self._compute_turn_latency() turn = TurnMetrics( turn_index=len(self._turns), @@ -455,6 +478,10 @@ def record_turn_interrupted(self) -> TurnMetrics | None: {"call_id": self.call_id, "turn": turn}, ) self._reset_turn_state() + # Mark the turn as closed so a late record_turn_complete from + # the pipeline-LLM unwind path becomes a no-op (see + # _turn_already_closed). + self._turn_already_closed = True # Extra paranoia: explicitly null out anchors that have caused leaks # into subsequent turns when a barge-in is in flight. _reset_turn_state # already clears them, but keep this belt-and-braces line so future diff --git a/libraries/python/tests/test_metrics.py b/libraries/python/tests/test_metrics.py index 604e1557..a2f33a7d 100644 --- a/libraries/python/tests/test_metrics.py +++ b/libraries/python/tests/test_metrics.py @@ -1,6 +1,5 @@ """Tests for the CallMetricsAccumulator.""" - import pytest from getpatter.models import CallMetrics, CostBreakdown, LatencyBreakdown, TurnMetrics @@ -89,6 +88,56 @@ def test_interrupted_turn_no_active_turn(self): turn = acc.record_turn_interrupted() assert turn is None + def test_record_turn_complete_is_noop_after_interrupted(self): + """Late ``record_turn_complete`` after ``record_turn_interrupted`` on + the same turn must be a no-op. + + Repro of the VAD-barge-in / pipeline-LLM race documented in + ``BUGS.md`` (2026-05-05). The barge-in path closes the turn with + ``record_turn_interrupted`` while the in-flight pipeline LLM + stream eventually unwinds and reaches ``record_turn_complete``. + Without the guard, the late call would push a phantom turn with + ``user_text=''`` (since ``_reset_turn_state`` cleared the field) + and ``agent_text`` from the cancelled LLM stream. + """ + acc = self._make_accumulator() + + acc.start_turn() + acc.record_stt_complete("Hello", audio_seconds=1.0) + interrupted = acc.record_turn_interrupted() + assert interrupted is not None + assert interrupted.user_text == "Hello" + assert interrupted.agent_text == "[interrupted]" + + # Late pipeline-LLM unwind reaches record_turn_complete with the + # cancelled responseText — must be silently dropped. + late = acc.record_turn_complete("partial LLM output") + assert late is None + + # Only the interrupted turn is recorded. + result = acc.end_call() + assert len(result.turns) == 1 + assert result.turns[0].agent_text == "[interrupted]" + assert result.turns[0].user_text == "Hello" + + def test_record_turn_complete_rearms_after_start_turn(self): + """A fresh ``start_turn`` must re-arm the accumulator so the next + ``record_turn_complete`` is allowed again.""" + acc = self._make_accumulator() + + acc.start_turn() + acc.record_stt_complete("Hello") + acc.record_turn_interrupted() + assert acc.record_turn_complete("dropped") is None + + # New turn begins. + acc.start_turn() + acc.record_stt_complete("Second turn") + completed = acc.record_turn_complete("Reply") + assert completed is not None + assert completed.user_text == "Second turn" + assert completed.agent_text == "Reply" + def test_stt_audio_bytes_tracking(self): acc = self._make_accumulator() # Twilio mulaw: 8kHz, 1 byte/sample → 8000 bytes = 1 second diff --git a/libraries/typescript/src/metrics.ts b/libraries/typescript/src/metrics.ts index 96c3dce9..c1d205a5 100644 --- a/libraries/typescript/src/metrics.ts +++ b/libraries/typescript/src/metrics.ts @@ -245,6 +245,21 @@ export class CallMetricsAccumulator { private _bargeinStoppedAt: number | null = null; private _turnUserText = ''; private _turnSttAudioSeconds = 0; + /** + * Guard against the recordTurnInterrupted / recordTurnComplete race. + * + * A VAD-path barge-in fires ``recordTurnInterrupted`` synchronously + * inside ``handleAudioAsync`` while the in-flight pipeline LLM stream + * keeps unwinding on its own task. When the LLM stream eventually + * exits, the existing pipeline path falls through to + * ``recordTurnComplete``, which would push a second turn for the same + * logical exchange (this time carrying ``user_text=''`` because the + * field was already reset). ``_turnAlreadyClosed`` is flipped by + * ``recordTurnInterrupted`` and read by ``recordTurnComplete`` so the + * late ``recordTurnComplete`` becomes a no-op until the next + * ``startTurn`` re-arms the accumulator. + */ + private _turnAlreadyClosed = false; // Cumulative usage counters private _totalSttAudioSeconds = 0; @@ -371,6 +386,7 @@ export class CallMetricsAccumulator { this._bargeinStoppedAt = null; this._turnUserText = ''; this._turnSttAudioSeconds = 0; + this._turnAlreadyClosed = false; // Reset EOU state for this turn this._vadStoppedAt = null; this._sttFinalAt = null; @@ -569,8 +585,18 @@ export class CallMetricsAccumulator { this._bargeinStoppedAt = ts ?? hrTimeMs(); } - /** Close the current turn cleanly and append a `TurnMetrics` record. */ - recordTurnComplete(agentText: string): TurnMetrics { + /** + * Close the current turn cleanly and append a `TurnMetrics` record. + * + * Returns ``null`` when ``recordTurnInterrupted`` has already closed + * the current turn — this protects against the VAD-barge-in / + * pipeline-LLM race where both paths try to finalise the same logical + * turn and the second would otherwise push a phantom entry with + * ``user_text=''``. The caller treats ``null`` as "nothing to emit"; + * ``emitTurnMetrics`` is already null-safe. + */ + recordTurnComplete(agentText: string): TurnMetrics | null { + if (this._turnAlreadyClosed) return null; const latency = this._computeTurnLatency(); const turn: TurnMetrics = { turn_index: this._turns.length, @@ -607,6 +633,9 @@ export class CallMetricsAccumulator { this._eventBus?.emit('turn_ended', { callId: this.callId, turn }); this._eventBus?.emit('metrics_collected', { callId: this.callId, turn }); this._resetTurnState(); + // Mark the turn as closed so a late recordTurnComplete from the + // pipeline-LLM unwind path becomes a no-op (see _turnAlreadyClosed). + this._turnAlreadyClosed = true; // Extra paranoia: explicitly null out anchors that have caused leaks // into subsequent turns when a barge-in is in flight. _resetTurnState // already clears them, but keep this belt-and-braces line so future diff --git a/libraries/typescript/tests/metrics.test.ts b/libraries/typescript/tests/metrics.test.ts index befaa651..82d2ebdd 100644 --- a/libraries/typescript/tests/metrics.test.ts +++ b/libraries/typescript/tests/metrics.test.ts @@ -58,6 +58,60 @@ describe('CallMetricsAccumulator', () => { expect(turn!.tts_characters).toBe(0); }); + it('recordTurnComplete is a no-op after recordTurnInterrupted on the same turn', () => { + // Repro of the VAD-barge-in / pipeline-LLM race documented in + // BUGS.md (2026-05-05). The barge-in path closes the turn with + // recordTurnInterrupted while the in-flight pipeline LLM stream + // eventually unwinds and reaches recordTurnComplete. Without the + // guard, the late call would push a phantom turn with user_text='' + // (since _resetTurnState cleared the field) and agent_text from + // the cancelled LLM stream. + const acc = new CallMetricsAccumulator({ + callId: 'race1', + providerMode: 'pipeline', + telephonyProvider: 'twilio', + }); + + acc.startTurn(); + acc.recordSttComplete('Hello'); + const interrupted = acc.recordTurnInterrupted(); + expect(interrupted).not.toBeNull(); + expect(interrupted!.user_text).toBe('Hello'); + expect(interrupted!.agent_text).toBe('[interrupted]'); + + // Late pipeline-LLM unwind reaches recordTurnComplete with the + // cancelled responseText — must be silently dropped. + const late = acc.recordTurnComplete('partial LLM output'); + expect(late).toBeNull(); + + // Only the interrupted turn is recorded. + const result = acc.endCall(); + expect(result.turns).toHaveLength(1); + expect(result.turns[0].agent_text).toBe('[interrupted]'); + expect(result.turns[0].user_text).toBe('Hello'); + }); + + it('startTurn re-arms the accumulator after an interrupted turn', () => { + const acc = new CallMetricsAccumulator({ + callId: 'race2', + providerMode: 'pipeline', + telephonyProvider: 'twilio', + }); + + acc.startTurn(); + acc.recordSttComplete('Hello'); + acc.recordTurnInterrupted(); + expect(acc.recordTurnComplete('dropped')).toBeNull(); + + // New turn begins. + acc.startTurn(); + acc.recordSttComplete('Second turn'); + const completed = acc.recordTurnComplete('Reply'); + expect(completed).not.toBeNull(); + expect(completed!.user_text).toBe('Second turn'); + expect(completed!.agent_text).toBe('Reply'); + }); + it('computes cost for pipeline mode', () => { const acc = new CallMetricsAccumulator({ callId: 'c4', From 20ffbac12990b5afc53f4d9d52608ac0f48e3e49 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 18 May 2026 12:00:18 +0200 Subject: [PATCH 03/11] feat(pipeline): enable prewarmFirstMessage by default MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every pipeline acceptance run hit a 1.5-2.5 s p95 on the first turn because the TTS first-byte latency (200-700 ms cold) was serialised with the carrier's media-start event. Pre-rendering the greeting during the ringing window and streaming the cached buffer at pickup collapses that to a single Buffer.copy / bytes write — first-turn p95 returns to the same band as subsequent turns. Trade-off: paying the TTS bill on calls that ring and never answer (~$0.001-$0.005 each depending on TTS provider). Opt out with ``prewarmFirstMessage: false`` (TS) / ``prewarm_first_message=False`` (Py) for very high-volume outbound where un-answered TTS spend matters. Changes: - libraries/python/getpatter/models.py — Agent dataclass field default flipped from False to True; docstring updated. - libraries/typescript/src/client.ts — Patter.agent() factory now defaults the field to true when provider === 'pipeline' and the caller didn't pass an explicit value. Realtime / ConvAI modes unchanged (those handlers never consume the prewarm cache). - libraries/typescript/src/types.ts — docstring updated. Tests added in both SDKs covering the new default and the opt-out path. --- CHANGELOG.md | 23 ++++++++++++ libraries/python/getpatter/models.py | 16 +++++---- libraries/python/tests/test_prewarm.py | 18 ++++++++-- libraries/typescript/src/client.ts | 13 +++++++ libraries/typescript/src/types.ts | 19 +++++----- .../typescript/tests/unit/prewarm.test.ts | 35 ++++++++++++++++++- 6 files changed, 105 insertions(+), 19 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ae0f5101..4151c170 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,28 @@ ## Unreleased +### Changed + +- **Pipeline `prewarmFirstMessage` / `prewarm_first_message` now defaults + to `true`.** Every pipeline acceptance run had a 1.5-2.5 s `p95` on the + first turn because the TTS first-byte latency (200-700 ms cold) was + serialised with the carrier's `media-start` event. Pre-rendering the + greeting during the ringing window and streaming the cached buffer at + pickup collapses that to a single `Buffer.copy` / `bytes` write — + first-turn `p95` on the regenerated matrix scripts drops back into the + same band as subsequent turns. + + The trade-off is paying the TTS bill on calls that ring and never + answer (~$0.001-$0.005 each depending on TTS provider). Restore the + prior behaviour by passing `prewarmFirstMessage: false` (TS) / + `prewarm_first_message=False` (Py) on `phone.agent({...})` — useful + for very high-volume outbound where un-answered TTS spend matters. + + Default applied at: `libraries/python/getpatter/models.py:Agent` + (dataclass field default) and + `libraries/typescript/src/client.ts:Patter.agent()` (factory default + for `provider === 'pipeline'`). Realtime / ConvAI provider modes are + not affected — those handlers never consume the prewarm cache. + ### Fixed - **Pipeline metrics: `transcript.jsonl` rows after a barge-in carried an diff --git a/libraries/python/getpatter/models.py b/libraries/python/getpatter/models.py index e3c036cc..9a546a73 100644 --- a/libraries/python/getpatter/models.py +++ b/libraries/python/getpatter/models.py @@ -214,21 +214,23 @@ class Agent: # call. See ``docs/python-sdk/latency.mdx`` for the cold-start latency # rationale. prewarm: bool = True - # When ``True`` (default ``False``), ``Patter.call`` also pre-renders + # When ``True`` (default since 0.6.2), ``Patter.call`` pre-renders # ``first_message`` to TTS audio bytes during the ringing window and # streams the cached buffer immediately when the carrier emits ``start``. - # Eliminates the 200-700 ms TTS first-byte latency on the greeting at the - # cost of paying the TTS bill even if the call is never answered (silently - # logged at WARN level when the call fails). Off by default to preserve - # the prior cost surface; opt-in for production outbound where every - # millisecond of greeting latency hurts conversion. + # Eliminates the 200-700 ms TTS first-byte latency on the greeting that + # dominated the first-turn ``p95`` on every pipeline acceptance run. + # The trade-off is paying the TTS bill even if the call is never + # answered (silently logged at WARN level when the call fails) — + # typically $0.001-$0.005 per ringing call depending on TTS provider. + # Opt out by passing ``prewarm_first_message=False`` (e.g. for very + # high-volume outbound where un-answered TTS spend matters). # # **Pipeline mode only.** Realtime / ConvAI provider modes never # consume the prewarm cache (the StreamHandler for those modes runs # its first-message emit through the provider's own audio path), so # ``Patter.call`` refuses to spawn the prewarm task and emits a WARN # when ``provider != "pipeline"``. - prewarm_first_message: bool = False + prewarm_first_message: bool = True @dataclass(frozen=True) diff --git a/libraries/python/tests/test_prewarm.py b/libraries/python/tests/test_prewarm.py index 65376b77..0f9bbf98 100644 --- a/libraries/python/tests/test_prewarm.py +++ b/libraries/python/tests/test_prewarm.py @@ -122,10 +122,24 @@ async def _wait_for_tasks(phone: Patter, timeout: float = 1.0) -> None: async def test_default_prewarm_flag_is_true() -> None: - """``Agent.prewarm`` defaults to True; ``prewarm_first_message`` defaults - to False to preserve the prior cost surface (opt-in for the TTS bill).""" + """``Agent.prewarm`` and ``Agent.prewarm_first_message`` both default to + True since 0.6.2 — first-turn p95 on pipeline mode was dominated by + the 200-700 ms TTS first-byte latency on the greeting, eliminated by + pre-rendering during the ringing window.""" agent = Agent(system_prompt="hi", first_message="hello") assert agent.prewarm is True + assert agent.prewarm_first_message is True + + +async def test_prewarm_first_message_opt_out() -> None: + """Callers can disable greeting pre-rendering with + ``prewarm_first_message=False`` to restore the pre-0.6.2 cost surface + (no TTS bill on un-answered calls).""" + agent = Agent( + system_prompt="hi", + first_message="hello", + prewarm_first_message=False, + ) assert agent.prewarm_first_message is False diff --git a/libraries/typescript/src/client.ts b/libraries/typescript/src/client.ts index 2138df15..2ee2ae29 100644 --- a/libraries/typescript/src/client.ts +++ b/libraries/typescript/src/client.ts @@ -520,6 +520,19 @@ export class Patter { validateAllToolSchemas(working.tools as ToolDefinition[]); } + // Default `prewarmFirstMessage` to true in pipeline mode (0.6.2). + // First-turn p95 on every pipeline acceptance run was dominated by + // the 200-700 ms TTS first-byte latency on the greeting; pre-rendering + // during the ringing window collapses that to a single buffer-copy at + // pickup. Opt-out by passing `prewarmFirstMessage: false` explicitly + // — high-volume outbound where un-answered TTS spend matters can + // restore the pre-0.6.2 behaviour. Realtime / ConvAI modes never + // consume the cache; leave them unchanged so we don't pay TTS for a + // synth no caller will hear. + if (working.prewarmFirstMessage === undefined && working.provider === 'pipeline') { + working = { ...working, prewarmFirstMessage: true }; + } + return working; } diff --git a/libraries/typescript/src/types.ts b/libraries/typescript/src/types.ts index b1561c83..3551aca2 100644 --- a/libraries/typescript/src/types.ts +++ b/libraries/typescript/src/types.ts @@ -470,15 +470,16 @@ export interface AgentOptions { */ prewarm?: boolean; /** - * When ``true`` (default ``false``), ``Patter.call`` also pre-renders - * ``firstMessage`` to TTS audio bytes during the ringing window and - * streams the cached buffer immediately when the carrier emits - * ``start``. Eliminates the 200-700 ms TTS first-byte latency on the - * greeting at the cost of paying the TTS bill even if the call is - * never answered (silently logged at warn level when the call - * fails). Off by default to preserve the prior cost surface; opt-in - * for production outbound where every millisecond of greeting - * latency hurts conversion. Default: ``false``. + * When ``true`` (default since 0.6.2 in pipeline mode), ``Patter.call`` + * pre-renders ``firstMessage`` to TTS audio bytes during the ringing + * window and streams the cached buffer immediately when the carrier + * emits ``start``. Eliminates the 200-700 ms TTS first-byte latency + * on the greeting that dominated first-turn ``p95`` on every pipeline + * acceptance run. The trade-off is paying the TTS bill even if the + * call is never answered (silently logged at warn level when the call + * fails) — typically $0.001-$0.005 per ringing call depending on TTS + * provider. Opt out by passing ``prewarmFirstMessage: false`` (e.g. + * for very high-volume outbound where un-answered TTS spend matters). * * **Pipeline mode only.** Realtime / ConvAI provider modes never * consume the prewarm cache (the StreamHandler for those modes runs diff --git a/libraries/typescript/tests/unit/prewarm.test.ts b/libraries/typescript/tests/unit/prewarm.test.ts index 5d5c8096..eba5b222 100644 --- a/libraries/typescript/tests/unit/prewarm.test.ts +++ b/libraries/typescript/tests/unit/prewarm.test.ts @@ -96,7 +96,40 @@ describe('[unit] prewarm — Agent flag defaults', () => { expect(agent.prewarmFirstMessage).toBeUndefined(); // Default behaviour: prewarm is on unless user explicitly set false. expect(agent.prewarm !== false).toBe(true); - expect(Boolean(agent.prewarmFirstMessage)).toBe(false); + }); + + it('phone.agent() defaults prewarmFirstMessage to true in pipeline mode', () => { + const phone = makePatter(); + const stt = new StubSTT(); + const tts = new StubTTS(); + const llm = new StubLLM(); + const agent = phone.agent({ systemPrompt: 'hi', stt, tts, llm }); + expect(agent.provider).toBe('pipeline'); + expect(agent.prewarmFirstMessage).toBe(true); + }); + + it('phone.agent() does NOT default prewarmFirstMessage in realtime mode', () => { + // Realtime / ConvAI handlers never consume the prewarm cache; setting + // the flag would only waste TTS spend, so the default stays off when + // the caller didn't explicitly pick pipeline. + const phone = makePatter(); + const agent = phone.agent({ systemPrompt: 'hi', provider: 'openai_realtime' }); + expect(agent.prewarmFirstMessage).toBeUndefined(); + }); + + it('phone.agent() preserves explicit prewarmFirstMessage=false in pipeline mode (opt-out)', () => { + const phone = makePatter(); + const stt = new StubSTT(); + const tts = new StubTTS(); + const llm = new StubLLM(); + const agent = phone.agent({ + systemPrompt: 'hi', + stt, + tts, + llm, + prewarmFirstMessage: false, + }); + expect(agent.prewarmFirstMessage).toBe(false); }); }); From 5574997c13573a5bd4ffc3834d604634f4683199 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 18 May 2026 17:01:39 +0200 Subject: [PATCH 04/11] fix(prewarm): burst-deliver prewarmed first-message bytes, drop the slow per-chunk sleep MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit sendPacedFirstMessageBytes (TS) / _send_paced_first_message_bytes (Py) were pacing each prewarm chunk with setTimeout / asyncio.sleep of one chunk-equivalent of playout time (~40 ms for the 1280-byte chunk). Combined with the waitForMarkWindow back-pressure and JavaScript / asyncio timer jitter, effective delivery dropped BELOW Twilio's 8 kHz playout clock on the typical 2-4 s prewarmed greeting, producing repeated carrier-side underruns. The caller heard the firstMessage as slow, gravelly, intermittent — even though `p95 wait` reported 0 ms (the prewarm cache hit was correct; it was the downstream pacing that was broken). Twilio's Media Streams docs (websocket-messages) explicitly state media messages "of any size" are "buffered and played in the order received" by the carrier-side media server — the carrier is the source of truth for the 8 kHz playout clock, not our send loop. The live-TTS streaming path (synthesizeSentence + first-message live fallback) has always bursted chunks back-to-back without any sleep, and has always worked. Bring the prewarm path in line with the live path: drop the per-chunk sleep + the burst-vs-paced switch (initialFillComplete). Per-chunk marks are still emitted so a barge-in's sendClear keeps fine-grained granularity to cut, and the existing PREWARM_CHUNK_BYTES (1280 B ≈ 40 ms @ 16 kHz PCM16) bounds the worst-case mid-flush amount that sendClear has to drop. Cleaned up the now-unused PCM16_16K_BYTES_PER_MS constant in both SDKs. --- CHANGELOG.md | 27 ++++++++++++ libraries/python/getpatter/stream_handler.py | 39 +++++++---------- libraries/typescript/src/stream-handler.ts | 44 +++++++------------- 3 files changed, 57 insertions(+), 53 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4151c170..028b2c31 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,32 @@ ## Unreleased +### Fixed + +- **First-message prewarm playback was slow + gravelly + intermittent on + Twilio.** `sendPacedFirstMessageBytes` (TS) / + `_send_paced_first_message_bytes` (Py) paced each prewarm chunk with a + `setTimeout` / `asyncio.sleep` of one chunk-equivalent of playout time + (~40 ms for the 1280-byte default chunk). Combined with the + `waitForMarkWindow` back-pressure await and JavaScript/asyncio timer + jitter, effective delivery dropped BELOW Twilio's 8 kHz playout clock + on the 2-4 s prewarmed greeting buffer, producing repeated carrier- + side underruns. Caller heard the message "slow, gravelly, and + arriving more slowly than the rest". Twilio's docs (Media Streams → + WebSocket Messages) explicitly state "media messages of any size" are + "buffered and played in the order received" by the carrier-side media + server — the carrier is the source of truth for the playout clock, + not our send loop. Removed the per-chunk sleep + the burst-vs-paced + switch (`initialFillComplete`) so the prewarm path now bursts all + chunks back-to-back, matching the live-TTS streaming path that has + always worked. Per-chunk marks are still emitted, so a barge-in's + `sendClear` keeps fine-grained granularity to cut. + + Verified against `outbound-openai-transcribe-openai-openai`: + pre-fix the same acceptance scenario produced slow/gravelly first- + message playback with `p95 wait=0 ms` (prewarm cache hit was correct, + but downstream pacing was broken). Files: `libraries/typescript/src/ + stream-handler.ts`, `libraries/python/getpatter/stream_handler.py`. + ### Changed - **Pipeline `prewarmFirstMessage` / `prewarm_first_message` now defaults diff --git a/libraries/python/getpatter/stream_handler.py b/libraries/python/getpatter/stream_handler.py index a75c42dc..f4b11b01 100644 --- a/libraries/python/getpatter/stream_handler.py +++ b/libraries/python/getpatter/stream_handler.py @@ -3455,10 +3455,6 @@ async def _flush_inbound_audio_ring(self) -> None: # deadlock window when a carrier (or a test double) never echoes — # playout may glitch by one chunk on timeout but the call stays alive. _MARK_AWAIT_TIMEOUT_S: float = 0.5 - # Bytes-per-millisecond for a 16 kHz PCM16 mono stream — used by the - # non-Twilio firstMessage pacing path to translate chunk size into a - # playout-duration sleep. 16000 samples/sec × 2 bytes = 32 bytes/ms. - _PCM16_16K_BYTES_PER_MS: int = 32 def _drain_pending_marks(self) -> None: """Resolve every entry in ``_pending_marks`` and empty the FIFO. @@ -3588,15 +3584,23 @@ async def _send_paced_first_message_bytes(self, bytes_: bytes) -> bool: self._drain_pending_marks() self._first_message_mark_counter = 0 first_chunk_sent = False - # Once the mark window is first filled we switch to playout-time pacing - # to prevent batch-ACK bursts. Before that we send in burst so the first - # _FIRST_MESSAGE_MARK_WINDOW chunks pre-fill the PSTN jitter buffer. - initial_fill_complete = False + # Burst delivery: send all chunks back-to-back, exactly like the live + # TTS path (synthesize_sentence / first_message live fallback). + # Twilio explicitly accepts "media messages of any size" — frames + # are "buffered and played in the order received" by the carrier- + # side media server, which is the source of truth for the 8 kHz + # playout clock. Earlier revisions paced each chunk by + # ``playout_ms`` via ``asyncio.sleep`` to "throttle to the playout + # rate", but the cumulative ``_wait_for_mark_window`` wait pushed + # effective delivery BELOW Twilio's playout rate on long intros + # (the prewarm cache is typically 2-4 s of audio), producing + # periodic carrier-side buffer underruns audible to the caller as + # slow, gravelly, intermittent playback. Marks are still emitted + # per chunk so a barge-in's ``send_clear`` still has fine-grained + # granularity to cut. for i in range(0, len(bytes_), self._PREWARM_CHUNK_BYTES): if not self._is_speaking: break # barge-in mid-buffer — stop now - # Back-pressure: if too many marks are unconfirmed, wait. - # Drains immediately on cancel. await self._wait_for_mark_window() if not self._is_speaking: break @@ -3607,20 +3611,7 @@ async def _send_paced_first_message_bytes(self, bytes_: bytes) -> bool: self._aec.push_far_end(chunk) await self.audio_sender.send_audio(chunk) self._mark_first_audio_sent() - mark_future = await self._send_mark_awaitable() - if ( - not initial_fill_complete - and len(self._pending_marks) >= self._FIRST_MESSAGE_MARK_WINDOW - ): - initial_fill_complete = True - # Telnyx has no mark concept — always pace by playout time. - # Twilio: the first _FIRST_MESSAGE_MARK_WINDOW chunks go out in burst - # to pre-fill the PSTN jitter buffer (250–1500 ms), then playout-time - # pacing kicks in (via the sticky initial_fill_complete flag) to prevent - # batch-ACK bursts from draining the buffer → crackling. - if mark_future is None or initial_fill_complete: - playout_ms = max(1, len(chunk) // self._PCM16_16K_BYTES_PER_MS) - await asyncio.sleep(playout_ms / 1000.0) + await self._send_mark_awaitable() return first_chunk_sent async def cleanup(self) -> None: diff --git a/libraries/typescript/src/stream-handler.ts b/libraries/typescript/src/stream-handler.ts index 3c68078d..52817b03 100644 --- a/libraries/typescript/src/stream-handler.ts +++ b/libraries/typescript/src/stream-handler.ts @@ -565,13 +565,6 @@ export class StreamHandler { } } - /** - * Bytes-per-millisecond for a 16 kHz PCM16 mono stream. Used by the - * non-Twilio firstMessage pacing path to translate chunk size into a - * playout-duration sleep. 16000 samples/sec × 2 bytes = 32 bytes/ms. - */ - private static readonly PCM16_16K_BYTES_PER_MS = 32; - /** Cancel and clear the pending grace timer, if any. */ private clearGraceTimer(): void { if (this.graceTimer !== null) { @@ -1527,14 +1520,22 @@ export class StreamHandler { if (this.pendingMarks.length > 0) this.drainPendingMarks(); this.firstMessageMarkCounter = 0; let firstChunkSent = false; - // Once the mark window is first filled we switch to playout-time pacing - // to prevent batch-ACK bursts. Before that we send in burst so the first - // FIRST_MESSAGE_MARK_WINDOW chunks pre-fill the PSTN jitter buffer. - let initialFillComplete = false; + // Burst delivery: send all chunks back-to-back, exactly like the live + // TTS path (synthesizeSentence / firstMessage live fallback). Twilio + // explicitly accepts "media messages of any size" — frames are + // "buffered and played in the order received" by the carrier-side + // media server, which is the source of truth for the 8 kHz playout + // clock. Earlier revisions paced each chunk by ``playoutMs`` via + // setTimeout to "throttle to the playout rate", but JavaScript + // setTimeout drift + the cumulative ``waitForMarkWindow`` wait + // pushed effective delivery BELOW Twilio's playout rate on long + // intros (the prewarm cache is typically 2-4 s of audio), producing + // periodic carrier-side buffer underruns audible to the caller as + // slow, gravelly, intermittent playback. Marks are still emitted + // per chunk so a barge-in's ``sendClear`` still has fine-grained + // granularity to cut. for (let i = 0; i < bytes.length; i += StreamHandler.PREWARM_CHUNK_BYTES) { if (!this.isSpeaking) break; // barge-in mid-buffer — stop now - // Back-pressure: if too many marks are unconfirmed, wait. Drains - // immediately on cancelSpeaking. await this.waitForMarkWindow(); if (!this.isSpeaking) break; const chunk = bytes.subarray(i, i + StreamHandler.PREWARM_CHUNK_BYTES); @@ -1543,22 +1544,7 @@ export class StreamHandler { const encoded = this.encodePipelineAudio(chunk); this.deps.bridge.sendAudio(this.ws, encoded, this.streamSid); this.markFirstAudioSent(); - const markPromise = this.sendMarkAwaitable(); - if (!initialFillComplete && this.pendingMarks.length >= StreamHandler.FIRST_MESSAGE_MARK_WINDOW) { - initialFillComplete = true; - } - // Telnyx has no mark concept — always pace by playout time. - // Twilio: the first FIRST_MESSAGE_MARK_WINDOW chunks go out in burst - // to pre-fill the PSTN jitter buffer (250–1500 ms), then playout-time - // pacing kicks in (via the sticky initialFillComplete flag) to prevent - // batch-ACK bursts from draining the buffer → crackling. - if (markPromise === null || initialFillComplete) { - const playoutMs = Math.max( - 1, - Math.floor(chunk.length / StreamHandler.PCM16_16K_BYTES_PER_MS), - ); - await new Promise((resolve) => setTimeout(resolve, playoutMs)); - } + this.sendMarkAwaitable(); } return firstChunkSent; } From d77223e4ad18fa81012464960e55d0d006768558 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 18 May 2026 17:39:10 +0200 Subject: [PATCH 05/11] fix+docs: post-quality-gate cleanup for 0.6.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Surfaced by a parallel review pass (code-reviewer + sdk-parity + docs-sync + code-simplifier agents on the release/0.6.2 diff). 1. **Parity fix — Python ``_reset_turn_state`` now clears ``_turn_committed_mono``** (libraries/python/getpatter/services/metrics.py). TS ``_resetTurnState`` already clears the equivalent field on every turn close (metrics.ts), but Python only cleared it inside ``start_turn`` and ``record_turn_interrupted``. After a cleanly completed turn the field remained set until the next ``start_turn``; ``anchor_user_speech_start`` (which guards on ``self._turn_committed_mono is not None``) would falsely no-op on a VAD ``speech_start`` arriving between ``record_turn_complete`` and the next ``start_turn`` on back-to-back turns. Single-line additive fix; no behaviour change on already-aligned flows. 2. **Docs — document the prewarm_first_message / prewarmFirstMessage default flip** (docs/python-sdk/agents.mdx, docs/typescript-sdk/agents.mdx). Added a row in each AgentOptions table calling out the 0.6.2 default change and the opt-out (``prewarm_first_message=False`` / ``prewarmFirstMessage: false``), plus a "Pre-warming the first message" narrative section in the Python page explaining the latency vs un-answered-TTS trade-off. 3. **Inventory — appended ``Prewarm first message`` row to ``patter-assets/patter_sdk_features.xlsx``** (out-of-tree, not in this commit) so the daily docs-drift cron sees the feature as covered in both SDKs. Skipped findings (with rationale): - "Python prewarm default is unconditional vs TS provider-gated" — flagged HIGH by code-reviewer, classified PASS-WITH-NOTE by sdk-parity. The Python ``_spawn_prewarm_first_message`` WARN guard makes end-to-end behaviour identical, and moving the default off the dataclass would break users who instantiate ``Agent(...)`` directly. Documented divergence accepted. - "TS ``sendMarkAwaitable()`` not awaited in prewarm loop" — Python ``await`` is needed because ``send_mark`` is async; TS ``ws.send`` is sync void. The returned ``Promise | null`` is the ACK future consumed later by ``onMark`` / ``drainPendingMarks``, NOT a write await. Behaviourally equivalent. - "Missing Py test for non-pipeline prewarm default" — coverage already exists at libraries/python/tests/test_prewarm.py:702 and :725 (``test_prewarm_skipped_for_realtime_provider`` and ``..._for_convai_provider``). - "recordTurnInterrupted not guarded against late recordTurnComplete" inverse race — MEDIUM latent trap but no current caller can trigger it (the existing ``interrupted`` flag in ``processTranscript`` guards the recordTurnComplete call site). Tracked for a future hardening pass. Tests: Python 58/58 (test_metrics.py + test_prewarm.py), TypeScript lint clean. --- docs/python-sdk/agents.mdx | 17 +++++++++++++++++ docs/typescript-sdk/agents.mdx | 1 + libraries/python/getpatter/services/metrics.py | 7 +++++++ 3 files changed, 25 insertions(+) diff --git a/docs/python-sdk/agents.mdx b/docs/python-sdk/agents.mdx index 26df9d32..f276cb29 100644 --- a/docs/python-sdk/agents.mdx +++ b/docs/python-sdk/agents.mdx @@ -89,6 +89,7 @@ agent = phone.agent( | `barge_in_threshold_ms` | `int` | `300` | Sustained-voice window (ms) before treating caller audio as barge-in. Set to `0` to disable. | | `aggressive_first_flush` | `bool` | `False` | Opt-in low-latency mode: emits the first clause on a soft punctuation boundary (`,`, em-dash, en-dash) once the buffer reaches ~40 chars. Saves 200–500 ms TTFA on the first sentence at the cost of slightly clipped prosody. **Hard-disabled when `language` starts with `"it"`** (Italian decimal commas would split mid-number). Pipeline mode only. | | `disable_phone_preamble` | `bool` | `False` | When `False` (default), Patter prepends a phone-friendly preamble to `system_prompt` that instructs the LLM to avoid markdown, emojis, bullet lists, and code blocks; spell out numbers and dates; and keep replies short. Set to `True` to ship `system_prompt` verbatim. | +| `prewarm_first_message` | `bool` | `True` since 0.6.2 | Pre-render `first_message` to TTS audio bytes during the ringing window and stream the cached buffer the instant the call connects, eliminating the 200–700 ms TTS first-byte latency on the greeting. Pipeline mode only — the flag is silently ignored (with a `WARN` log) on Realtime / ConvAI engines. Trade-off: pays for the greeting's TTS even when the call rings out unanswered (~$0.001–$0.005 per ring). Set `False` to restore the pre-0.6.2 behaviour. | ## Agent Dataclass @@ -153,6 +154,22 @@ agent = phone.agent( ) ``` +### Pre-warming the first message + +Since 0.6.2, pipeline-mode agents pre-render the `first_message` audio during the ringing window and stream the cached buffer the instant the call connects — eliminating the 200–700 ms TTS first-byte latency on the greeting. + +This is enabled by default (`prewarm_first_message=True`). The trade-off is paying for the greeting's TTS even when the call rings out unanswered (typically $0.001–$0.005 per ring depending on TTS provider). Opt out for very high-volume outbound where un-answered TTS spend matters: + +```python +agent = phone.agent( + system_prompt="...", + first_message="Hello!", + prewarm_first_message=False, # disable pre-rendering +) +``` + +Realtime / ConvAI engines don't consume the pre-rendered cache (their first message goes through the engine's own audio path); the flag is silently ignored with a `WARN` log when set on a non-pipeline agent. + ## Voice Selection Voice is usually inferred from the engine or TTS instance — e.g. `OpenAIRealtime(voice="nova")` or `ElevenLabsTTS(voice_id="rachel")`. Available voices depend on the provider. diff --git a/docs/typescript-sdk/agents.mdx b/docs/typescript-sdk/agents.mdx index bf13f68c..428b0af0 100644 --- a/docs/typescript-sdk/agents.mdx +++ b/docs/typescript-sdk/agents.mdx @@ -78,6 +78,7 @@ Available LLM providers: `OpenAILLM`, `AnthropicLLM`, `GroqLLM`, `CerebrasLLM`, | `bargeInThresholdMs` | `number` | No | `300` | Barge-in hang-over window (ms). Set to `0` to disable. | | `aggressiveFirstFlush` | `boolean` | No | `false` | Opt-in low-latency mode: emits the first clause on soft punctuation (`,`, em-dash) once the buffer reaches ≥40 chars. Saves 200–500 ms TTFA. Hard-disabled when `language="it"` (Italian punctuation patterns are incompatible). | | `disablePhonePreamble` | `boolean` | No | `false` | When `false` (default), Patter prepends a phone-friendly preamble to `systemPrompt` that instructs the LLM to avoid markdown, emojis, bullet lists, and code blocks; spell out numbers and dates; and keep replies short. Set to `true` to ship `systemPrompt` verbatim. | +| `prewarmFirstMessage` | `boolean` | No | `true` since 0.6.2 (pipeline mode only) | Pre-render `firstMessage` to TTS audio bytes during the ringing window and stream the cached buffer the instant the call connects, eliminating the 200–700 ms TTS first-byte latency on the greeting. Realtime / ConvAI engines silently ignore the flag (with a `WARN` log) — only pipeline mode consumes the cache. Trade-off: pays for the greeting's TTS even when the call rings out unanswered (~$0.001–$0.005 per ring). Set `false` to restore the pre-0.6.2 behaviour. | | `provider` | `'openai_realtime' \| 'elevenlabs_convai' \| 'pipeline'` | No | derived | Provider mode. Normally derived from `engine` / `stt` + `tts`. Pass `'pipeline'` explicitly when building a pipeline-mode agent without an engine instance. | ## Validation Rules diff --git a/libraries/python/getpatter/services/metrics.py b/libraries/python/getpatter/services/metrics.py index 1c0a794e..230b91a8 100644 --- a/libraries/python/getpatter/services/metrics.py +++ b/libraries/python/getpatter/services/metrics.py @@ -750,6 +750,13 @@ def _reset_turn_state(self) -> None: self._tts_first_byte = None self._tts_last_byte = None self._endpoint_signal_at = None + # Parity with TS ``metrics.ts:_resetTurnState`` — without clearing + # ``_turn_committed_mono`` here, the ``anchor_user_speech_start`` + # guard (``if self._turn_committed_mono is not None: return``) + # falsely no-ops on a VAD ``speech_start`` arriving between + # ``record_turn_complete`` and the next ``start_turn`` on + # back-to-back turns. + self._turn_committed_mono = None self._bargein_detected_at = None self._bargein_stopped_at = None self._turn_user_text = "" From 9930bd6479dec568ef8d9eecc5c2fba620f42487 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 18 May 2026 18:22:08 +0200 Subject: [PATCH 06/11] fix: address HIGH parity + bidirectional race guard from quality gate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two follow-ups on the parallel quality-gate review the user requested should NOT be skipped: 1. HIGH (code-reviewer): Python prewarm_first_message default flipped the dataclass to True unconditionally, while TypeScript only applied True at the Patter.agent() factory when provider==='pipeline'. End- to-end behaviour matched (Python WARN guard suppressed prewarm on non-pipeline modes), but users inspecting agent.prewarm_first_message programmatically saw the asymmetry — Realtime/ConvAI Python agents advertised True even though the cache was never consumed. Fix: - libraries/python/getpatter/models.py — dataclass default restored to False (back-compat for direct Agent(...) construction). - libraries/python/getpatter/client.py — Patter.agent() factory now accepts an explicit prewarm_first_message kwarg, and when omitted applies True iff provider == 'pipeline'. Exact mirror of the TypeScript factory in client.ts. - libraries/python/tests/test_prewarm.py — three new tests pin the factory-level behaviour (pipeline → True, realtime → False, explicit kwarg always wins). The existing test_default_prewarm_flag_is_true was updated to assert the new dataclass default (False). 2. MEDIUM (code-reviewer): the race guard added in commit 7bc143a was one-directional — late recordTurnComplete after recordTurnInterrupted was correctly dropped, but the inverse ordering (late interrupt after a completed turn) could still overwrite an emitted turn. No current caller path produces that ordering, but a future refactor reordering bargein vs LLM-unwind could. Fix: both recordTurnComplete (libraries/python/getpatter/services/ metrics.py + libraries/typescript/src/metrics.ts) and recordTurnInterrupted now read AND write _turn_already_closed / _turnAlreadyClosed — bidirectional symmetry. Regression tests added in libraries/python/tests/test_metrics.py and libraries/typescript/ tests/metrics.test.ts. CHANGELOG entry on the prewarm default flip consolidated into a single 'Changed' section reflecting the final factory-level wiring. Tests: Python 62/62 (test_metrics.py + test_prewarm.py), TypeScript 37/37 (metrics.test.ts + prewarm.test.ts), lint clean. --- CHANGELOG.md | 64 ++++++++++------- libraries/python/getpatter/client.py | 13 ++++ libraries/python/getpatter/models.py | 28 +++++--- .../python/getpatter/services/metrics.py | 16 ++++- libraries/python/tests/test_metrics.py | 29 ++++++++ libraries/python/tests/test_prewarm.py | 69 +++++++++++++++++-- libraries/typescript/src/metrics.ts | 18 ++++- libraries/typescript/tests/metrics.test.ts | 32 +++++++++ 8 files changed, 228 insertions(+), 41 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 028b2c31..ab0a9130 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,47 @@ ### Fixed +- **Bidirectional race guard on `recordTurnComplete` / `recordTurnInterrupted`.** + The original guard (added earlier in this release) was one-directional: + a late `recordTurnComplete` after `recordTurnInterrupted` was dropped, + but the inverse ordering (a late interrupt after a completed turn) + could still overwrite a just-emitted turn record. The current caller + paths can't produce that ordering, but the symmetric guard hardens + the accumulator against future refactors. Both `recordTurnComplete` + and `recordTurnInterrupted` now set `_turnAlreadyClosed`/` + _turn_already_closed` and check it on entry. Same fix in + `libraries/python/getpatter/services/metrics.py` and + `libraries/typescript/src/metrics.ts`; regression tests added in both + suites. + +### Changed + +- **Pipeline `prewarmFirstMessage` / `prewarm_first_message` now defaults + to `true` in pipeline mode** via the `phone.agent()` / `Patter.agent()` + factory in both SDKs. Every pipeline acceptance run had a 1.5-2.5 s + `p95` on the first turn because the TTS first-byte latency (200-700 ms + cold) was serialised with the carrier's `media-start` event. + Pre-rendering the greeting during the ringing window and streaming + the cached buffer at pickup collapses that to a single buffer copy — + first-turn `p95` drops back into the same band as subsequent turns. + + Trade-off: paying the TTS bill on calls that ring and never answer + (~$0.001-$0.005 each depending on TTS provider). Opt out by passing + `prewarmFirstMessage: false` (TS) / `prewarm_first_message=False` + (Py) to `phone.agent({...})` — useful for very high-volume outbound + where un-answered TTS spend matters. + + Default applied at the factory level for parity between SDKs: + `libraries/python/getpatter/client.py:Patter.agent()` and + `libraries/typescript/src/client.ts:Patter.agent()`. The Python + `Agent` dataclass field default stays `False` to preserve + backwards-compatible behaviour for direct `Agent(...)` construction + (advanced usage outside the recommended factory path). Realtime / + ConvAI provider modes are unaffected in either SDK — those handlers + never consume the prewarm cache. + +### Fixed + - **First-message prewarm playback was slow + gravelly + intermittent on Twilio.** `sendPacedFirstMessageBytes` (TS) / `_send_paced_first_message_bytes` (Py) paced each prewarm chunk with a @@ -27,29 +68,6 @@ but downstream pacing was broken). Files: `libraries/typescript/src/ stream-handler.ts`, `libraries/python/getpatter/stream_handler.py`. -### Changed - -- **Pipeline `prewarmFirstMessage` / `prewarm_first_message` now defaults - to `true`.** Every pipeline acceptance run had a 1.5-2.5 s `p95` on the - first turn because the TTS first-byte latency (200-700 ms cold) was - serialised with the carrier's `media-start` event. Pre-rendering the - greeting during the ringing window and streaming the cached buffer at - pickup collapses that to a single `Buffer.copy` / `bytes` write — - first-turn `p95` on the regenerated matrix scripts drops back into the - same band as subsequent turns. - - The trade-off is paying the TTS bill on calls that ring and never - answer (~$0.001-$0.005 each depending on TTS provider). Restore the - prior behaviour by passing `prewarmFirstMessage: false` (TS) / - `prewarm_first_message=False` (Py) on `phone.agent({...})` — useful - for very high-volume outbound where un-answered TTS spend matters. - - Default applied at: `libraries/python/getpatter/models.py:Agent` - (dataclass field default) and - `libraries/typescript/src/client.ts:Patter.agent()` (factory default - for `provider === 'pipeline'`). Realtime / ConvAI provider modes are - not affected — those handlers never consume the prewarm cache. - ### Fixed - **Pipeline metrics: `transcript.jsonl` rows after a barge-in carried an diff --git a/libraries/python/getpatter/client.py b/libraries/python/getpatter/client.py index 32b942f1..fff1d8e0 100644 --- a/libraries/python/getpatter/client.py +++ b/libraries/python/getpatter/client.py @@ -1122,6 +1122,7 @@ def agent( engine: Any = None, llm: LLMProvider | None = None, mcp_servers: list | None = None, + prewarm_first_message: bool | None = None, ) -> Agent: """Create an ``Agent`` configuration. @@ -1262,6 +1263,17 @@ def agent( self._guardrail_to_dict(g, index=i) for i, g in enumerate(guardrails) ] + # Default ``prewarm_first_message`` to True in pipeline mode (since + # 0.6.2). Greeting TTS pre-rendering during the ringing window + # collapses the 200-700 ms first-byte latency that dominated the + # first-turn p95 on every pipeline call. Realtime / ConvAI modes + # never consume the prewarm cache (the engine drives the first- + # message audio path itself), so the default stays False there to + # avoid silent TTS spend on un-answered rings. Parity with TS + # ``Patter.agent()`` factory (see ``client.ts``). + if prewarm_first_message is None: + prewarm_first_message = provider == "pipeline" + return Agent( system_prompt=system_prompt, voice=voice, @@ -1285,6 +1297,7 @@ def agent( echo_cancellation=echo_cancellation, llm=llm, mcp_servers=mcp_servers, + prewarm_first_message=prewarm_first_message, openai_realtime_reasoning_effort=openai_realtime_reasoning_effort, openai_realtime_input_audio_transcription_model=openai_realtime_input_audio_transcription_model, ) diff --git a/libraries/python/getpatter/models.py b/libraries/python/getpatter/models.py index 9a546a73..8fead1d0 100644 --- a/libraries/python/getpatter/models.py +++ b/libraries/python/getpatter/models.py @@ -214,23 +214,29 @@ class Agent: # call. See ``docs/python-sdk/latency.mdx`` for the cold-start latency # rationale. prewarm: bool = True - # When ``True`` (default since 0.6.2), ``Patter.call`` pre-renders - # ``first_message`` to TTS audio bytes during the ringing window and - # streams the cached buffer immediately when the carrier emits ``start``. - # Eliminates the 200-700 ms TTS first-byte latency on the greeting that - # dominated the first-turn ``p95`` on every pipeline acceptance run. - # The trade-off is paying the TTS bill even if the call is never - # answered (silently logged at WARN level when the call fails) — - # typically $0.001-$0.005 per ringing call depending on TTS provider. - # Opt out by passing ``prewarm_first_message=False`` (e.g. for very - # high-volume outbound where un-answered TTS spend matters). + # When ``True``, ``Patter.call`` pre-renders ``first_message`` to TTS + # audio bytes during the ringing window and streams the cached buffer + # immediately when the carrier emits ``start``. Eliminates the + # 200-700 ms TTS first-byte latency on the greeting that dominates + # the first-turn ``p95`` on pipeline calls. + # + # Dataclass default stays ``False`` to preserve backwards-compatible + # behaviour for callers who construct ``Agent(...)`` directly without + # going through :meth:`Patter.agent`. The recommended factory + # :meth:`Patter.agent` flips the default to ``True`` automatically + # when ``provider == "pipeline"`` (since 0.6.2) — parity with the + # TypeScript ``phone.agent({...})`` factory. Opt out from the factory + # by passing ``prewarm_first_message=False`` (e.g. for very + # high-volume outbound where un-answered TTS spend matters); cost + # trade-off is typically $0.001-$0.005 per ringing call depending on + # TTS provider. # # **Pipeline mode only.** Realtime / ConvAI provider modes never # consume the prewarm cache (the StreamHandler for those modes runs # its first-message emit through the provider's own audio path), so # ``Patter.call`` refuses to spawn the prewarm task and emits a WARN # when ``provider != "pipeline"``. - prewarm_first_message: bool = True + prewarm_first_message: bool = False @dataclass(frozen=True) diff --git a/libraries/python/getpatter/services/metrics.py b/libraries/python/getpatter/services/metrics.py index 230b91a8..4316f0e8 100644 --- a/libraries/python/getpatter/services/metrics.py +++ b/libraries/python/getpatter/services/metrics.py @@ -443,16 +443,30 @@ def record_turn_complete(self, agent_text: str) -> TurnMetrics | None: {"call_id": self.call_id, "turn": turn}, ) self._reset_turn_state() + # Bidirectional guard: mark the turn as closed so a late + # record_turn_interrupted (e.g. from a future refactor that + # reorders the bargein + LLM-unwind paths) becomes a no-op + # instead of overwriting the just-emitted turn record. Mirrors + # the inverse guard in ``record_turn_interrupted`` and keeps + # the two close paths symmetric. + self._turn_already_closed = True return turn def record_turn_interrupted(self) -> TurnMetrics | None: """Handle a barge-in / interrupted turn. Returns partial ``TurnMetrics`` if a turn was in progress, else - ``None``. + ``None``. Also returns ``None`` when ``record_turn_complete`` has + already finalised the current turn — bidirectional parity with + the guard in :meth:`record_turn_complete`. Prevents an out-of- + order interruption (e.g. a future refactor that reorders the + bargein + LLM-unwind paths) from overwriting a turn that the + complete path already emitted. """ if self._turn_start is None: return None + if self._turn_already_closed: + return None latency = self._compute_turn_latency() turn = TurnMetrics( diff --git a/libraries/python/tests/test_metrics.py b/libraries/python/tests/test_metrics.py index a2f33a7d..1ebe33db 100644 --- a/libraries/python/tests/test_metrics.py +++ b/libraries/python/tests/test_metrics.py @@ -120,6 +120,35 @@ def test_record_turn_complete_is_noop_after_interrupted(self): assert result.turns[0].agent_text == "[interrupted]" assert result.turns[0].user_text == "Hello" + def test_record_turn_interrupted_is_noop_after_complete(self): + """Bidirectional parity: a late ``record_turn_interrupted`` after + ``record_turn_complete`` on the same turn must also be a no-op. + + The current caller ordering can't trigger this (the VAD bargein + path fires the interrupt FIRST and the LLM-unwind path then + calls complete second, guarded by the existing one-directional + guard). The symmetric guard hardens the accumulator against a + future refactor that reorders those paths. + """ + acc = self._make_accumulator() + + acc.start_turn() + acc.record_stt_complete("Hello", audio_seconds=1.0) + completed = acc.record_turn_complete("Hi there") + assert completed is not None + assert completed.user_text == "Hello" + assert completed.agent_text == "Hi there" + + # Late VAD-bargein interruption arrives after the complete — + # must be silently dropped. + late = acc.record_turn_interrupted() + assert late is None + + # Only the completed turn is recorded. + result = acc.end_call() + assert len(result.turns) == 1 + assert result.turns[0].agent_text == "Hi there" + def test_record_turn_complete_rearms_after_start_turn(self): """A fresh ``start_turn`` must re-arm the accumulator so the next ``record_turn_complete`` is allowed again.""" diff --git a/libraries/python/tests/test_prewarm.py b/libraries/python/tests/test_prewarm.py index 0f9bbf98..4d016bf5 100644 --- a/libraries/python/tests/test_prewarm.py +++ b/libraries/python/tests/test_prewarm.py @@ -122,13 +122,16 @@ async def _wait_for_tasks(phone: Patter, timeout: float = 1.0) -> None: async def test_default_prewarm_flag_is_true() -> None: - """``Agent.prewarm`` and ``Agent.prewarm_first_message`` both default to - True since 0.6.2 — first-turn p95 on pipeline mode was dominated by - the 200-700 ms TTS first-byte latency on the greeting, eliminated by - pre-rendering during the ringing window.""" + """``Agent.prewarm`` defaults to True; ``prewarm_first_message`` + defaults to False at the dataclass level to preserve backwards- + compatible behaviour for direct ``Agent(...)`` construction. The + recommended :meth:`Patter.agent` factory flips it to True for + pipeline mode — see ``test_factory_defaults_prewarm_first_message_*`` + below. + """ agent = Agent(system_prompt="hi", first_message="hello") assert agent.prewarm is True - assert agent.prewarm_first_message is True + assert agent.prewarm_first_message is False async def test_prewarm_first_message_opt_out() -> None: @@ -143,6 +146,62 @@ async def test_prewarm_first_message_opt_out() -> None: assert agent.prewarm_first_message is False +async def test_factory_defaults_prewarm_first_message_true_in_pipeline_mode() -> None: + """``Patter.agent(...)`` factory auto-enables prewarm in pipeline + mode (since 0.6.2). Parity with the TypeScript factory in + ``client.ts``.""" + phone = _make_patter() + stt = StubSTT() + tts = StubTTS() + llm = StubLLM() + agent = phone.agent(system_prompt="hi", stt=stt, tts=tts, llm=llm) + assert agent.provider == "pipeline" + assert agent.prewarm_first_message is True + + +async def test_factory_does_not_default_prewarm_in_realtime_mode() -> None: + """``Patter.agent(...)`` factory leaves prewarm OFF on realtime / + ConvAI provider modes — those handlers never consume the cache, so + enabling it would only burn TTS spend on un-answered rings.""" + from getpatter.engines.openai import Realtime as OpenAIRealtime + + phone = _make_patter() + agent = phone.agent( + system_prompt="hi", + engine=OpenAIRealtime(api_key="sk-test"), + ) + assert agent.provider == "openai_realtime" + assert agent.prewarm_first_message is False + + +async def test_factory_respects_explicit_prewarm_first_message_value() -> None: + """Explicit kwarg always wins over the factory's mode-derived default.""" + from getpatter.engines.openai import Realtime as OpenAIRealtime + + phone = _make_patter() + stt = StubSTT() + tts = StubTTS() + llm = StubLLM() + # Pipeline mode, but caller explicitly opts out. + pipeline_opted_out = phone.agent( + system_prompt="hi", + stt=stt, + tts=tts, + llm=llm, + prewarm_first_message=False, + ) + assert pipeline_opted_out.prewarm_first_message is False + # Realtime mode, but caller explicitly opts in (the WARN guard in + # ``_spawn_prewarm_first_message`` will still suppress the synth, + # but the flag stays at the user's chosen value). + realtime_opted_in = phone.agent( + system_prompt="hi", + engine=OpenAIRealtime(api_key="sk-test"), + prewarm_first_message=True, + ) + assert realtime_opted_in.prewarm_first_message is True + + async def test_provider_warmup_default_is_noop() -> None: """The bare ``STTProvider`` / ``TTSProvider`` subclasses inherit a no-op ``warmup`` so providers that don't override it never raise.""" diff --git a/libraries/typescript/src/metrics.ts b/libraries/typescript/src/metrics.ts index c1d205a5..0abac23f 100644 --- a/libraries/typescript/src/metrics.ts +++ b/libraries/typescript/src/metrics.ts @@ -609,14 +609,30 @@ export class CallMetricsAccumulator { }; this._turns.push(turn); this._resetTurnState(); + // Bidirectional guard: mark the turn as closed so a late + // recordTurnInterrupted (e.g. from a future refactor that reorders + // the bargein + LLM-unwind paths) becomes a no-op instead of + // overwriting the just-emitted turn record. Mirrors the inverse + // guard in recordTurnInterrupted and keeps the two close paths + // symmetric. + this._turnAlreadyClosed = true; this._eventBus?.emit('turn_ended', { callId: this.callId, turn }); this._eventBus?.emit('metrics_collected', { callId: this.callId, turn }); return turn; } - /** Close the current turn as interrupted (barge-in) and return the recorded metrics. */ + /** + * Close the current turn as interrupted (barge-in) and return the + * recorded metrics. Returns ``null`` when no turn is open, OR when + * ``recordTurnComplete`` has already finalised the current turn — + * bidirectional parity with the guard at the top of + * ``recordTurnComplete``. Prevents an out-of-order interruption (e.g. + * a future refactor that reorders the bargein + LLM-unwind paths) + * from overwriting a turn that the complete path already emitted. + */ recordTurnInterrupted(): TurnMetrics | null { if (this._turnStart === null) return null; + if (this._turnAlreadyClosed) return null; const latency = this._computeTurnLatency(); const turn: TurnMetrics = { turn_index: this._turns.length, diff --git a/libraries/typescript/tests/metrics.test.ts b/libraries/typescript/tests/metrics.test.ts index 82d2ebdd..b6c47f83 100644 --- a/libraries/typescript/tests/metrics.test.ts +++ b/libraries/typescript/tests/metrics.test.ts @@ -91,6 +91,38 @@ describe('CallMetricsAccumulator', () => { expect(result.turns[0].user_text).toBe('Hello'); }); + it('recordTurnInterrupted is a no-op after recordTurnComplete on the same turn', () => { + // Bidirectional parity: a late recordTurnInterrupted after + // recordTurnComplete on the same turn must also be a no-op. The + // current caller ordering can't trigger this (the VAD bargein path + // fires the interrupt FIRST and the LLM-unwind path then calls + // complete second, guarded by the existing one-directional guard). + // The symmetric guard hardens the accumulator against a future + // refactor that reorders those paths. + const acc = new CallMetricsAccumulator({ + callId: 'race-bi', + providerMode: 'pipeline', + telephonyProvider: 'twilio', + }); + + acc.startTurn(); + acc.recordSttComplete('Hello'); + const completed = acc.recordTurnComplete('Hi there'); + expect(completed).not.toBeNull(); + expect(completed!.user_text).toBe('Hello'); + expect(completed!.agent_text).toBe('Hi there'); + + // Late VAD-bargein interruption arrives after the complete — + // must be silently dropped. + const late = acc.recordTurnInterrupted(); + expect(late).toBeNull(); + + // Only the completed turn is recorded. + const result = acc.endCall(); + expect(result.turns).toHaveLength(1); + expect(result.turns[0].agent_text).toBe('Hi there'); + }); + it('startTurn re-arms the accumulator after an interrupted turn', () => { const acc = new CallMetricsAccumulator({ callId: 'race2', From 0fc461544127a0759721859dc32eb9844276ba24 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Fri, 22 May 2026 14:45:25 +0200 Subject: [PATCH 07/11] fix(0.6.2): 14-bug fix wave + GA Realtime adapter + dashboard hardening MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bundled fix wave landed after live PSTN validation across outbound and inbound flows on the OpenAI Realtime GA path (gpt-realtime-2). Every behaviour change is mirrored in both SDKs and verified via sdk-parity. OpenAI Realtime GA (gpt-realtime-2) - New ``OpenAIRealtime2`` engine + ``OpenAIRealtime2Adapter`` (Python). Speaks the GA ``session.update`` shape (``session.type = "realtime"``, ``output_modalities``, nested ``audio.{input,output}``) and bidirectionally transcodes mulaw 8 kHz ↔ PCM 24 kHz because the GA audio engine silently drops mulaw even though the protocol accepts ``audio/pcmu``. - ``turn_detection.threshold`` raised 0.1 → 0.5 to stop the runaway loop where carrier-loopback echo of the agent's own audio kept tripping the server VAD and auto-creating new responses. - ``turn_detection.create_response: false`` + ``interrupt_response: false``. Patter now drives ``response.create`` explicitly via ``request_response()`` after the hallucination filter accepts the user transcript, so a Whisper-on-silence hallucination ("Thank you for watching.", "[music]") no longer materialises as a phantom assistant turn. - ``_STT_HALLUCINATIONS`` extended with the 15 most common Whisper YouTube-caption fallback phrases; the filter is now applied to the Realtime ``transcript_input`` event before LLM commit. Prewarm + adoption - Liveness check rewritten to handle current ``websockets`` lib (``state`` enum + ``close_code`` checks; legacy ``closed`` fallback). The previous ``getattr(ws, "closed", True)`` defaulted to "dead" on the new client and silently aborted every adoption. - Application-level keepalive on the parked GA Realtime WS (``session.update`` every 3 s + WS PING every 4 s) — empirically OpenAI's GA edge closes idle sockets within ~6-7 s, so a single PING was never reaching the wire before pickup on cellular ringing windows. - ``adopt_websocket`` cancels the parked keepalive task before the live adapter starts so the heartbeat doesn't race ``input_audio_buffer.append``. Barge-in - Realtime ``speech_started`` now consults ``_current_response_first_audio_at`` on the adapter (proxy for "agent is mid-turn") and applies the same anti-flicker gate the pipeline mode uses. Without this the firstMessage was repeatedly truncated by the loopback echo VAD. - ``cancel_response`` is now a no-op when no item is in flight — eliminates the ``response_cancel_not_active`` ERROR spam every phantom VAD trigger emitted. Dashboard + persistence - Persistence default flipped from opt-in to ON. ``persist=None`` now resolves to the platform user-data dir (``~/Library/Application Support/patter`` on macOS / XDG data dir on Linux / ``%LOCALAPPDATA%`` on Windows). Set ``persist=False`` to opt out. - ``log_call_start`` / ``logCallStart`` now persists ``direction`` in ``metadata.json``. Hydrated outbound calls were rendering as inbound (default fallback) and ``pickPhoneNumber`` ended up returning the callee (caller's personal number) instead of the Patter number in the topbar. - ``PATTER_LOG_REDACT_PHONE`` default flipped ``mask`` → ``full``. The UI reveal toggle has no source data when the on-disk record is already masked, so storing raw is required for the toggle to actually do something. ``~/Library/Application Support/patter`` is user-private. - ``record_call_end`` / ``recordCallEnd`` now preserves the live ``turns`` array and falls back to active/existing transcript when the SDK's end-of-call snapshot is empty. Mirrors TS fix that was never ported. - Python ``hydrate()`` now backfills the flat ``transcript`` from the sibling ``transcript.jsonl`` when ``metadata.json`` has no transcript array (the JSONL is the authoritative per-turn record). Parity with TS ``loadTranscriptJsonl``. - New ``aggregates.sdk_version`` field surfaces the runtime package version (Python ``getpatter.__version__`` / TS ``package.json`` read at runtime via the dist-relative path). Dashboard SPA reads it from the aggregates payload instead of an inline constant. - Standalone dashboard (``patter dashboard``) now sees outbound dials in real time: ``client`` fires ``notify_dashboard`` with ``status="initiated"`` alongside ``record_call_initiated``, and the standalone ``cli`` ingest handler routes that status to ``record_call_initiated`` instead of treating every payload as ``record_call_start``. Inbound carrier metadata - Twilio Media Streams strips the query string from ```` before opening the WS, so the inbound bridge has been reading empty caller / callee since forever. ``generate_stream_twiml`` now accepts optional ``parameters`` and emits ```` children of ````; ``twilio_stream_bridge`` falls back to ``start.customParameters`` when WS query params are empty. Test scripts - Acceptance scripts under ``releases/0.6.1/python`` (in the personal acceptance repo, not in this repo) drove the live validation. ``inbound.py`` and ``outbound_amd_ringtimeout.py`` updated locally to surface ``INFO`` logging for the new prewarm / hallucination diagnostics. --- CHANGELOG.md | 254 ++++-- README.md | 4 +- dashboard-app/src/App.tsx | 16 +- dashboard-app/src/lib/api.ts | 8 + docs/dev-tools/tunneling.mdx | 10 +- docs/python-sdk/agents.mdx | 16 +- docs/python-sdk/carrier.mdx | 10 + docs/python-sdk/engines.mdx | 1 + docs/python-sdk/local-mode.mdx | 39 +- docs/python-sdk/providers/elevenlabs-tts.mdx | 12 + docs/python-sdk/providers/silero-vad.mdx | 16 +- docs/python-sdk/quickstart.mdx | 30 + docs/typescript-sdk/agents.mdx | 6 +- .../providers/elevenlabs-tts.mdx | 12 + docs/typescript-sdk/providers/silero-vad.mdx | 16 +- libraries/python/getpatter/__init__.py | 4 + libraries/python/getpatter/cli.py | 17 +- libraries/python/getpatter/client.py | 311 +++++-- libraries/python/getpatter/dashboard/store.py | 123 ++- libraries/python/getpatter/dashboard/ui.html | 16 +- .../python/getpatter/engines/__init__.py | 2 +- libraries/python/getpatter/engines/openai.py | 2 +- .../getpatter/engines/openai_realtime_2.py | 64 ++ .../getpatter/providers/elevenlabs_tts.py | 49 +- .../getpatter/providers/elevenlabs_ws_tts.py | 56 ++ .../getpatter/providers/openai_realtime.py | 82 +- .../getpatter/providers/openai_realtime_2.py | 775 ++++++++++++++++++ .../python/getpatter/providers/silero_vad.py | 14 + .../getpatter/providers/twilio_adapter.py | 48 +- libraries/python/getpatter/server.py | 5 + .../python/getpatter/services/call_log.py | 14 +- libraries/python/getpatter/stream_handler.py | 360 +++++++- .../python/getpatter/telephony/telnyx.py | 6 +- .../python/getpatter/telephony/twilio.py | 25 +- libraries/python/getpatter/tts/elevenlabs.py | 14 +- libraries/python/tests/test_new_features.py | 124 ++- libraries/python/tests/test_prewarm.py | 10 +- .../python/tests/unit/test_client_unit.py | 131 +++ .../tests/unit/test_stream_handler_unit.py | 25 +- .../test_twilio_adapter_snake_case_kwargs.py | 321 ++++++++ .../test_twilio_status_and_ring_timeout.py | 56 +- libraries/typescript/src/cli.ts | 14 +- libraries/typescript/src/client.ts | 171 +++- libraries/typescript/src/dashboard/store.ts | 8 + libraries/typescript/src/dashboard/ui.html | 16 +- .../src/providers/elevenlabs-tts.ts | 48 +- .../src/providers/elevenlabs-ws-tts.ts | 53 ++ .../src/providers/openai-realtime-2.ts | 208 ++++- .../src/providers/openai-realtime.ts | 56 +- .../typescript/src/providers/silero-vad.ts | 13 + .../src/providers/twilio-adapter.ts | 40 +- libraries/typescript/src/server.ts | 5 + libraries/typescript/src/services/call-log.ts | 13 +- libraries/typescript/src/stream-handler.ts | 414 +++++++--- libraries/typescript/src/tts/elevenlabs-ws.ts | 8 +- libraries/typescript/src/tts/elevenlabs.ts | 14 +- libraries/typescript/src/version.ts | 26 +- 57 files changed, 3630 insertions(+), 581 deletions(-) create mode 100644 libraries/python/getpatter/engines/openai_realtime_2.py create mode 100644 libraries/python/getpatter/providers/openai_realtime_2.py create mode 100644 libraries/python/tests/unit/test_twilio_adapter_snake_case_kwargs.py diff --git a/CHANGELOG.md b/CHANGELOG.md index ab0a9130..f27e633b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,208 @@ ## Unreleased +### Added + +- **`OpenAIRealtime2` / `OpenAIRealtime2Adapter` — Python GA Realtime API + adapter (parity with TypeScript `OpenAIRealtime2` / `OpenAIRealtime2Adapter` + in `libraries/typescript/src/engines/openai-2.ts` / + `libraries/typescript/src/providers/openai-realtime-2.ts`).** The GA + endpoint rejects the legacy `OpenAI-Beta: realtime=v1` header and speaks a + different `session.update` wire shape (`output_modalities`, nested + `audio.{input,output}` with MIME type strings, `session.type = "realtime"`). + `OpenAIRealtime2Adapter` (in + `libraries/python/getpatter/providers/openai_realtime_2.py`) subclasses + `OpenAIRealtimeAdapter` and overrides `connect()`, `send_audio()`, + `receive_events()`, and `send_first_message()` to speak the GA wire shape + and perform bidirectional transcoding (mulaw 8 kHz ↔ PCM 24 kHz) required + because the GA audio engine silently drops mulaw frames. `OpenAIRealtime2` + engine marker (in `libraries/python/getpatter/engines/openai_realtime_2.py`) + defaults to `gpt-realtime-2`. Both are exported from the top-level package: + `from getpatter import OpenAIRealtime2, OpenAIRealtime2Adapter`. Wire up via + `phone.agent(engine=OpenAIRealtime2(reasoning_effort="low"), ...)`. + +### Changed + +- **`OpenAIRealtime` default model changed from `gpt-4o-mini-realtime-preview` + to `gpt-realtime-mini`** in + `libraries/python/getpatter/engines/openai.py` and the `agent()` sentinel + in `libraries/python/getpatter/client.py`. The beta + `gpt-4o-mini-realtime-preview` model is deprecated on the GA endpoint as of + 2026-05. `gpt-realtime-mini` is the equivalent GA model. Existing callers + that do not pin a model are automatically upgraded; callers that explicitly + pass `model="gpt-4o-mini-realtime-preview"` should migrate to + `model="gpt-realtime-mini"` or switch to `OpenAIRealtime2`. + +- **`phone.ready` and `phone.tunnel_ready` — serve-ready awaitables for + outbound call orchestration (Python parity with TypeScript).** Both + SDKs have always exposed these futures on the `Patter` class, but the + Python docs showed the `asyncio.sleep(2)` anti-pattern instead of the + correct `await phone.ready` pattern. Updated `docs/python-sdk/local-mode.mdx` + to replace the `asyncio.sleep` example with `await phone.ready`, document + the reject-on-failure guarantee, and add a note on `await phone.tunnel_ready` + for hostname-only use cases. Added 15 unit tests covering lazy creation, + idempotent access, resolution, rejection, idempotent resolve/reject guards, + static-webhook pre-resolution, and post-`disconnect()` future recreation — + mirroring the TS `client.test.ts` ready/tunnelReady coverage. + ### Fixed +- **TypeScript `TwilioAdapter.generateStreamTwiml` now accepts an optional + `parameters` argument (parity with Python `generate_stream_twiml`).** The + static method previously ignored caller/callee context — passing + `parameters: Record` now emits + `` children of ``, which is the + only reliable path for pre-populating `start.customParameters` on the WS + `start` frame (Twilio strips query-string params from the `` + before the WebSocket handshake). The inbound webhook path in `server.ts` + already inlined this TwiML directly; `generateStreamTwiml` is now brought + into full API-surface parity so callers who construct TwiML via the adapter + get the same behaviour. File: `libraries/typescript/src/providers/twilio-adapter.ts`. + +- **Python outbound Twilio calls crashed with `TypeError: unexpected + keyword argument 'StatusCallback'` (and similar for `Timeout`, + `MachineDetection`, `AsyncAmd`).** `libraries/python/getpatter/client.py` + was building the `extra_params` dict with PascalCase keys matching + Twilio's REST wire protocol, but `twilio-python`'s + `Client.calls.create(**kwargs)` only accepts snake_case — it + translates internally to PascalCase before hitting the wire. Every + outbound call using machine detection, `ring_timeout`, or status + callbacks crashed at the SDK boundary (reported externally on + zenn.dev for SDK 0.5.4). Fixed at source: all keys in `extra_params` + are now snake_case (`status_callback`, `machine_detection`, + `timeout`, `async_amd`, `async_amd_status_callback`, + `status_callback_method`). Added a defensive PascalCase → + snake_case normalisation pass in + `libraries/python/getpatter/providers/twilio_adapter.py` so any + future caller passing the wire-protocol spelling is auto-corrected + before reaching the SDK. TypeScript SDK is unaffected — it sends raw + `URLSearchParams` directly to Twilio's REST endpoint where + PascalCase is the correct on-wire form. Regression locked in by + `libraries/python/tests/unit/test_twilio_adapter_snake_case_kwargs.py`. + +- **Phantom barge-in: cellular noise within 100 ms post-pickup was + triggering self-cancellation of the prewarmed greeting.** Bumped + `MIN_AGENT_SPEAKING_MS_BEFORE_BARGE_IN_NO_AEC` from 100 ms → 500 ms + in `libraries/typescript/src/stream-handler.ts` and + `libraries/python/getpatter/stream_handler.py`. The 100 ms window was + too tight — Twilio's media stream can emit background carrier noise + (clicks, handshake tones, audio codec initialization) within the first + 100 ms after pickup, which the VAD read as speech-like energy and + triggered a barge-in cancel. Extending to 500 ms allows the carrier + audio path to stabilise before the agent's greeting becomes cancelable. + +- **VAD telephony preset too sensitive: background room voices tripping + barge-in.** `SileroVAD.forPhoneCall()` factory (TS) / + `SileroVAD.for_phone_call` (Py) now raises activation threshold 0.5 → + 0.8 and deactivation threshold 0.35 → 0.65. The Silero model's + upstream defaults (0.5 / 0.35) are tuned for studio audio; when + running on 8 kHz telephony-band upsampled to 16 kHz, non-speech room + noise (HVAC, background chatter, line buzz) was accumulating energy + above the 0.5 threshold. Real-call acceptance testing showed natural + pauses in the user's speech no longer trigger false barge-ins at the + higher thresholds. Files: `libraries/typescript/src/providers/ + silero-vad.ts`, `libraries/python/getpatter/providers/silero_vad.py`. + +- **`prewarmFirstMessage` default reverted to `false`.** An earlier + 0.6.2 attempt defaulted the flag to `true` in the factory; this + proved incompatible with the above barge-in fixes. When the greeting + is prewarmed but the phantom-barge-in (or VAD sensitivity) fires + incorrectly on carrier-side noise, the agent cancels the cached + audio without having spoken a character, leaving the caller in silence + for 1–2 s while the agent recovers from the false cancel-and-restart + cycle. Reverting to `prewarmFirstMessage: false` (TS) / + `prewarm_first_message=False` (Py) at the factory level in + `libraries/typescript/src/client.ts:Patter.agent()` and + `libraries/python/getpatter/client.py:Patter.agent()`. Users who + *want* the latency reduction should opt in explicitly: `phone.agent({ + prewarmFirstMessage: true })` — recommended for inbound calls and + low-noise deployments. Realtime / ConvAI modes unaffected. + +- **ElevenLabs HTTP TTS now auto-detects carrier and sets + `outputFormat`.** Added `setTelephonyCarrier(carrierHint: string)` + method to `ElevenLabsTTS` (TS) / `ElevenLabsTTS.set_telephony_carrier` + (Py). When constructing `ElevenLabsTTS()` without an explicit + `outputFormat` on Twilio, the factory `ElevenLabsTTS.forTwilio()` + calls `setTelephonyCarrier("twilio")` to flip `outputFormat` to + `"ulaw_8000"`, eliminating the per-frame resample + mulaw encode + overhead. The plain constructor now only forwards `outputFormat` when + the caller passed one explicitly — was unconditionally forwarding a + `"pcm_16000"` fallback that disabled the carrier auto-flip logic. + This matches the existing `ElevenLabsWebSocketTTS` carrier-aware + behaviour. Files: `libraries/typescript/src/providers/elevenlabs-tts.ts`, + `libraries/python/getpatter/providers/elevenlabs_tts.py`. + +- **ElevenLabs WebSocket TTS now exposes `cancelActiveStream()` for + barge-in cleanup.** The WebSocket variant held a live `activeStreamWs` + reference but had no public way to abort it. `StreamHandler.cancelSpeaking` + / `handleStop` / `handleWsClose` now call `tts.cancelActiveStream()`, + unblocking the synthesizeStream generator's inner `await Promise` + loop immediately when the carrier ends the call or the user barges in. + Root cause of the post-hangup 30 s timeout error logs and stale token + billing. Files: `libraries/typescript/src/providers/elevenlabs-ws-tts.ts`, + `libraries/python/getpatter/providers/elevenlabs_ws_tts.py`. + +- **Wrapper class TTS `outputFormat` field now conditional.** When an + `ElevenLabsTTS` or `ElevenLabsWebSocketTTS` wrapper receives a carrier + hint (e.g. Twilio), the wrapper's `outputFormat` field is set only if + the caller passed it explicitly. Previous logic always forwarded a + fallback value, which caused the carrier auto-flip to treat + `outputFormat` as explicit and skip the optimization. Now the carrier + auto-flip logic runs correctly: if no `outputFormat` was passed, the + wrapper field remains `undefined`/`None` and the carrier-specific Twilio + path activates naturally. Files: `libraries/typescript/src/tts/elevenlabs.ts`, + `libraries/typescript/src/tts/elevenlabs-ws.ts`, + `libraries/python/getpatter/tts/elevenlabs.py`. + +- **`sendPacedFirstMessageBytes` timing rewritten: burst mode, no per-chunk + sleep.** The original implementation paced each prewarm chunk with a + `setTimeout` / `asyncio.sleep` of one chunk-equivalent of playout time + (~40 ms for the 1280-byte default chunk). Combined with the + `waitForMarkWindow` back-pressure await and JavaScript/asyncio timer + jitter, effective delivery dropped BELOW Twilio's 8 kHz playout clock, + producing repeated carrier-side underruns. Caller heard "slow, gravelly, + and arriving more slowly than the rest". Twilio's docs (Media Streams → + WebSocket Messages) state "media messages of any size" are "buffered + and played in the order received" by the carrier-side media server — the + carrier owns the playout clock. Rewrote to burst all prewarm chunks + back-to-back with 20 ms frame granularity (no per-chunk sleep), matching + the live-TTS streaming path that always worked. Per-chunk marks still + emitted for fine-grained barge-in cut. Files: `libraries/typescript/src/ + stream-handler.ts`, `libraries/python/getpatter/stream_handler.py`. + +- **Mulaw native fast path in audio encode: skip resample + encode when + TTS outputs `ulaw_8000` natively.** When pipeline mode detects + `tts.outputFormat === "ulaw_8000"` on Twilio, `encodePipelineAudio` + skips the resample (16 kHz → 8 kHz) + mulaw encode chain entirely and + base64-encodes the raw bytes. Probed once in `initPipeline` and cached + as `ttsOutputFormatNativeForCarrier`. Saves ~1–2 ms per 20 ms frame, + cumulative ~5–10 % CPU when deployed at scale. Files: + `libraries/typescript/src/stream-handler.ts`, `libraries/python/ + getpatter/stream_handler.py`. + +- **`handleStop` / `handleWsClose` now abort in-flight LLM and cancel TTS + immediately.** When the carrier ends a call or the StreamHandler is torn + down, both paths now call `llmAbort()` (to unblock any pending LLM stream) + and `tts.cancelActiveStream()` (to unblock any pending TTS stream). + Prevents stale token billing and 30 s timeout error logs from post-hangup + tasks trying to drain a closed WebSocket. Files: `libraries/typescript/src/ + stream-handler.ts`, `libraries/python/getpatter/stream_handler.py`. + +- **Python SDK parity sync for 2026-05-20 acceptance session.** All TS + fixes landed during PSTN acceptance testing are now ported to Python: + `ElevenLabsTTS.set_telephony_carrier` (HTTP variant, mirrors WS), + `ElevenLabsWebSocketTTS.cancel_active_stream` + `_active_stream_ws` + tracking, `_do_cancel_for_barge_in` / `cleanup` calling + `cancel_active_stream` (duck-typed), `_is_tts_output_format_native_for_carrier` + probe + `_tts_output_format_native_for_carrier` flag + audio-sender bypass + in `PipelineStreamHandler.start`, `_spawn_prewarm_first_message` accepting + `carrier=` and calling `set_telephony_carrier` before synthesis, and the + `tts/elevenlabs.py` wrapper only forwarding `output_format` when explicitly + passed. Files: `libraries/python/getpatter/providers/elevenlabs_tts.py`, + `libraries/python/getpatter/providers/elevenlabs_ws_tts.py`, + `libraries/python/getpatter/stream_handler.py`, + `libraries/python/getpatter/tts/elevenlabs.py`, + `libraries/python/getpatter/client.py`. + - **Bidirectional race guard on `recordTurnComplete` / `recordTurnInterrupted`.** The original guard (added earlier in this release) was one-directional: a late `recordTurnComplete` after `recordTurnInterrupted` was dropped, @@ -15,59 +216,6 @@ `libraries/typescript/src/metrics.ts`; regression tests added in both suites. -### Changed - -- **Pipeline `prewarmFirstMessage` / `prewarm_first_message` now defaults - to `true` in pipeline mode** via the `phone.agent()` / `Patter.agent()` - factory in both SDKs. Every pipeline acceptance run had a 1.5-2.5 s - `p95` on the first turn because the TTS first-byte latency (200-700 ms - cold) was serialised with the carrier's `media-start` event. - Pre-rendering the greeting during the ringing window and streaming - the cached buffer at pickup collapses that to a single buffer copy — - first-turn `p95` drops back into the same band as subsequent turns. - - Trade-off: paying the TTS bill on calls that ring and never answer - (~$0.001-$0.005 each depending on TTS provider). Opt out by passing - `prewarmFirstMessage: false` (TS) / `prewarm_first_message=False` - (Py) to `phone.agent({...})` — useful for very high-volume outbound - where un-answered TTS spend matters. - - Default applied at the factory level for parity between SDKs: - `libraries/python/getpatter/client.py:Patter.agent()` and - `libraries/typescript/src/client.ts:Patter.agent()`. The Python - `Agent` dataclass field default stays `False` to preserve - backwards-compatible behaviour for direct `Agent(...)` construction - (advanced usage outside the recommended factory path). Realtime / - ConvAI provider modes are unaffected in either SDK — those handlers - never consume the prewarm cache. - -### Fixed - -- **First-message prewarm playback was slow + gravelly + intermittent on - Twilio.** `sendPacedFirstMessageBytes` (TS) / - `_send_paced_first_message_bytes` (Py) paced each prewarm chunk with a - `setTimeout` / `asyncio.sleep` of one chunk-equivalent of playout time - (~40 ms for the 1280-byte default chunk). Combined with the - `waitForMarkWindow` back-pressure await and JavaScript/asyncio timer - jitter, effective delivery dropped BELOW Twilio's 8 kHz playout clock - on the 2-4 s prewarmed greeting buffer, producing repeated carrier- - side underruns. Caller heard the message "slow, gravelly, and - arriving more slowly than the rest". Twilio's docs (Media Streams → - WebSocket Messages) explicitly state "media messages of any size" are - "buffered and played in the order received" by the carrier-side media - server — the carrier is the source of truth for the playout clock, - not our send loop. Removed the per-chunk sleep + the burst-vs-paced - switch (`initialFillComplete`) so the prewarm path now bursts all - chunks back-to-back, matching the live-TTS streaming path that has - always worked. Per-chunk marks are still emitted, so a barge-in's - `sendClear` keeps fine-grained granularity to cut. - - Verified against `outbound-openai-transcribe-openai-openai`: - pre-fix the same acceptance scenario produced slow/gravelly first- - message playback with `p95 wait=0 ms` (prewarm cache hit was correct, - but downstream pacing was broken). Files: `libraries/typescript/src/ - stream-handler.ts`, `libraries/python/getpatter/stream_handler.py`. - ### Fixed - **Pipeline metrics: `transcript.jsonl` rows after a barge-in carried an diff --git a/README.md b/README.md index dbb51759..9cfe96cc 100644 --- a/README.md +++ b/README.md @@ -72,7 +72,9 @@ await phone.serve({ agent, tunnel: true }); -`tunnel: true` spawns a Cloudflare tunnel and points your Twilio number at it. In production, pass `webhook_url` / `webhookUrl` to the constructor instead. Every carrier and provider reads its credentials from environment variables by default; see each SDK's README for the full catalog. +`tunnel: true` spawns a Cloudflare quick tunnel and points your Twilio number at it — great for dev / acceptance. For production outbound calls (especially on Twilio), replace it with [ngrok](https://ngrok.com) or a static `webhook_url` to avoid WSS upgrade races on first call. See [Tunneling](/docs/dev-tools/tunneling) for details. + +Every carrier and provider reads its credentials from environment variables by default; see each SDK's README for the full catalog. ## How Patter compares diff --git a/dashboard-app/src/App.tsx b/dashboard-app/src/App.tsx index dd21ea6e..2564ff80 100644 --- a/dashboard-app/src/App.tsx +++ b/dashboard-app/src/App.tsx @@ -18,7 +18,11 @@ import { type SparklineResult, } from './lib/mappers'; -const SDK_VERSION = '0.6.0'; +// Fallback when the server-side ``aggregates.sdk_version`` field is missing +// (older backend, transient fetch error). Both SDKs (Python + TS) now ship +// the live ``getpatter.__version__`` / ``package.json#version`` in every +// ``/api/dashboard/aggregates`` response. +const SDK_VERSION_FALLBACK = 'dev'; const RANGE_LABEL: Record = { '1h': '1h', '24h': '24h', @@ -128,6 +132,12 @@ export function App() { const rangeAvgP95 = avgP95(filteredCalls) || aggregates?.avg_latency_ms || 0; const rangeSpend = totalSpend(filteredCalls) || aggregates?.total_cost || 0; const phoneNumber = pickPhoneNumber(calls); + // Server-derived SDK version (single source of truth: ``getpatter.__version__`` + // in Python / ``package.json#version`` in TS, surfaced via the aggregates + // payload). Falls back when the server side is older than this SPA build. + const sdkVersion = + (typeof aggregates?.sdk_version === 'string' && aggregates.sdk_version) || + SDK_VERSION_FALLBACK; const sparkTotalCalls = useMemo( () => computeSparkline(filteredCalls, 'totalCalls', strategy), @@ -183,7 +193,7 @@ export function App() { liveCount={liveCount} todayCount={totalCount} phoneNumber={phoneNumber} - sdkVersion={SDK_VERSION} + sdkVersion={sdkVersion} revealed={revealed} dark={dark} onToggleRevealed={toggleRevealed} @@ -262,7 +272,7 @@ export function App() { {isStreaming ? 'streaming · sse' : error ? `error · ${error}` : 'idle'} - SDK · {SDK_VERSION} + SDK · {sdkVersion}
diff --git a/dashboard-app/src/lib/api.ts b/dashboard-app/src/lib/api.ts index b5e79f94..edee21fe 100644 --- a/dashboard-app/src/lib/api.ts +++ b/dashboard-app/src/lib/api.ts @@ -74,6 +74,12 @@ export interface Aggregates { readonly avg_latency_ms: number; readonly cost_breakdown: CostBreakdown; readonly active_calls: number; + /** + * SDK version reported by the server (auto-derived from + * ``getpatter.__version__`` in Python / ``package.json#version`` in TS). + * Optional — older backends omit it; the SPA falls back gracefully. + */ + readonly sdk_version?: string; } const isObject = (value: unknown): value is Record => @@ -204,6 +210,7 @@ function parseAggregates(raw: unknown): Aggregates { active_calls: 0, }; } + const sdkVersion = asString(raw.sdk_version); return { total_calls: asNumber(raw.total_calls), total_cost: asNumber(raw.total_cost), @@ -211,6 +218,7 @@ function parseAggregates(raw: unknown): Aggregates { avg_latency_ms: asNumber(raw.avg_latency_ms), cost_breakdown: parseCostBreakdown(raw.cost_breakdown), active_calls: asNumber(raw.active_calls), + ...(sdkVersion ? { sdk_version: sdkVersion } : {}), }; } diff --git a/docs/dev-tools/tunneling.mdx b/docs/dev-tools/tunneling.mdx index 851fb066..4c37f817 100644 --- a/docs/dev-tools/tunneling.mdx +++ b/docs/dev-tools/tunneling.mdx @@ -8,9 +8,11 @@ icon: "cloud" Patter needs a public URL so your telephony provider can send webhooks to the local server. There are three options, all configured via the `tunnel=` argument on `Patter()` (or `new Patter({ tunnel })`). -## CloudflareTunnel (recommended) +## CloudflareTunnel (dev / acceptance only) -The built-in Cloudflare Quick Tunnel creates a public `*.trycloudflare.com` URL. No account or setup required — just the `cloudflared` binary on `PATH` (or the `cloudflared` npm package). +The built-in Cloudflare Quick Tunnel creates a public `*.trycloudflare.com` URL with zero setup. No account required — just the `cloudflared` binary on `PATH` (or the `cloudflared` npm package). + +**Warning (Twilio outbound calls):** Cloudflare Quick Tunnel routes traffic through a different edge pool than Twilio's Media Streams WebSocket upgrade path. On **first outbound call**, the WSS upgrade can race and drop ~1 % of calls. For production Twilio outbound use, replace this with [ngrok](#static-user-managed-tunnel) or a pre-provisioned named Cloudflare tunnel instead. ```python Python @@ -99,7 +101,9 @@ If auto-configuration fails (for example the Twilio auth token doesn't have perm ## Static (user-managed tunnel) -Running ngrok or some other public hostname yourself? Use `Static(hostname=...)` — Patter will skip process management and just trust the hostname you provide. +For production, especially with Twilio outbound calls, manage your own tunnel using ngrok or a pre-provisioned Cloudflare Named Tunnel. Patter will skip process management and trust the hostname you provide. + +**Recommended for Twilio outbound:** ngrok stabilizes the WSS upgrade path and eliminates the Quick Tunnel race. Sign up free at [ngrok.com](https://ngrok.com), then: ```bash ngrok http 8000 diff --git a/docs/python-sdk/agents.mdx b/docs/python-sdk/agents.mdx index f276cb29..44521c2a 100644 --- a/docs/python-sdk/agents.mdx +++ b/docs/python-sdk/agents.mdx @@ -89,7 +89,7 @@ agent = phone.agent( | `barge_in_threshold_ms` | `int` | `300` | Sustained-voice window (ms) before treating caller audio as barge-in. Set to `0` to disable. | | `aggressive_first_flush` | `bool` | `False` | Opt-in low-latency mode: emits the first clause on a soft punctuation boundary (`,`, em-dash, en-dash) once the buffer reaches ~40 chars. Saves 200–500 ms TTFA on the first sentence at the cost of slightly clipped prosody. **Hard-disabled when `language` starts with `"it"`** (Italian decimal commas would split mid-number). Pipeline mode only. | | `disable_phone_preamble` | `bool` | `False` | When `False` (default), Patter prepends a phone-friendly preamble to `system_prompt` that instructs the LLM to avoid markdown, emojis, bullet lists, and code blocks; spell out numbers and dates; and keep replies short. Set to `True` to ship `system_prompt` verbatim. | -| `prewarm_first_message` | `bool` | `True` since 0.6.2 | Pre-render `first_message` to TTS audio bytes during the ringing window and stream the cached buffer the instant the call connects, eliminating the 200–700 ms TTS first-byte latency on the greeting. Pipeline mode only — the flag is silently ignored (with a `WARN` log) on Realtime / ConvAI engines. Trade-off: pays for the greeting's TTS even when the call rings out unanswered (~$0.001–$0.005 per ring). Set `False` to restore the pre-0.6.2 behaviour. | +| `prewarm_first_message` | `bool` | `False` | Pre-render `first_message` to TTS audio bytes during the ringing window and stream the cached buffer the instant the call connects, eliminating the 200–700 ms TTS first-byte latency on the greeting. Pipeline mode only — the flag is silently ignored (with a `WARN` log) on Realtime / ConvAI engines. Trade-off: pays for the greeting's TTS even when the call rings out unanswered (~$0.001–$0.005 per ring). Opt in explicitly for inbound calls and low-noise deployments: `prewarm_first_message=True`. | ## Agent Dataclass @@ -156,18 +156,18 @@ agent = phone.agent( ### Pre-warming the first message -Since 0.6.2, pipeline-mode agents pre-render the `first_message` audio during the ringing window and stream the cached buffer the instant the call connects — eliminating the 200–700 ms TTS first-byte latency on the greeting. - -This is enabled by default (`prewarm_first_message=True`). The trade-off is paying for the greeting's TTS even when the call rings out unanswered (typically $0.001–$0.005 per ring depending on TTS provider). Opt out for very high-volume outbound where un-answered TTS spend matters: +Pipeline-mode agents can pre-render the `first_message` audio during the ringing window and stream the cached buffer the instant the call connects — eliminating the 200–700 ms TTS first-byte latency on the greeting. Opt in explicitly: ```python agent = phone.agent( system_prompt="...", first_message="Hello!", - prewarm_first_message=False, # disable pre-rendering + prewarm_first_message=True, # enable pre-rendering ) ``` +The trade-off is paying for the greeting's TTS even when the call rings out unanswered (typically $0.001–$0.005 per ring depending on TTS provider). Good for inbound calls and low-noise deployments; disable for very high-volume outbound where un-answered TTS spend matters. + Realtime / ConvAI engines don't consume the pre-rendered cache (their first message goes through the engine's own audio path); the flag is silently ignored with a `WARN` log when set on a non-pipeline agent. ## Voice Selection @@ -206,12 +206,12 @@ agent = phone.agent( ) ``` -`SileroVAD.for_phone_call(**overrides)` is identical to `SileroVAD.load(...)` but pins `sample_rate` to 16 000 Hz — the only sample rate Patter's pipeline-mode audio bus uses (8 kHz mulaw from Twilio is upsampled to 16 kHz PCM before reaching the VAD). All other parameters use the upstream `snakers4/silero-vad` defaults: +`SileroVAD.for_phone_call(**overrides)` is identical to `SileroVAD.load(...)` but pins `sample_rate` to 16 000 Hz — the only sample rate Patter's pipeline-mode audio bus uses (8 kHz mulaw from Twilio is upsampled to 16 kHz PCM before reaching the VAD). Parameters are tuned for telephony-band audio (not the upstream Silero studio defaults): | Field | Default | Upstream equivalent | |-------|---------|---------------------| -| `activation_threshold` | `0.5` | `threshold` | -| `deactivation_threshold` | `0.35` | `neg_threshold = threshold − 0.15` | +| `activation_threshold` | `0.8` | `threshold` (tuned for telephony, not studio) | +| `deactivation_threshold` | `0.65` | `neg_threshold = threshold − 0.15` (tuned for telephony) | | `min_speech_duration` | `0.25` s | `min_speech_duration_ms = 250` | | `min_silence_duration` | `0.1` s | `min_silence_duration_ms = 100` | | `prefix_padding_duration` | `0.03` s | `speech_pad_ms = 30` | diff --git a/docs/python-sdk/carrier.mdx b/docs/python-sdk/carrier.mdx index 1a5fa8bc..d62fb329 100644 --- a/docs/python-sdk/carrier.mdx +++ b/docs/python-sdk/carrier.mdx @@ -41,6 +41,16 @@ carrier = twilio.Carrier(account_sid="AC...", auth_token="...") On `serve()`, Patter automatically sets the `voice_url` on the Twilio number to `https:///webhooks/twilio/voice` via the Twilio REST API — no manual Console configuration needed. +### Twilio trial account limitations + +Twilio trial accounts apply a few platform-level restrictions that affect first-time testing. None of these are Patter limitations — they're Twilio platform rules: + +1. **Verified Caller IDs required for outbound** — trial accounts can only call numbers you've added under **Phone Numbers › Verified Caller IDs** in the Twilio Console. Verifying via the CLI is also restricted; do it from the Console. +2. **Trial announcement prepended on outbound calls** — Twilio plays an English trial-account message before connecting the call to your agent; the callee has to press a key to continue. +3. **Trial caller-ID restrictions** — the caller-ID shown to the recipient may be masked or labelled differently than your purchased number until the account is upgraded. + +Upgrading the account in the Twilio Console clears all three. Refer to the Twilio docs (search: "trial account") for the current exact behaviour — Twilio may change these over time. + ### Signature verification The Auth Token is also used to verify every Twilio webhook with HMAC-SHA1 against the `X-Twilio-Signature` header. Requests with invalid signatures are rejected with HTTP 403. diff --git a/docs/python-sdk/engines.mdx b/docs/python-sdk/engines.mdx index da27894b..c7183597 100644 --- a/docs/python-sdk/engines.mdx +++ b/docs/python-sdk/engines.mdx @@ -42,6 +42,7 @@ asyncio.run(main()) | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `api_key` | `str` | `""` | OpenAI API key. Reads from `OPENAI_API_KEY` when empty. | +| `language` | `str` | `"en"` | BCP-47 language code (e.g., `"ja"`, `"es"`, `"fr"`). Seeds the auto-generated fallback system prompt (`"Respond in {language}"`). Has no effect when you supply your own `system_prompt` — write the prompt in the target language and OpenAI Realtime will auto-detect from the audio. | | `voice` | `str` | `"alloy"` | One of `"alloy"`, `"echo"`, `"fable"`, `"onyx"`, `"nova"`, `"shimmer"`. | | `model` | `str` | `"gpt-4o-mini-realtime-preview"` | OpenAI Realtime model ID. See [supported models](/python-sdk/providers/openai-realtime#models). | diff --git a/docs/python-sdk/local-mode.mdx b/docs/python-sdk/local-mode.mdx index ad1ebb85..5505280d 100644 --- a/docs/python-sdk/local-mode.mdx +++ b/docs/python-sdk/local-mode.mdx @@ -80,32 +80,41 @@ await phone.serve(agent, port=8000) ## Making Outbound Calls -In local mode, use `call()` to make outbound calls while the server is running: +In local mode, use `call()` to make outbound calls while the server is running. + +**Important:** the server must be fully initialized before you call `phone.call()`. Use `await phone.ready` — it resolves once the tunnel is up, the embedded server is in `listen` state, and the carrier webhook is configured. This is the reliable replacement for `asyncio.sleep()` guesswork: ```python import asyncio async def main(): - # Start the server in background + # Start the server in the background — don't await it yet. server_task = asyncio.create_task(phone.serve(agent, port=8000)) - # Wait a moment for the server to be ready - await asyncio.sleep(1) - - # Make an outbound call - await phone.call( - to="+15550009876", - agent=agent, - machine_detection=True, - voicemail_message="Please call us back at 555-000-1234.", - ) - - # Keep the server running - await server_task + # Block until tunnel + HTTP server + carrier webhook are all wired up. + # Resolves to the public webhook hostname as a string. + await phone.ready + + try: + # Now safe to make outbound calls + await phone.call( + to="+15550009876", + agent=agent, + machine_detection=True, + voicemail_message="Please call us back at 555-000-1234.", + ) + finally: + # Clean shutdown + await phone.disconnect() + server_task.cancel() asyncio.run(main()) ``` +`phone.ready` rejects with the underlying exception if `serve()` fails before the server reaches `listen` state, so you get an immediate error instead of a hanging `await`. + +**Advanced — tunnel hostname only:** if you only need the public URL (for example, to register a webhook manually) without waiting for the HTTP server to be in `listen` state, use `await phone.tunnel_ready` instead. It resolves earlier but a `phone.call()` placed immediately afterwards can race the WebSocket upgrade path and produce a dropped call on answer. + ### call() Parameters (Local Mode) | Parameter | Type | Default | Description | diff --git a/docs/python-sdk/providers/elevenlabs-tts.mdx b/docs/python-sdk/providers/elevenlabs-tts.mdx index 514682dc..8f79c9b9 100644 --- a/docs/python-sdk/providers/elevenlabs-tts.mdx +++ b/docs/python-sdk/providers/elevenlabs-tts.mdx @@ -86,6 +86,18 @@ const ttsTelnyx = ElevenLabsTTS.forTelnyx({ voiceId: "rachel" }); `for_twilio` / `forTwilio` saves ~30–80 ms first-byte plus per-frame CPU and removes a potential aliasing source. If your Telnyx profile is pinned to PCMU/8000 instead, construct directly with `output_format='ulaw_8000'`. +### Carrier auto-detect — `set_telephony_carrier` + +When you don't know the carrier at construction time, `StreamHandler` calls `set_telephony_carrier(carrier)` at call start to advise the provider of the wire format: + +```python +tts = ElevenLabsTTS() # output_format defaults to pcm_16000 +tts.set_telephony_carrier("twilio") # auto-flips to ulaw_8000 +tts.set_telephony_carrier("telnyx") # keeps pcm_16000 (Telnyx default) +``` + +When `output_format` was passed explicitly to the constructor (or via `for_twilio` / `for_telnyx`), `set_telephony_carrier` is a no-op — the user's choice always wins. Calling with an unknown carrier (`""` / `"custom"`) is also a no-op. + ## Constructor diff --git a/docs/python-sdk/providers/silero-vad.mdx b/docs/python-sdk/providers/silero-vad.mdx index 1c8fcfff..321632b7 100644 --- a/docs/python-sdk/providers/silero-vad.mdx +++ b/docs/python-sdk/providers/silero-vad.mdx @@ -48,8 +48,8 @@ vad = await asyncio.to_thread(SileroVAD.for_phone_call) # Or, full control: vad = SileroVAD.load( - activation_threshold=0.5, # Silero `threshold` - deactivation_threshold=0.35, # `neg_threshold = threshold - 0.15` + activation_threshold=0.8, # Silero `threshold`; 0.8 tuned for telephony + deactivation_threshold=0.65, # `neg_threshold = threshold - 0.15` min_speech_duration=0.25, # seconds, `min_speech_duration_ms = 250` min_silence_duration=0.1, # seconds, `min_silence_duration_ms = 100` prefix_padding_duration=0.03, # seconds, `speech_pad_ms = 30` @@ -66,8 +66,8 @@ const vad = await SileroVAD.forPhoneCall(); // Or, full control: const vad2 = await SileroVAD.load({ - activationThreshold: 0.5, - deactivationThreshold: 0.35, + activationThreshold: 0.8, + deactivationThreshold: 0.65, minSpeechDuration: 0.25, minSilenceDuration: 0.1, prefixPaddingDuration: 0.03, @@ -79,15 +79,15 @@ const vad2 = await SileroVAD.load({ ### Phone-call preset (`for_phone_call` / `forPhoneCall`) -Identical to `load()` but pins `sample_rate` to 16000 Hz — the only sample rate Patter's pipeline-mode audio bus uses (8 kHz mulaw from Twilio is upsampled to 16 kHz PCM before reaching the VAD). All other parameters mirror the upstream Silero defaults from `snakers4/silero-vad`: +Identical to `load()` but pins `sample_rate` to 16000 Hz — the only sample rate Patter's pipeline-mode audio bus uses (8 kHz mulaw from Twilio is upsampled to 16 kHz PCM before reaching the VAD). Parameters are tuned for telephony-band audio (not the upstream Silero studio defaults): -- `activation_threshold = 0.5` — upstream `threshold` -- `deactivation_threshold = 0.35` — upstream `neg_threshold = threshold - 0.15` +- `activation_threshold = 0.8` — raised from upstream default 0.5 to filter background noise on telephony +- `deactivation_threshold = 0.65` — raised from upstream default 0.35 to match activation with no hysteresis gap - `min_speech_duration = 0.25` — upstream `min_speech_duration_ms = 250` - `min_silence_duration = 0.1` — upstream `min_silence_duration_ms = 100` - `prefix_padding_duration = 0.03` — upstream `speech_pad_ms = 30` -Override any field via keyword arguments. Deployments that experience truncation on natural pauses can raise `min_silence_duration` (e.g. 0.5–1.0 s): +Override any field via keyword arguments. Deployments that experience truncation on natural pauses can raise `min_silence_duration` (e.g. 0.5–1.0 s). To restore the upstream Silero defaults for studio audio, pass `activation_threshold=0.5, deactivation_threshold=0.35`: ```python Python diff --git a/docs/python-sdk/quickstart.mdx b/docs/python-sdk/quickstart.mdx index db97c7a6..4bd7d717 100644 --- a/docs/python-sdk/quickstart.mdx +++ b/docs/python-sdk/quickstart.mdx @@ -146,6 +146,36 @@ Swap `AnthropicLLM()` for `OpenAILLM()`, `GroqLLM()`, `CerebrasLLM()`, or `Googl --- +## Non-English agents + +OpenAI Realtime auto-detects the spoken language from the inbound audio and matches the language of your `system_prompt`. Writing the prompt in the target language is the primary control: + +```python +# Japanese — write the prompt in Japanese. +agent = phone.agent( + engine=OpenAIRealtime(), + system_prompt="あなたは丁寧な日本語のアシスタントです。", + first_message="お電話ありがとうございます。ご用件をお伺いします。", +) +``` + +The `language="ja"` parameter on `OpenAIRealtime` only seeds the auto-generated fallback prompt (`"Respond in {language}"`) when you don't supply your own `system_prompt`. It does not configure the Realtime API session itself. + +For pipeline mode the STT needs the language code so it can pick the right acoustic model: + +```python +agent = phone.agent( + stt=DeepgramSTT(language="ja"), # required: Deepgram needs the JP model + llm=AnthropicLLM(), # LLM responds in whatever language you prompt it in + tts=ElevenLabsTTS(voice_id="..."), # ElevenLabs auto-detects from text; pick a voice that supports JP + system_prompt="あなたは丁寧な日本語のアシスタントです。", +) +``` + +**E.164 formatting for international calls:** outbound `to=` values must be E.164. Many regions drop the trunk-zero — Japanese numbers like `090-xxxx-xxxx` are dialled as `+81XXXXXXXXX` (drop the leading `0`). + +--- + ## What's next diff --git a/docs/typescript-sdk/agents.mdx b/docs/typescript-sdk/agents.mdx index 428b0af0..8ea84ca4 100644 --- a/docs/typescript-sdk/agents.mdx +++ b/docs/typescript-sdk/agents.mdx @@ -78,7 +78,7 @@ Available LLM providers: `OpenAILLM`, `AnthropicLLM`, `GroqLLM`, `CerebrasLLM`, | `bargeInThresholdMs` | `number` | No | `300` | Barge-in hang-over window (ms). Set to `0` to disable. | | `aggressiveFirstFlush` | `boolean` | No | `false` | Opt-in low-latency mode: emits the first clause on soft punctuation (`,`, em-dash) once the buffer reaches ≥40 chars. Saves 200–500 ms TTFA. Hard-disabled when `language="it"` (Italian punctuation patterns are incompatible). | | `disablePhonePreamble` | `boolean` | No | `false` | When `false` (default), Patter prepends a phone-friendly preamble to `systemPrompt` that instructs the LLM to avoid markdown, emojis, bullet lists, and code blocks; spell out numbers and dates; and keep replies short. Set to `true` to ship `systemPrompt` verbatim. | -| `prewarmFirstMessage` | `boolean` | No | `true` since 0.6.2 (pipeline mode only) | Pre-render `firstMessage` to TTS audio bytes during the ringing window and stream the cached buffer the instant the call connects, eliminating the 200–700 ms TTS first-byte latency on the greeting. Realtime / ConvAI engines silently ignore the flag (with a `WARN` log) — only pipeline mode consumes the cache. Trade-off: pays for the greeting's TTS even when the call rings out unanswered (~$0.001–$0.005 per ring). Set `false` to restore the pre-0.6.2 behaviour. | +| `prewarmFirstMessage` | `boolean` | No | `false` (pipeline mode only) | Pre-render `firstMessage` to TTS audio bytes during the ringing window and stream the cached buffer the instant the call connects, eliminating the 200–700 ms TTS first-byte latency on the greeting. Realtime / ConvAI engines silently ignore the flag (with a `WARN` log) — only pipeline mode consumes the cache. Trade-off: pays for the greeting's TTS even when the call rings out unanswered (~$0.001–$0.005 per ring). Opt in explicitly for inbound calls and low-noise deployments: `prewarmFirstMessage: true`. | | `provider` | `'openai_realtime' \| 'elevenlabs_convai' \| 'pipeline'` | No | derived | Provider mode. Normally derived from `engine` / `stt` + `tts`. Pass `'pipeline'` explicitly when building a pipeline-mode agent without an engine instance. | ## Validation Rules @@ -137,8 +137,8 @@ const agent = phone.agent({ | Field | Default | Upstream equivalent | |-------|---------|---------------------| -| `activationThreshold` | `0.5` | `threshold` | -| `deactivationThreshold` | `0.35` | `neg_threshold = threshold − 0.15` | +| `activationThreshold` | `0.8` | `threshold` (tuned for telephony, not studio) | +| `deactivationThreshold` | `0.65` | `neg_threshold = threshold − 0.15` (tuned for telephony) | | `minSpeechDuration` | `0.25` s | `min_speech_duration_ms = 250` | | `minSilenceDuration` | `0.1` s | `min_silence_duration_ms = 100` | | `prefixPaddingDuration` | `0.03` s | `speech_pad_ms = 30` | diff --git a/docs/typescript-sdk/providers/elevenlabs-tts.mdx b/docs/typescript-sdk/providers/elevenlabs-tts.mdx index 4fb10e8b..2275a3d9 100644 --- a/docs/typescript-sdk/providers/elevenlabs-tts.mdx +++ b/docs/typescript-sdk/providers/elevenlabs-tts.mdx @@ -86,6 +86,18 @@ tts_telnyx = ElevenLabsTTS.for_telnyx(voice_id="rachel") `forTwilio` saves ~30–80 ms first-byte plus per-frame CPU and removes a potential aliasing source. If your Telnyx profile is pinned to PCMU/8000 instead, construct directly with `outputFormat: "ulaw_8000"`. +### Carrier auto-detect — `setTelephonyCarrier` + +When you don't know the carrier at construction time, `StreamHandler` calls `setTelephonyCarrier(carrier)` at call start to advise the provider of the wire format: + +```typescript +const tts = new ElevenLabsTTS(); // outputFormat defaults to pcm_16000 +tts.setTelephonyCarrier("twilio"); // auto-flips to ulaw_8000 +tts.setTelephonyCarrier("telnyx"); // keeps pcm_16000 (Telnyx default) +``` + +When `outputFormat` was passed explicitly to the constructor (or via `forTwilio` / `forTelnyx`), `setTelephonyCarrier` is a no-op — the user's choice always wins. Calling with an unknown carrier (`""` / `"custom"`) is also a no-op. + ## Constructor ```typescript diff --git a/docs/typescript-sdk/providers/silero-vad.mdx b/docs/typescript-sdk/providers/silero-vad.mdx index 2097e22f..0452bdae 100644 --- a/docs/typescript-sdk/providers/silero-vad.mdx +++ b/docs/typescript-sdk/providers/silero-vad.mdx @@ -51,8 +51,8 @@ const vad = await SileroVAD.forPhoneCall(); // Or, full control: const vad2 = await SileroVAD.load({ - activationThreshold: 0.5, // Silero `threshold` - deactivationThreshold: 0.35, // `neg_threshold = threshold - 0.15` + activationThreshold: 0.8, // Silero `threshold`; 0.8 tuned for telephony + deactivationThreshold: 0.65, // `neg_threshold = threshold - 0.15` minSpeechDuration: 0.25, // seconds, `min_speech_duration_ms = 250` minSilenceDuration: 0.1, // seconds, `min_silence_duration_ms = 100` prefixPaddingDuration: 0.03, // seconds, `speech_pad_ms = 30` @@ -68,8 +68,8 @@ from getpatter.providers.silero_vad import SileroVAD vad = await asyncio.to_thread(SileroVAD.for_phone_call) vad2 = SileroVAD.load( - activation_threshold=0.5, - deactivation_threshold=0.35, + activation_threshold=0.8, + deactivation_threshold=0.65, min_speech_duration=0.25, min_silence_duration=0.1, prefix_padding_duration=0.03, @@ -81,15 +81,15 @@ vad2 = SileroVAD.load( ### Phone-call preset (`forPhoneCall`) -Identical to `load()` but pins `sampleRate` to 16000 Hz — the only sample rate Patter's pipeline-mode audio bus uses (8 kHz mulaw from Twilio is upsampled to 16 kHz PCM before reaching the VAD). All other parameters mirror the upstream Silero defaults from `snakers4/silero-vad`: +Identical to `load()` but pins `sampleRate` to 16000 Hz — the only sample rate Patter's pipeline-mode audio bus uses (8 kHz mulaw from Twilio is upsampled to 16 kHz PCM before reaching the VAD). Parameters are tuned for telephony-band audio (not the upstream Silero studio defaults): -- `activationThreshold = 0.5` — upstream `threshold` -- `deactivationThreshold = 0.35` — upstream `neg_threshold = threshold - 0.15` +- `activationThreshold = 0.8` — raised from upstream default 0.5 to filter background noise on telephony +- `deactivationThreshold = 0.65` — raised from upstream default 0.35 to match activation with no hysteresis gap - `minSpeechDuration = 0.25` — upstream `min_speech_duration_ms = 250` - `minSilenceDuration = 0.1` — upstream `min_silence_duration_ms = 100` - `prefixPaddingDuration = 0.03` — upstream `speech_pad_ms = 30` -Override any field via the options object. Deployments that experience truncation on natural pauses can raise `minSilenceDuration` (e.g. 0.5–1.0 s): +Override any field via the options object. Deployments that experience truncation on natural pauses can raise `minSilenceDuration` (e.g. 0.5–1.0 s). To restore the upstream Silero defaults for studio audio, pass `activationThreshold: 0.5, deactivationThreshold: 0.35`: ```typescript TypeScript diff --git a/libraries/python/getpatter/__init__.py b/libraries/python/getpatter/__init__.py index 058319d9..4d8b62f4 100644 --- a/libraries/python/getpatter/__init__.py +++ b/libraries/python/getpatter/__init__.py @@ -77,7 +77,9 @@ from getpatter.carriers.twilio import Carrier as Twilio from getpatter.carriers.telnyx import Carrier as Telnyx from getpatter.engines.openai import Realtime as OpenAIRealtime +from getpatter.engines.openai_realtime_2 import Realtime2 as OpenAIRealtime2 from getpatter.engines.elevenlabs import ConvAI as ElevenLabsConvAI +from getpatter.providers.openai_realtime_2 import OpenAIRealtime2Adapter # STT flat aliases — parity with libraries/typescript/src/index.ts. from getpatter.stt.deepgram import STT as DeepgramSTT @@ -407,6 +409,8 @@ def mix_pcm(agent: bytes, bg: bytes, ratio: float) -> bytes: "Twilio", "Telnyx", "OpenAIRealtime", + "OpenAIRealtime2", + "OpenAIRealtime2Adapter", "ElevenLabsConvAI", "DeepgramSTT", "WhisperSTT", diff --git a/libraries/python/getpatter/cli.py b/libraries/python/getpatter/cli.py index 7461e186..09ea2d7d 100644 --- a/libraries/python/getpatter/cli.py +++ b/libraries/python/getpatter/cli.py @@ -21,7 +21,10 @@ def main() -> None: help="Start the standalone call monitoring dashboard", ) dash.add_argument( - "--port", type=int, default=8000, help="Port to serve dashboard on (default: 8000)" + "--port", + type=int, + default=8000, + help="Port to serve dashboard on (default: 8000)", ) # patter eval run @@ -74,13 +77,23 @@ async def _run_dashboard(port: int) -> None: async def health(): return {"status": "ok", "mode": "dashboard"} - # Ingest endpoint — SDK POSTs completed call data here for live updates + # Ingest endpoint — SDK POSTs call lifecycle events here so a + # standalone dashboard surfaces them live. Three event kinds: + # * status="initiated" — outbound dial handed off to carrier, + # callee hasn't picked up yet. Surfaces the row immediately so + # the user sees the attempt during ringing. + # * default (no status) — call_start, media stream began. + # * ended_at present — call_end, final metrics + transcript. @app.post("/api/dashboard/ingest") async def ingest(request: Request): data = await request.json() call_id = data.get("call_id", "") if not call_id: return {"ok": False, "error": "missing call_id"} + status = data.get("status") + if status == "initiated": + store.record_call_initiated(data) + return {"ok": True, "call_id": call_id, "event": "initiated"} store.record_call_start(data) if data.get("ended_at"): store.record_call_end(data, metrics=data.get("metrics")) diff --git a/libraries/python/getpatter/client.py b/libraries/python/getpatter/client.py index fff1d8e0..0d4f7dc9 100644 --- a/libraries/python/getpatter/client.py +++ b/libraries/python/getpatter/client.py @@ -19,6 +19,7 @@ import asyncio import logging +import os import time from collections.abc import Awaitable, Callable from typing import TYPE_CHECKING, Any @@ -71,9 +72,12 @@ def _resolve_persist_root(persist: bool | str | None) -> str | None: - ``persist is False`` → ``None`` (force off, even if env var is set) - ``persist is True`` → platform default (``resolve_log_root("auto")``) - ``persist`` is a string → exactly that path (after ``~`` expansion) - - ``persist is None`` → fall back to ``PATTER_LOG_DIR`` env var, or - ``None`` if the env is also unset (preserves the prior opt-in - behaviour where persistence required setting the env explicitly) + - ``persist is None`` → ``PATTER_LOG_DIR`` env var if set, else platform + default (``resolve_log_root("auto")``). Changed from the prior + opt-in behaviour on 2026-05-21: the dashboard's hydrate path + requires on-disk records to survive process restarts, so persistence + now defaults to ON. Set ``persist=False`` to keep the old + ephemeral-RAM-only behaviour. """ from getpatter.services.call_log import resolve_log_root @@ -86,6 +90,11 @@ def _resolve_persist_root(persist: bool | str | None) -> str | None: result = resolve_log_root(persist) return str(result) if result is not None else None result = resolve_log_root() + if result is not None: + return str(result) + # No explicit persist + no env var → fall back to platform default so + # the dashboard hydrate path always has something to read. + result = resolve_log_root("auto") return str(result) if result is not None else None @@ -135,7 +144,15 @@ async def _safe_close_handle(handle: Any) -> None: if ws is not None: await ws.close() return - # Bare websocket + # Bare websocket — may have a parked keepalive task attached by + # the GA Realtime parker. Cancel it before closing so the loop + # doesn't race the close handshake with another send(). + ka = getattr(handle, "_parked_keepalive_task", None) + if ka is not None: + try: + ka.cancel() + except Exception: + pass await handle.close() except Exception: pass @@ -624,39 +641,41 @@ async def call( # penalty on human pickups — the call connects immediately # and the result arrives via the ``/webhooks/twilio/amd`` # callback. Twilio best-practice default. - extra_params["MachineDetection"] = "DetectMessageEnd" - extra_params["AsyncAmd"] = "true" - extra_params["AsyncAmdStatusCallback"] = ( + # + # NOTE: All keys here MUST be snake_case. The twilio-python + # SDK's ``client.calls.create(**kwargs)`` accepts snake_case + # arguments and internally translates them to the PascalCase + # form Twilio's REST API requires on the wire. Passing + # ``MachineDetection`` / ``StatusCallback`` etc. directly to + # ``calls.create`` raises ``TypeError: unexpected keyword + # argument`` and crashes every outbound call (the bug that + # shipped through 0.5.x and was reported externally). + extra_params["machine_detection"] = "DetectMessageEnd" + extra_params["async_amd"] = "true" + extra_params["async_amd_status_callback"] = ( f"https://{config.webhook_url}/webhooks/twilio/amd" ) if ring_timeout is not None: - extra_params["Timeout"] = int(ring_timeout) + extra_params["timeout"] = int(ring_timeout) # Status callback so the dashboard sees ringing/failed/ # no-answer transitions before any media webhook fires. extra_params.setdefault( - "StatusCallback", + "status_callback", f"https://{config.webhook_url}/webhooks/twilio/status", ) - extra_params.setdefault("StatusCallbackMethod", "POST") - # ``StatusCallbackEvent`` must be a list (twilio-python + extra_params.setdefault("status_callback_method", "POST") + # ``status_callback_event`` must be a list (twilio-python # serialises it as repeated query params), NOT a - # space-separated single string. Pass via the snake_case key - # ``status_callback_event`` that the twilio-python SDK - # documents — the space-separated form triggered Twilio - # notification 21626 ("invalid statusCallbackEvents") and on - # some ingestion paths also broke the answer-handler webhook - # (root cause of intermittent 11100 WS-upgrade failures). + # space-separated single string. The space-separated form + # triggered Twilio notification 21626 ("invalid + # statusCallbackEvents") and on some ingestion paths also + # broke the answer-handler webhook (root cause of intermittent + # 11100 WS-upgrade failures). # See https://www.twilio.com/docs/voice/api/call-resource#statuscallbackevent - if ( - "StatusCallbackEvent" not in extra_params - and "status_callback_event" not in extra_params - ): - extra_params["status_callback_event"] = [ - "initiated", - "ringing", - "answered", - "completed", - ] + extra_params.setdefault( + "status_callback_event", + ["initiated", "ringing", "answered", "completed"], + ) call_id = await adapter.initiate_call( config.phone_number or from_number, to, @@ -666,28 +685,41 @@ async def call( logger.info("Outbound call initiated: %s", call_id) # Pre-register the call so the dashboard surfaces attempts # that never reach media (no-answer, busy, carrier-reject). + initiated_payload = { + "call_id": call_id, + "caller": config.phone_number or from_number, + "callee": to, + "direction": "outbound", + "status": "initiated", + } if ( self._server is not None and getattr(self._server, "_metrics_store", None) is not None ): try: - self._server._metrics_store.record_call_initiated( - { - "call_id": call_id, - "caller": config.phone_number or from_number, - "callee": to, - "direction": "outbound", - } - ) + self._server._metrics_store.record_call_initiated(initiated_payload) except Exception as exc: logger.debug("record_call_initiated: %s", exc) - self._spawn_prewarm_first_message(agent, call_id, ring_timeout=ring_timeout) + # Relay to a standalone dashboard (``patter dashboard`` running + # in a separate process) so it surfaces the dial attempt the + # moment we hand off to the carrier, not only when media arrives + # on pickup. Fire-and-forget — silent when no standalone + # dashboard is listening. + try: + from getpatter.dashboard.persistence import notify_dashboard + + asyncio.create_task(notify_dashboard(initiated_payload)) + except Exception: + pass + self._spawn_prewarm_first_message( + agent, call_id, ring_timeout=ring_timeout, carrier="twilio" + ) # Park provider WebSockets in parallel so the per-call # StreamHandler can adopt them at ``start`` instead of # paying the cold-handshake on first turn. Off when the # user explicitly sets ``agent.prewarm=False``. if getattr(agent, "prewarm", True) is not False: - self._park_provider_connections(agent, call_id) + self._park_provider_connections(agent, call_id, carrier="twilio") elif config.telephony_provider == "telnyx": from getpatter.providers.telnyx_adapter import TelnyxAdapter # type: ignore[import] @@ -704,28 +736,36 @@ async def call( machine_detection=wants_amd, ) logger.info("Outbound call initiated: %s", call_id) + initiated_payload = { + "call_id": call_id, + "caller": config.phone_number or from_number, + "callee": to, + "direction": "outbound", + "status": "initiated", + } if ( self._server is not None and getattr(self._server, "_metrics_store", None) is not None ): try: - self._server._metrics_store.record_call_initiated( - { - "call_id": call_id, - "caller": config.phone_number or from_number, - "callee": to, - "direction": "outbound", - } - ) + self._server._metrics_store.record_call_initiated(initiated_payload) except Exception as exc: logger.debug("record_call_initiated: %s", exc) - self._spawn_prewarm_first_message(agent, call_id, ring_timeout=ring_timeout) + try: + from getpatter.dashboard.persistence import notify_dashboard + + asyncio.create_task(notify_dashboard(initiated_payload)) + except Exception: + pass + self._spawn_prewarm_first_message( + agent, call_id, ring_timeout=ring_timeout, carrier="telnyx" + ) # Park provider WebSockets in parallel so the per-call # StreamHandler can adopt them at ``start`` instead of # paying the cold-handshake on first turn. Off when the # user explicitly sets ``agent.prewarm=False``. if getattr(agent, "prewarm", True) is not False: - self._park_provider_connections(agent, call_id) + self._park_provider_connections(agent, call_id, carrier="telnyx") # === Pre-warm helpers === @@ -802,7 +842,13 @@ def close_prewarmed_connections(self, call_id: str) -> None: if slot is not None: _close_parked_slot(slot) - def _park_provider_connections(self, agent: Agent, call_id: str) -> None: + def _park_provider_connections( + self, + agent: Agent, + call_id: str, + *, + carrier: str | None = None, + ) -> None: """Open and park provider WebSockets in parallel with the carrier-side ``initiate_call``. Unlike :meth:`_spawn_provider_warmup` (which closes the WS after a brief idle), the sockets opened here @@ -824,7 +870,9 @@ def _park_provider_connections(self, agent: Agent, call_id: str) -> None: tts = getattr(agent, "tts", None) stt_open = getattr(stt, "open_parked_connection", None) if stt else None tts_open = getattr(tts, "open_parked_connection", None) if tts else None - if stt_open is None and tts_open is None: + provider = getattr(agent, "provider", None) + wants_realtime_park = provider in ("openai_realtime", "openai_realtime_2") + if stt_open is None and tts_open is None and not wants_realtime_park: return slot: dict[str, Any] = {} @@ -867,8 +915,93 @@ async def _park_tts() -> None: except Exception as exc: # noqa: BLE001 - best-effort logger.debug("Park TTS failed for %s: %s", call_id, exc) + async def _park_openai_realtime() -> None: + if not wants_realtime_park: + return + # Build a throw-away adapter instance JUST to call + # ``open_parked_connection`` and produce a primed WS. The + # per-call StreamHandler builds its own adapter and adopts + # the returned WS via ``adopt_websocket``. Constructed with + # the same agent-derived kwargs the StreamHandler would use, + # so the parked session.update matches what the live session + # expects — no second session.update round-trip on adopt. + from getpatter.providers.openai_realtime_2 import ( # type: ignore[import] + OpenAIRealtime2Adapter, + ) + + # The OpenAI key lives on ``LocalConfig.openai_key`` (set by + # the user when constructing ``Patter()``); fall back to + # ``OPENAI_API_KEY`` env var when not explicitly configured. + api_key = getattr(self._local_config, "openai_key", None) or os.environ.get( + "OPENAI_API_KEY" + ) + if not api_key: + logger.info( + "[PREWARM] callId=%s provider=openai_realtime SKIPPED — " + "no OPENAI_API_KEY available", + call_id, + ) + return + try: + adapter_kwargs: dict[str, Any] = { + "api_key": api_key, + "model": agent.model, + "voice": agent.voice, + "instructions": agent.system_prompt or "", + "language": agent.language, + "tools": [], + # Carrier-derived placeholder; the GA adapter's session + # always emits ``audio/pcm @ 24000`` regardless of this + # value (it transcodes mulaw↔pcm internally), so any + # non-None value keeps the parent class happy. + "audio_format": "g711_ulaw" if carrier == "twilio" else "pcm16", + } + reasoning_effort = getattr( + agent, "openai_realtime_reasoning_effort", None + ) + if reasoning_effort is not None: + adapter_kwargs["reasoning_effort"] = reasoning_effort + transcription_model = getattr( + agent, + "openai_realtime_input_audio_transcription_model", + None, + ) + if transcription_model is not None: + adapter_kwargs["input_audio_transcription_model"] = ( + transcription_model + ) + tmp_adapter = OpenAIRealtime2Adapter(**adapter_kwargs) + ws = await tmp_adapter.open_parked_connection() + if self._prewarmed_connections.get(call_id) is not slot: + try: + await ws.close() + except Exception: + pass + return + slot["openai_realtime"] = ws + logger.info( + "[PREWARM] callId=%s provider=openai_realtime ms=%d", + call_id, + int((time.monotonic() - started_at) * 1000), + ) + except Exception as exc: # noqa: BLE001 - best-effort + # Bumped to INFO so prewarm failures surface in normal + # logs — they're best-effort but invisible failures make + # the latency optimisation hard to debug. Callers can + # silence with a logging filter if they really want. + logger.info( + "[PREWARM] callId=%s provider=openai_realtime FAILED: %s", + call_id, + exc, + ) + async def _run_all() -> None: - await asyncio.gather(_park_stt(), _park_tts(), return_exceptions=True) + await asyncio.gather( + _park_stt(), + _park_tts(), + _park_openai_realtime(), + return_exceptions=True, + ) task = asyncio.create_task(_run_all()) self._prewarm_tasks.add(task) @@ -915,7 +1048,12 @@ async def _evict_parked_after(self, call_id: str, ttl_s: float) -> None: ) def _spawn_prewarm_first_message( - self, agent: Agent, call_id: str, *, ring_timeout: int | None + self, + agent: Agent, + call_id: str, + *, + ring_timeout: int | None, + carrier: str | None = None, ) -> None: """Pre-render ``agent.first_message`` to TTS bytes during the ringing window and stash them in ``_prewarm_audio[call_id]``. @@ -935,6 +1073,12 @@ def _spawn_prewarm_first_message( **Capped at ``_PREWARM_CACHE_MAX`` concurrent entries.** Refused with a WARN when the cap is reached (the call still proceeds — StreamHandler falls back to live TTS). + + ``carrier`` — when provided (``"twilio"`` / ``"telnyx"``), the TTS + adapter's ``set_telephony_carrier`` hook is called BEFORE synthesis + so it can produce wire-native bytes (``ulaw_8000`` for Twilio, + ``pcm_16000`` for Telnyx) and skip the client-side transcode. + Parity with TS ``Patter.spawnPrewarmFirstMessage(carrier)``. """ if not getattr(agent, "prewarm_first_message", False): return @@ -957,6 +1101,26 @@ def _spawn_prewarm_first_message( if synthesize is None or not callable(synthesize): return + # Advise the TTS adapter of the telephony carrier BEFORE we trigger + # the synth so it can produce wire-native bytes (``ulaw_8000`` for + # Twilio, ``pcm_16000`` for Telnyx) — skipping the client-side + # resample + mulaw encode that produced audible artifacts on the + # prewarmed firstMessage during 0.6.2 acceptance. The hook is opt-in + # per-adapter; adapters that don't expose it (or that the user + # configured with an explicit output_format) keep their format. + # Parity with TS ``Patter.spawnPrewarmFirstMessage``. + if carrier: + set_carrier = getattr(tts, "set_telephony_carrier", None) + if callable(set_carrier): + try: + set_carrier(carrier) + except Exception as _exc: + logger.debug( + "Prewarm TTS set_telephony_carrier failed for %s: %s", + call_id, + _exc, + ) + # FIX #96 — refuse to spawn when the cache (live entries + # in-flight synth tasks) would exceed the cap. Counting both # active entries AND pending tasks keeps the bound honest under @@ -1102,7 +1266,7 @@ def agent( self, system_prompt: str, voice: str = "alloy", - model: str = "gpt-4o-mini-realtime-preview", + model: str = "gpt-realtime-mini", language: str = "en", first_message: str = "", tools: list[Tool] | None = None, @@ -1180,9 +1344,9 @@ def agent( # users sometimes pass the engine AND a specific voice. if voice == "alloy" and engine_fields.get("voice"): voice = engine_fields["voice"] - if model == "gpt-4o-mini-realtime-preview" and engine_fields.get("model"): + if model == "gpt-realtime-mini" and engine_fields.get("model"): model = engine_fields["model"] - if engine_kind == "openai_realtime": + if engine_kind in ("openai_realtime", "openai_realtime_2"): openai_engine_key = engine_fields.get("api_key", "") openai_realtime_reasoning_effort = engine_fields.get("reasoning_effort") openai_realtime_input_audio_transcription_model = engine_fields.get( @@ -1213,7 +1377,10 @@ def agent( self._local_config, elevenlabs_key=elevenlabs_engine_key ) - if provider == "openai_realtime" and not self._local_config.openai_key: + if ( + provider in ("openai_realtime", "openai_realtime_2") + and not self._local_config.openai_key + ): raise ValueError( "OpenAI Realtime mode requires an OpenAI API key. Pass " "engine=OpenAIRealtime(api_key='sk-...') or set OPENAI_API_KEY " @@ -1263,16 +1430,19 @@ def agent( self._guardrail_to_dict(g, index=i) for i, g in enumerate(guardrails) ] - # Default ``prewarm_first_message`` to True in pipeline mode (since - # 0.6.2). Greeting TTS pre-rendering during the ringing window - # collapses the 200-700 ms first-byte latency that dominated the - # first-turn p95 on every pipeline call. Realtime / ConvAI modes - # never consume the prewarm cache (the engine drives the first- - # message audio path itself), so the default stays False there to - # avoid silent TTS spend on un-answered rings. Parity with TS - # ``Patter.agent()`` factory (see ``client.ts``). + # ``prewarm_first_message`` is opt-in (default False) — reverted + # from 2026-05-18's default-on attempt after the 0.6.2 acceptance + # run surfaced a phantom-barge-in interaction: prewarm bursts + # audio at pickup, the very first inbound carrier frame triggered + # Silero VAD speech_start, the firstMessage was cancelled + # mid-playback and the user heard a clipped (graffiante) fragment. + # Until the root cause (anchoring the barge-in gate on + # first-mark-echo rather than ``first_audio_sent_at = begin_speaking + # time``) is fully addressed, default it off so most pipeline calls + # take the live-streaming path that the user is happy with. Opt in + # explicitly per agent when willing to pay the trade-off. if prewarm_first_message is None: - prewarm_first_message = provider == "pipeline" + prewarm_first_message = False return Agent( system_prompt=system_prompt, @@ -1307,7 +1477,16 @@ def _unpack_engine(engine: Any) -> tuple[str, dict]: """Convert an engine instance to ``(kind, {voice, model, api_key, agent_id})``.""" from getpatter.engines.elevenlabs import ConvAI as _ConvAI from getpatter.engines.openai import Realtime as _Realtime + from getpatter.engines.openai_realtime_2 import Realtime2 as _Realtime2 + if isinstance(engine, _Realtime2): + return "openai_realtime_2", { + "api_key": engine.api_key, + "voice": engine.voice, + "model": engine.model, + "reasoning_effort": engine.reasoning_effort, + "input_audio_transcription_model": engine.input_audio_transcription_model, + } if isinstance(engine, _Realtime): return "openai_realtime", { "api_key": engine.api_key, @@ -1323,8 +1502,8 @@ def _unpack_engine(engine: Any) -> tuple[str, dict]: "voice": engine.voice, } raise TypeError( - "engine= must be an OpenAIRealtime(...) or ElevenLabsConvAI(...) " - f"instance, got {type(engine).__name__}" + "engine= must be an OpenAIRealtime(...), OpenAIRealtime2(...), or " + f"ElevenLabsConvAI(...) instance, got {type(engine).__name__}" ) @staticmethod diff --git a/libraries/python/getpatter/dashboard/store.py b/libraries/python/getpatter/dashboard/store.py index 634f377c..61a2bc20 100644 --- a/libraries/python/getpatter/dashboard/store.py +++ b/libraries/python/getpatter/dashboard/store.py @@ -5,9 +5,12 @@ __all__ = ["MetricsStore", "MetricsStoreProtocol"] import asyncio +import json import threading import time from dataclasses import asdict +from datetime import datetime +from pathlib import Path from typing import Any, Protocol, runtime_checkable from getpatter.models import CallMetrics @@ -277,10 +280,36 @@ def record_call_end( existing = self._calls[idx] break + # Resolve the final transcript and turns. ``data["transcript"]`` + # from the SDK is the authoritative ``conversation_history`` + # snapshot at hang-up; when it's missing or empty (e.g. + # webhook-rejected inbound, Realtime adopted path where + # ``conversation.item.input_audio_transcription.completed`` raced + # a ``response.cancel`` and never fired, or the active record + # was already moved to ``self._calls`` by an earlier + # statusCallback), fall back to the running transcript / + # turns we accumulated on the active record via ``record_turn``. + # This keeps the live-transcript pane stable across the + # ``call_status (completed)`` → ``call_end`` gap, and matches + # the TS parity (``dashboard/store.ts`` resolvedTranscript / + # resolvedTurns). See dashboard BUG D. + data_transcript = data.get("transcript") or [] + resolved_transcript: list[Any] + if data_transcript: + resolved_transcript = list(data_transcript) + elif active is not None and active.get("transcript"): + resolved_transcript = list(active["transcript"]) + elif existing is not None and existing.get("transcript"): + resolved_transcript = list(existing["transcript"]) + else: + resolved_transcript = [] + source_for_turns = active or existing or {} + preserved_turns = list(source_for_turns.get("turns") or []) entry: dict[str, Any] = { "call_id": call_id, "ended_at": time.time(), - "transcript": data.get("transcript", []), + "transcript": resolved_transcript, + "turns": preserved_turns, } source = active or existing if source: @@ -498,6 +527,7 @@ def get_aggregates(self) -> dict[str, Any]: "telephony": 0.0, }, "active_calls": len(self._active_calls), + "sdk_version": _sdk_version(), } total_cost = 0.0 @@ -543,6 +573,7 @@ def get_aggregates(self) -> dict[str, Any]: "telephony": round(cost_tel, 6), }, "active_calls": len(self._active_calls), + "sdk_version": _sdk_version(), } def get_calls_in_range( @@ -663,6 +694,18 @@ def hydrate(self, log_root: str | None) -> int: meta_path, ) continue + # Backfill transcript from sibling ``transcript.jsonl`` + # when ``metadata.json`` doesn't carry the flat + # transcript array (CallLogger writes one turn per + # line; ``metadata.json`` only carries the aggregate + # count). Without this, hydrated past calls render + # with an empty transcript pane on click. Parity + # with TS ``loadTranscriptJsonl`` (store.ts:780). + if not record.get("transcript"): + jsonl_path = call_dir / "transcript.jsonl" + from_jsonl = _load_transcript_jsonl(jsonl_path) + if from_jsonl: + record["transcript"] = from_jsonl collected.append(record) seen.add(call_id) @@ -786,3 +829,81 @@ def _to_seconds(raw: Any) -> float | None: if ended is not None: record["ended_at"] = ended return record + + +def _sdk_version() -> str: + """Resolve the installed ``getpatter`` package version at runtime. + + Single source of truth: ``getpatter.__version__``. Surfaced via the + dashboard ``/api/dashboard/aggregates`` payload so the SPA top-bar + pill / footer always tracks the package version that's actually + serving the dashboard — no manual sync needed when bumping versions. + """ + try: + from getpatter import __version__ + + return str(__version__) + except Exception: + return "" + + +def _load_transcript_jsonl(file_path: Path) -> list[dict[str, Any]]: + """Reconstruct a flat ``[{role, text, timestamp}, ...]`` transcript + array from a per-call ``transcript.jsonl`` file written by + ``CallLogger.log_turn``. Parity with TS ``loadTranscriptJsonl`` + (libraries/typescript/src/dashboard/store.ts:780). + + Each JSONL line carries ``user_text`` / ``agent_text`` plus a + timestamp (``ts`` ISO-8601 or ``timestamp`` numeric seconds). Splits + the row into one or two entries so the dashboard's transcript pane + renders user + assistant turns interleaved. Filters the + ``[interrupted]`` placeholder agent text (cancelled barge-in turns). + """ + if not file_path.is_file(): + return [] + out: list[dict[str, Any]] = [] + try: + with open(file_path, encoding="utf-8") as fh: + for raw_line in fh: + line = raw_line.strip() + if not line: + continue + try: + row = json.loads(line) + except json.JSONDecodeError: + continue + if not isinstance(row, dict): + continue + ts_iso = row.get("ts") + ts_num = row.get("timestamp") + timestamp: float = 0.0 + if isinstance(ts_iso, str): + try: + timestamp = datetime.fromisoformat( + ts_iso.replace("Z", "+00:00") + ).timestamp() + except ValueError: + timestamp = 0.0 + if timestamp == 0.0 and isinstance(ts_num, (int, float)): + timestamp = float(ts_num) + user_text = row.get("user_text") or "" + agent_text = row.get("agent_text") or "" + if isinstance(user_text, str) and user_text: + out.append( + {"role": "user", "text": user_text, "timestamp": timestamp} + ) + if ( + isinstance(agent_text, str) + and agent_text + and agent_text != "[interrupted]" + ): + out.append( + { + "role": "assistant", + "text": agent_text, + "timestamp": timestamp, + } + ) + except OSError: + return out + return out diff --git a/libraries/python/getpatter/dashboard/ui.html b/libraries/python/getpatter/dashboard/ui.html index 50347d38..29a02214 100644 --- a/libraries/python/getpatter/dashboard/ui.html +++ b/libraries/python/getpatter/dashboard/ui.html @@ -15,7 +15,7 @@ href="https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet" /> - +`+s.stack}return{value:e,source:t,stack:l,digest:null}}function ts(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Us(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var $d=typeof WeakMap=="function"?WeakMap:Map;function Ja(e,t,n){n=be(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){cl||(cl=!0,Js=r),Us(e,t)},n}function qa(e,t,n){n=be(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var l=t.value;n.payload=function(){return r(l)},n.callback=function(){Us(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){Us(e,t),typeof r!="function"&&(yt===null?yt=new Set([this]):yt.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}function Hi(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new $d;var l=new Set;r.set(t,l)}else l=r.get(t),l===void 0&&(l=new Set,r.set(t,l));l.has(n)||(l.add(n),e=bd.bind(null,e,t,n),t.then(e,e))}function Bi(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Wi(e,t,n,r,l){return e.mode&1?(e.flags|=65536,e.lanes=l,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=be(-1,1),t.tag=2,vt(n,t,1))),n.lanes|=1),e)}var Vd=lt.ReactCurrentOwner,me=!1;function ue(e,t,n,r){t.child=e===null?Ea(t,null,n,r):pn(t,e.child,n,r)}function Qi(e,t,n,r,l){n=n.render;var s=t.ref;return un(t,l),r=Io(e,t,n,r,s,l),n=Ao(),e!==null&&!me?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,rt(e,t,l)):(B&&n&&Co(t),t.flags|=1,ue(e,t,r,l),t.child)}function Ki(e,t,n,r,l){if(e===null){var s=n.type;return typeof s=="function"&&!Ko(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,ba(e,t,s,r,l)):(e=Br(n.type,null,r,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&l)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:Gn,n(o,r)&&e.ref===t.ref)return rt(e,t,l)}return t.flags|=1,e=wt(s,r),e.ref=t.ref,e.return=t,t.child=e}function ba(e,t,n,r,l){if(e!==null){var s=e.memoizedProps;if(Gn(s,r)&&e.ref===t.ref)if(me=!1,t.pendingProps=r=s,(e.lanes&l)!==0)e.flags&131072&&(me=!0);else return t.lanes=e.lanes,rt(e,t,l)}return Hs(e,t,n,r,l)}function ec(e,t,n){var r=t.pendingProps,l=r.children,s=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},F(nn,we),we|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,F(nn,we),we|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=s!==null?s.baseLanes:n,F(nn,we),we|=r}else s!==null?(r=s.baseLanes|n,t.memoizedState=null):r=n,F(nn,we),we|=r;return ue(e,t,l,n),t.child}function tc(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Hs(e,t,n,r,l){var s=ye(n)?Dt:ie.current;return s=fn(t,s),un(t,l),n=Io(e,t,n,r,s,l),r=Ao(),e!==null&&!me?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,rt(e,t,l)):(B&&r&&Co(t),t.flags|=1,ue(e,t,n,l),t.child)}function Yi(e,t,n,r,l){if(ye(n)){var s=!0;el(t)}else s=!1;if(un(t,l),t.stateNode===null)Vr(e,t),Za(t,n,r),Vs(t,n,r,l),r=!0;else if(e===null){var o=t.stateNode,u=t.memoizedProps;o.props=u;var a=o.context,f=n.contextType;typeof f=="object"&&f!==null?f=Le(f):(f=ye(n)?Dt:ie.current,f=fn(t,f));var h=n.getDerivedStateFromProps,v=typeof h=="function"||typeof o.getSnapshotBeforeUpdate=="function";v||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(u!==r||a!==f)&&Ui(t,o,r,f),it=!1;var m=t.memoizedState;o.state=m,sl(t,r,o,l),a=t.memoizedState,u!==r||m!==a||ve.current||it?(typeof h=="function"&&($s(t,n,h,r),a=t.memoizedState),(u=it||Vi(t,n,u,r,m,a,f))?(v||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=a),o.props=r,o.state=a,o.context=f,r=u):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,La(e,t),u=t.memoizedProps,f=t.type===t.elementType?u:ze(t.type,u),o.props=f,v=t.pendingProps,m=o.context,a=n.contextType,typeof a=="object"&&a!==null?a=Le(a):(a=ye(n)?Dt:ie.current,a=fn(t,a));var x=n.getDerivedStateFromProps;(h=typeof x=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(u!==v||m!==a)&&Ui(t,o,r,a),it=!1,m=t.memoizedState,o.state=m,sl(t,r,o,l);var w=t.memoizedState;u!==v||m!==w||ve.current||it?(typeof x=="function"&&($s(t,n,x,r),w=t.memoizedState),(f=it||Vi(t,n,f,r,m,w,a)||!1)?(h||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,w,a),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,w,a)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=w),o.props=r,o.state=w,o.context=a,r=f):(typeof o.componentDidUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),r=!1)}return Bs(e,t,n,r,s,l)}function Bs(e,t,n,r,l,s){tc(e,t);var o=(t.flags&128)!==0;if(!r&&!o)return l&&zi(t,n,!1),rt(e,t,s);r=t.stateNode,Vd.current=t;var u=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=pn(t,e.child,null,s),t.child=pn(t,null,u,s)):ue(e,t,u,s),t.memoizedState=r.state,l&&zi(t,n,!0),t.child}function nc(e){var t=e.stateNode;t.pendingContext?Ti(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Ti(e,t.context,!1),To(e,t.containerInfo)}function Xi(e,t,n,r,l){return dn(),_o(l),t.flags|=256,ue(e,t,n,r),t.child}var Ws={dehydrated:null,treeContext:null,retryLane:0};function Qs(e){return{baseLanes:e,cachePool:null,transitions:null}}function rc(e,t,n){var r=t.pendingProps,l=Q.current,s=!1,o=(t.flags&128)!==0,u;if((u=o)||(u=e!==null&&e.memoizedState===null?!1:(l&2)!==0),u?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(l|=1),F(Q,l&1),e===null)return Os(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,s?(r=t.mode,s=t.child,o={mode:"hidden",children:o},!(r&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=El(o,r,0,null),e=Rt(e,r,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Qs(n),t.memoizedState=Ws,e):$o(t,o));if(l=e.memoizedState,l!==null&&(u=l.dehydrated,u!==null))return Ud(e,t,o,r,u,l,n);if(s){s=r.fallback,o=t.mode,l=e.child,u=l.sibling;var a={mode:"hidden",children:r.children};return!(o&1)&&t.child!==l?(r=t.child,r.childLanes=0,r.pendingProps=a,t.deletions=null):(r=wt(l,a),r.subtreeFlags=l.subtreeFlags&14680064),u!==null?s=wt(u,s):(s=Rt(s,o,n,null),s.flags|=2),s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,o=e.child.memoizedState,o=o===null?Qs(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=e.childLanes&~n,t.memoizedState=Ws,r}return s=e.child,e=s.sibling,r=wt(s,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function $o(e,t){return t=El({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function jr(e,t,n,r){return r!==null&&_o(r),pn(t,e.child,null,n),e=$o(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Ud(e,t,n,r,l,s,o){if(n)return t.flags&256?(t.flags&=-257,r=ts(Error(k(422))),jr(e,t,o,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=r.fallback,l=t.mode,r=El({mode:"visible",children:r.children},l,0,null),s=Rt(s,l,o,null),s.flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,t.mode&1&&pn(t,e.child,null,o),t.child.memoizedState=Qs(o),t.memoizedState=Ws,s);if(!(t.mode&1))return jr(e,t,o,null);if(l.data==="$!"){if(r=l.nextSibling&&l.nextSibling.dataset,r)var u=r.dgst;return r=u,s=Error(k(419)),r=ts(s,r,void 0),jr(e,t,o,r)}if(u=(o&e.childLanes)!==0,me||u){if(r=ee,r!==null){switch(o&-o){case 4:l=2;break;case 16:l=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:l=32;break;case 536870912:l=268435456;break;default:l=0}l=l&(r.suspendedLanes|o)?0:l,l!==0&&l!==s.retryLane&&(s.retryLane=l,nt(e,l),Fe(r,e,l,-1))}return Qo(),r=ts(Error(k(421))),jr(e,t,o,r)}return l.data==="$?"?(t.flags|=128,t.child=e.child,t=ep.bind(null,e),l._reactRetry=t,null):(e=s.treeContext,xe=mt(l.nextSibling),ke=t,B=!0,Ie=null,e!==null&&(_e[Ne++]=Je,_e[Ne++]=qe,_e[Ne++]=It,Je=e.id,qe=e.overflow,It=t),t=$o(t,r.children),t.flags|=4096,t)}function Gi(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Fs(e.return,t,n)}function ns(e,t,n,r,l){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:l}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=r,s.tail=n,s.tailMode=l)}function lc(e,t,n){var r=t.pendingProps,l=r.revealOrder,s=r.tail;if(ue(e,t,r.children,n),r=Q.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Gi(e,n,t);else if(e.tag===19)Gi(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(F(Q,r),!(t.mode&1))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;n!==null;)e=n.alternate,e!==null&&ol(e)===null&&(l=n),n=n.sibling;n=l,n===null?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),ns(t,!1,l,n,s);break;case"backwards":for(n=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&ol(e)===null){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}ns(t,!0,n,null,s);break;case"together":ns(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Vr(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function rt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ot|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(k(153));if(t.child!==null){for(e=t.child,n=wt(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=wt(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Hd(e,t,n){switch(t.tag){case 3:nc(t),dn();break;case 5:Pa(t);break;case 1:ye(t.type)&&el(t);break;case 4:To(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,l=t.memoizedProps.value;F(rl,r._currentValue),r._currentValue=l;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(F(Q,Q.current&1),t.flags|=128,null):n&t.child.childLanes?rc(e,t,n):(F(Q,Q.current&1),e=rt(e,t,n),e!==null?e.sibling:null);F(Q,Q.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return lc(e,t,n);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),F(Q,Q.current),r)break;return null;case 22:case 23:return t.lanes=0,ec(e,t,n)}return rt(e,t,n)}var sc,Ks,oc,ic;sc=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Ks=function(){};oc=function(e,t,n,r){var l=e.memoizedProps;if(l!==r){e=t.stateNode,Pt(We.current);var s=null;switch(n){case"input":l=hs(e,l),r=hs(e,r),s=[];break;case"select":l=Y({},l,{value:void 0}),r=Y({},r,{value:void 0}),s=[];break;case"textarea":l=ys(e,l),r=ys(e,r),s=[];break;default:typeof l.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=qr)}ws(n,r);var o;n=null;for(f in l)if(!r.hasOwnProperty(f)&&l.hasOwnProperty(f)&&l[f]!=null)if(f==="style"){var u=l[f];for(o in u)u.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else f!=="dangerouslySetInnerHTML"&&f!=="children"&&f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&f!=="autoFocus"&&(Hn.hasOwnProperty(f)?s||(s=[]):(s=s||[]).push(f,null));for(f in r){var a=r[f];if(u=l?.[f],r.hasOwnProperty(f)&&a!==u&&(a!=null||u!=null))if(f==="style")if(u){for(o in u)!u.hasOwnProperty(o)||a&&a.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in a)a.hasOwnProperty(o)&&u[o]!==a[o]&&(n||(n={}),n[o]=a[o])}else n||(s||(s=[]),s.push(f,n)),n=a;else f==="dangerouslySetInnerHTML"?(a=a?a.__html:void 0,u=u?u.__html:void 0,a!=null&&u!==a&&(s=s||[]).push(f,a)):f==="children"?typeof a!="string"&&typeof a!="number"||(s=s||[]).push(f,""+a):f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&(Hn.hasOwnProperty(f)?(a!=null&&f==="onScroll"&&$("scroll",e),s||u===a||(s=[])):(s=s||[]).push(f,a))}n&&(s=s||[]).push("style",n);var f=s;(t.updateQueue=f)&&(t.flags|=4)}};ic=function(e,t,n,r){n!==r&&(t.flags|=4)};function En(e,t){if(!B)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function se(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags&14680064,r|=l.flags&14680064,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags,r|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Bd(e,t,n){var r=t.pendingProps;switch(jo(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return se(t),null;case 1:return ye(t.type)&&br(),se(t),null;case 3:return r=t.stateNode,hn(),V(ve),V(ie),Ro(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Sr(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Ie!==null&&(eo(Ie),Ie=null))),Ks(e,t),se(t),null;case 5:zo(t);var l=Pt(er.current);if(n=t.type,e!==null&&t.stateNode!=null)oc(e,t,n,r,l),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(k(166));return se(t),null}if(e=Pt(We.current),Sr(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[He]=t,r[qn]=s,e=(t.mode&1)!==0,n){case"dialog":$("cancel",r),$("close",r);break;case"iframe":case"object":case"embed":$("load",r);break;case"video":case"audio":for(l=0;l<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[He]=t,e[qn]=r,sc(e,t,!1,!1),t.stateNode=e;e:{switch(o=xs(n,r),n){case"dialog":$("cancel",e),$("close",e),l=r;break;case"iframe":case"object":case"embed":$("load",e),l=r;break;case"video":case"audio":for(l=0;lvn&&(t.flags|=128,r=!0,En(s,!1),t.lanes=4194304)}else{if(!r)if(e=ol(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),En(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!B)return se(t),null}else 2*G()-s.renderingStartTime>vn&&n!==1073741824&&(t.flags|=128,r=!0,En(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(n=s.last,n!==null?n.sibling=o:t.child=o,s.last=o)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=G(),t.sibling=null,n=Q.current,F(Q,r?n&1|2:n&1),t):(se(t),null);case 22:case 23:return Wo(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?we&1073741824&&(se(t),t.subtreeFlags&6&&(t.flags|=8192)):se(t),null;case 24:return null;case 25:return null}throw Error(k(156,t.tag))}function Wd(e,t){switch(jo(t),t.tag){case 1:return ye(t.type)&&br(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return hn(),V(ve),V(ie),Ro(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return zo(t),null;case 13:if(V(Q),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(k(340));dn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return V(Q),null;case 4:return hn(),null;case 10:return Mo(t.type._context),null;case 22:case 23:return Wo(),null;case 24:return null;default:return null}}var _r=!1,oe=!1,Qd=typeof WeakSet=="function"?WeakSet:Set,E=null;function tn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){X(e,t,r)}else n.current=null}function Ys(e,t,n){try{n()}catch(r){X(e,t,r)}}var Zi=!1;function Kd(e,t){if(Ps=Gr,e=da(),So(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,u=-1,a=-1,f=0,h=0,v=e,m=null;t:for(;;){for(var x;v!==n||l!==0&&v.nodeType!==3||(u=o+l),v!==s||r!==0&&v.nodeType!==3||(a=o+r),v.nodeType===3&&(o+=v.nodeValue.length),(x=v.firstChild)!==null;)m=v,v=x;for(;;){if(v===e)break t;if(m===n&&++f===l&&(u=o),m===s&&++h===r&&(a=o),(x=v.nextSibling)!==null)break;v=m,m=v.parentNode}v=x}n=u===-1||a===-1?null:{start:u,end:a}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ts={focusedElem:e,selectionRange:n},Gr=!1,E=t;E!==null;)if(t=E,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,E=e;else for(;E!==null;){t=E;try{var w=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(w!==null){var S=w.memoizedProps,T=w.memoizedState,d=t.stateNode,c=d.getSnapshotBeforeUpdate(t.elementType===t.type?S:ze(t.type,S),T);d.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var p=t.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(k(163))}}catch(y){X(t,t.return,y)}if(e=t.sibling,e!==null){e.return=t.return,E=e;break}E=t.return}return w=Zi,Zi=!1,w}function $n(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var s=l.destroy;l.destroy=void 0,s!==void 0&&Ys(t,n,s)}l=l.next}while(l!==r)}}function _l(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Xs(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function uc(e){var t=e.alternate;t!==null&&(e.alternate=null,uc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[He],delete t[qn],delete t[Ds],delete t[Md],delete t[Ld])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function ac(e){return e.tag===5||e.tag===3||e.tag===4}function Ji(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||ac(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Gs(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=qr));else if(r!==4&&(e=e.child,e!==null))for(Gs(e,t,n),e=e.sibling;e!==null;)Gs(e,t,n),e=e.sibling}function Zs(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Zs(e,t,n),e=e.sibling;e!==null;)Zs(e,t,n),e=e.sibling}var te=null,Re=!1;function st(e,t,n){for(n=n.child;n!==null;)cc(e,t,n),n=n.sibling}function cc(e,t,n){if(Be&&typeof Be.onCommitFiberUnmount=="function")try{Be.onCommitFiberUnmount(yl,n)}catch{}switch(n.tag){case 5:oe||tn(n,t);case 6:var r=te,l=Re;te=null,st(e,t,n),te=r,Re=l,te!==null&&(Re?(e=te,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):te.removeChild(n.stateNode));break;case 18:te!==null&&(Re?(e=te,n=n.stateNode,e.nodeType===8?Gl(e.parentNode,n):e.nodeType===1&&Gl(e,n),Yn(e)):Gl(te,n.stateNode));break;case 4:r=te,l=Re,te=n.stateNode.containerInfo,Re=!0,st(e,t,n),te=r,Re=l;break;case 0:case 11:case 14:case 15:if(!oe&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var s=l,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&Ys(n,t,o),l=l.next}while(l!==r)}st(e,t,n);break;case 1:if(!oe&&(tn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(u){X(n,t,u)}st(e,t,n);break;case 21:st(e,t,n);break;case 22:n.mode&1?(oe=(r=oe)||n.memoizedState!==null,st(e,t,n),oe=r):st(e,t,n);break;default:st(e,t,n)}}function qi(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Qd),t.forEach(function(r){var l=tp.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function Te(e,t){var n=t.deletions;if(n!==null)for(var r=0;rl&&(l=o),r&=~s}if(r=l,r=G()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Xd(r/1960))-r,10e?16:e,ft===null)var r=!1;else{if(e=ft,ft=null,fl=0,A&6)throw Error(k(331));var l=A;for(A|=4,E=e.current;E!==null;){var s=E,o=s.child;if(E.flags&16){var u=s.deletions;if(u!==null){for(var a=0;aG()-Ho?zt(e,0):Uo|=n),ge(e,t)}function gc(e,t){t===0&&(e.mode&1?(t=vr,vr<<=1,!(vr&130023424)&&(vr=4194304)):t=1);var n=ce();e=nt(e,t),e!==null&&(or(e,t,n),ge(e,n))}function ep(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),gc(e,n)}function tp(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(k(314))}r!==null&&r.delete(t),gc(e,n)}var wc;wc=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||ve.current)me=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return me=!1,Hd(e,t,n);me=!!(e.flags&131072)}else me=!1,B&&t.flags&1048576&&Ca(t,nl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Vr(e,t),e=t.pendingProps;var l=fn(t,ie.current);un(t,n),l=Io(null,t,r,e,l,n);var s=Ao();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,ye(r)?(s=!0,el(t)):s=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,Po(t),l.updater=jl,t.stateNode=l,l._reactInternals=t,Vs(t,r,e,n),t=Bs(null,t,r,!0,s,n)):(t.tag=0,B&&s&&Co(t),ue(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Vr(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=rp(r),e=ze(r,e),l){case 0:t=Hs(null,t,r,e,n);break e;case 1:t=Yi(null,t,r,e,n);break e;case 11:t=Qi(null,t,r,e,n);break e;case 14:t=Ki(null,t,r,ze(r.type,e),n);break e}throw Error(k(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Hs(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Yi(e,t,r,l,n);case 3:e:{if(nc(t),e===null)throw Error(k(387));r=t.pendingProps,s=t.memoizedState,l=s.element,La(e,t),sl(t,r,null,n);var o=t.memoizedState;if(r=o.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){l=mn(Error(k(423)),t),t=Xi(e,t,r,n,l);break e}else if(r!==l){l=mn(Error(k(424)),t),t=Xi(e,t,r,n,l);break e}else for(xe=mt(t.stateNode.containerInfo.firstChild),ke=t,B=!0,Ie=null,n=Ea(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(dn(),r===l){t=rt(e,t,n);break e}ue(e,t,r,n)}t=t.child}return t;case 5:return Pa(t),e===null&&Os(t),r=t.type,l=t.pendingProps,s=e!==null?e.memoizedProps:null,o=l.children,zs(r,l)?o=null:s!==null&&zs(r,s)&&(t.flags|=32),tc(e,t),ue(e,t,o,n),t.child;case 6:return e===null&&Os(t),null;case 13:return rc(e,t,n);case 4:return To(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=pn(t,null,r,n):ue(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Qi(e,t,r,l,n);case 7:return ue(e,t,t.pendingProps,n),t.child;case 8:return ue(e,t,t.pendingProps.children,n),t.child;case 12:return ue(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,s=t.memoizedProps,o=l.value,F(rl,r._currentValue),r._currentValue=o,s!==null)if($e(s.value,o)){if(s.children===l.children&&!ve.current){t=rt(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var u=s.dependencies;if(u!==null){o=s.child;for(var a=u.firstContext;a!==null;){if(a.context===r){if(s.tag===1){a=be(-1,n&-n),a.tag=2;var f=s.updateQueue;if(f!==null){f=f.shared;var h=f.pending;h===null?a.next=a:(a.next=h.next,h.next=a),f.pending=a}}s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),Fs(s.return,n,t),u.lanes|=n;break}a=a.next}}else if(s.tag===10)o=s.type===t.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(k(341));o.lanes|=n,u=o.alternate,u!==null&&(u.lanes|=n),Fs(o,n,t),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}ue(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,un(t,n),l=Le(l),r=r(l),t.flags|=1,ue(e,t,r,n),t.child;case 14:return r=t.type,l=ze(r,t.pendingProps),l=ze(r.type,l),Ki(e,t,r,l,n);case 15:return ba(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Vr(e,t),t.tag=1,ye(r)?(e=!0,el(t)):e=!1,un(t,n),Za(t,r,l),Vs(t,r,l,n),Bs(null,t,r,!0,e,n);case 19:return lc(e,t,n);case 22:return ec(e,t,n)}throw Error(k(156,t.tag))};function xc(e,t){return Yu(e,t)}function np(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ee(e,t,n,r){return new np(e,t,n,r)}function Ko(e){return e=e.prototype,!(!e||!e.isReactComponent)}function rp(e){if(typeof e=="function")return Ko(e)?1:0;if(e!=null){if(e=e.$$typeof,e===co)return 11;if(e===fo)return 14}return 2}function wt(e,t){var n=e.alternate;return n===null?(n=Ee(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Br(e,t,n,r,l,s){var o=2;if(r=e,typeof e=="function")Ko(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case Kt:return Rt(n.children,l,s,t);case ao:o=8,l|=8;break;case cs:return e=Ee(12,n,t,l|2),e.elementType=cs,e.lanes=s,e;case fs:return e=Ee(13,n,t,l),e.elementType=fs,e.lanes=s,e;case ds:return e=Ee(19,n,t,l),e.elementType=ds,e.lanes=s,e;case Pu:return El(n,l,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Mu:o=10;break e;case Lu:o=9;break e;case co:o=11;break e;case fo:o=14;break e;case ot:o=16,r=null;break e}throw Error(k(130,e==null?e:typeof e,""))}return t=Ee(o,n,t,l),t.elementType=e,t.type=r,t.lanes=s,t}function Rt(e,t,n,r){return e=Ee(7,e,r,t),e.lanes=n,e}function El(e,t,n,r){return e=Ee(22,e,r,t),e.elementType=Pu,e.lanes=n,e.stateNode={isHidden:!1},e}function rs(e,t,n){return e=Ee(6,e,null,t),e.lanes=n,e}function ls(e,t,n){return t=Ee(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function lp(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Fl(0),this.expirationTimes=Fl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Fl(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Yo(e,t,n,r,l,s,o,u,a){return e=new lp(e,t,n,u,a),t===1?(t=1,s===!0&&(t|=8)):t=0,s=Ee(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Po(s),e}function sp(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(jc)}catch(e){console.error(e)}}jc(),ju.exports=Ce;var cp=ju.exports,ou=cp;us.createRoot=ou.createRoot,us.hydrateRoot=ou.hydrateRoot;function fp({strokeWidth:e=60,...t}){return i.jsx("svg",{viewBox:"0 0 1188 1773",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",...t,children:i.jsx("path",{d:"M25 561L245 694M25 561V818M245 694V951M25 961V1218M25 1357V1614M245 1489V1747M245 1093V1351M942 823V1080M1161 955V1213M1162 555V812M942 422V679M669 585V843L787 913M942 25V282M1162 158V415M25 818L245 951M244 1094L464 962M25 961L143 890M244 1352L464 1219M942 823L1162 956M942 679L1162 812M721 811L942 679M669 842L724 809M669 586L724 553M1041 883L1162 812M245 1747L1161 1213M244 1490L942 1080M25 1357L142 1289M518 1071L942 823M721 555L942 422M942 422L1162 556M942 282L1162 415M942 25L1162 158M942 1080L1161 1213M25 1218L245 1351M25 961L245 1094M464 962L519 929M464 1219L519 1186V928L403 859M25 1357L245 1490M25 1614L245 1747M25 561L942 25M244 694L941 282M1043 484L1162 415M245 951L668 704",stroke:"currentColor",strokeWidth:e,strokeLinecap:"round"})})}function dp(e){return i.jsxs("svg",{viewBox:"269 80 364 110",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-label":"Patter",...e,children:[i.jsx("path",{d:"M271.422 182.689V85.9524H317.517C324.705 85.9524 330.86 87.2064 335.982 89.7143C341.193 92.2223 345.192 95.7156 347.977 100.194C350.852 104.673 352.29 109.913 352.29 115.914C352.29 121.915 350.852 127.2 347.977 131.768C345.102 136.336 341.058 139.919 335.847 142.516C330.725 145.024 324.615 146.278 317.517 146.278H287.866V130.424H316.439C321.201 130.424 324.885 129.125 327.491 126.528C330.186 123.841 331.534 120.348 331.534 116.048C331.534 111.749 330.186 108.3 327.491 105.703C324.885 103.105 321.201 101.806 316.439 101.806H292.178V182.689H271.422Z",fill:"currentColor"}),i.jsx("path",{d:"M395.375 182.689C394.836 180.718 394.432 178.613 394.162 176.374C393.982 174.135 393.893 171.537 393.893 168.581H393.353V136.202C393.353 133.425 392.41 131.275 390.523 129.752C388.726 128.14 386.03 127.334 382.436 127.334C379.022 127.334 376.281 127.916 374.215 129.081C372.238 130.245 370.935 131.947 370.306 134.186H351.033C351.931 128.006 355.121 122.9 360.602 118.87C366.083 114.839 373.586 112.824 383.11 112.824C392.994 112.824 400.542 115.018 405.753 119.407C410.965 123.796 413.57 130.111 413.57 138.351V168.581C413.57 170.821 413.705 173.105 413.975 175.434C414.334 177.673 414.873 180.091 415.592 182.689H395.375ZM371.384 184.032C364.556 184.032 359.12 182.33 355.076 178.927C351.033 175.434 349.011 170.821 349.011 165.088C349.011 158.729 351.392 153.623 356.154 149.772C361.006 145.83 367.745 143.278 376.371 142.113L396.453 139.292V150.981L379.741 153.533C376.147 154.071 373.496 155.056 371.789 156.489C370.082 157.922 369.228 159.893 369.228 162.401C369.228 164.64 370.037 166.342 371.654 167.507C373.271 168.671 375.428 169.253 378.123 169.253C382.347 169.253 385.941 168.134 388.906 165.894C391.871 163.565 393.353 160.878 393.353 157.833L395.24 168.581C393.264 173.687 390.254 177.538 386.21 180.136C382.167 182.734 377.225 184.032 371.384 184.032Z",fill:"currentColor"}),i.jsx("path",{d:"M450.248 184.167C441.443 184.167 434.883 182.062 430.57 177.852C426.347 173.553 424.236 167.059 424.236 158.37V98.8506L444.453 91.3266V159.042C444.453 162.087 445.306 164.372 447.014 165.894C448.721 167.417 451.371 168.178 454.966 168.178C456.313 168.178 457.571 168.044 458.739 167.775C459.907 167.507 461.075 167.193 462.244 166.835V182.151C461.075 182.778 459.413 183.271 457.257 183.629C455.19 183.988 452.854 184.167 450.248 184.167ZM411.432 129.484V114.167H462.244V129.484H411.432Z",fill:"currentColor"}),i.jsx("path",{d:"M500.501 184.167C491.695 184.167 485.136 182.062 480.823 177.852C476.6 173.553 474.489 167.059 474.489 158.37V98.8506L494.705 91.3266V159.042C494.705 162.087 495.559 164.372 497.266 165.894C498.973 167.417 501.624 168.178 505.218 168.178C506.566 168.178 507.824 168.044 508.992 167.775C510.16 167.507 511.328 167.193 512.496 166.835V182.151C511.328 182.778 509.666 183.271 507.509 183.629C505.443 183.988 503.107 184.167 500.501 184.167ZM461.684 129.484V114.167H512.496V129.484H461.684Z",fill:"currentColor"}),i.jsx("path",{d:"M547.852 184.032C540.214 184.032 533.565 182.554 527.904 179.599C522.244 176.553 517.841 172.343 514.696 166.969C511.641 161.595 510.113 155.414 510.113 148.428C510.113 141.352 511.641 135.171 514.696 129.887C517.841 124.513 522.199 120.348 527.769 117.392C533.34 114.346 539.81 112.824 547.178 112.824C554.276 112.824 560.431 114.257 565.642 117.123C570.854 119.989 574.897 123.975 577.773 129.081C580.648 134.186 582.086 140.187 582.086 147.084C582.086 148.518 582.041 149.861 581.951 151.115C581.861 152.279 581.726 153.399 581.546 154.474H521.974V141.173H565.238L561.734 143.591C561.734 138.038 560.386 133.962 557.69 131.365C555.085 128.678 551.491 127.334 546.908 127.334C541.607 127.334 537.474 129.125 534.508 132.708C531.633 136.291 530.196 141.665 530.196 148.831C530.196 155.818 531.633 161.013 534.508 164.416C537.474 167.82 541.876 169.522 547.717 169.522C550.952 169.522 553.737 168.984 556.073 167.91C558.409 166.835 560.161 165.088 561.33 162.67H580.333C578.087 169.298 574.223 174.538 568.742 178.389C563.351 182.151 556.388 184.032 547.852 184.032Z",fill:"currentColor"}),i.jsx("path",{d:"M586.158 182.689V114.167H605.971V130.29H606.375V182.689H586.158ZM606.375 146.95L604.623 130.693C606.24 124.871 608.891 120.437 612.575 117.392C616.259 114.346 620.842 112.824 626.323 112.824C628.03 112.824 629.288 113.003 630.096 113.361V132.171C629.647 131.992 629.018 131.902 628.21 131.902C627.401 131.813 626.412 131.768 625.244 131.768C618.775 131.768 614.013 132.932 610.958 135.261C607.903 137.5 606.375 141.397 606.375 146.95Z",fill:"currentColor"})]})}function pp(){return i.jsxs("span",{className:"patter-logo",style:{display:"inline-flex",alignItems:"center",gap:8},"aria-label":"Patter",children:[i.jsx(fp,{height:26}),i.jsx(dp,{height:24})]})}function hl(e){const t=Math.floor(e/60),n=Math.floor(e%60);return`${String(t).padStart(2,"0")}:${String(n).padStart(2,"0")}`}function ml(e,t=!0){if(!e)return"";if(t)return e.startsWith("***")?"•••"+e.slice(3):e;if(e.startsWith("***"))return"•••"+e.slice(3);if(e.startsWith("sha256:"))return"••••••••";const n=e.replace(/\D/g,"");return n.length>=4?"•••"+n.slice(-4):"••••••••"}function De(e){if(e==null||!Number.isFinite(e))return"$0.00";const t=Math.abs(e);return t===0?"$0.00":t>=.01?`$${e.toFixed(2)}`:t>=.001?`$${e.toFixed(3)}`:t>=1e-4?`$${e.toFixed(4)}`:`$${e.toFixed(5)}`}function hp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("circle",{cx:"11",cy:"11",r:"7"}),i.jsx("path",{d:"m21 21-4.3-4.3"})]})}function _c(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M7 13l5 5 5-5"}),i.jsx("path",{d:"M12 4v14"})]})}function mp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M17 11l-5-5-5 5"}),i.jsx("path",{d:"M12 20V6"})]})}function vp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z"}),i.jsx("circle",{cx:"12",cy:"12",r:"3"})]})}function yp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M17.94 17.94A10.94 10.94 0 0 1 12 19c-6.5 0-10-7-10-7a18.5 18.5 0 0 1 5.06-5.94"}),i.jsx("path",{d:"M9.9 4.24A10.6 10.6 0 0 1 12 4c6.5 0 10 7 10 7a18.8 18.8 0 0 1-2.16 3.19"}),i.jsx("path",{d:"M14.12 14.12a3 3 0 1 1-4.24-4.24"}),i.jsx("path",{d:"M1 1l22 22"})]})}function gp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("circle",{cx:"12",cy:"12",r:"4"}),i.jsx("path",{d:"M12 2v2"}),i.jsx("path",{d:"M12 20v2"}),i.jsx("path",{d:"M4.93 4.93l1.41 1.41"}),i.jsx("path",{d:"M17.66 17.66l1.41 1.41"}),i.jsx("path",{d:"M2 12h2"}),i.jsx("path",{d:"M20 12h2"}),i.jsx("path",{d:"M4.93 19.07l1.41-1.41"}),i.jsx("path",{d:"M17.66 6.34l1.41-1.41"})]})}function wp(e){return i.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:i.jsx("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})})}function iu(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M3 6h18"}),i.jsx("path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}),i.jsx("path",{d:"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"}),i.jsx("path",{d:"M10 11v6"}),i.jsx("path",{d:"M14 11v6"})]})}function xp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M18 6L6 18"}),i.jsx("path",{d:"M6 6l12 12"})]})}function Nc(e){return i.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round",...e,children:i.jsx("path",{d:"M20 6 9 17l-5-5"})})}function kp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("rect",{x:"9",y:"2",width:"6",height:"12",rx:"3"}),i.jsx("path",{d:"M19 10a7 7 0 0 1-14 0"}),i.jsx("path",{d:"M12 19v3"})]})}function Sp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("polyline",{points:"15 17 20 12 15 7"}),i.jsx("path",{d:"M4 18v-2a4 4 0 0 1 4-4h12"})]})}function Cp(e){return i.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",...e,children:i.jsx("circle",{cx:"12",cy:"12",r:"6"})})}function jp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.42 19.42 0 0 1-3.33-2.67"}),i.jsx("path",{d:"M22 2 2 22"})]})}function _p({liveCount:e,todayCount:t,phoneNumber:n,sdkVersion:r,revealed:l,dark:s,onToggleRevealed:o,onToggleDark:u}){const a=ml(n,l);return i.jsxs("header",{className:"top",children:[i.jsxs("div",{className:"brand",children:[i.jsx(pp,{}),i.jsxs("span",{className:"tag",children:["dashboard · v",r]})]}),i.jsxs("div",{className:"top-r",children:[i.jsxs("span",{className:"live-chip",children:[i.jsx("span",{className:"pulse"+(e>0?" active":"")}),e," live · ",t," today"]}),n&&n!=="—"&&i.jsx("span",{className:"num-chip",children:a}),i.jsx("button",{type:"button",className:"icon-btn toggle"+(l?" on":""),onClick:o,"aria-label":l?"Hide phone numbers":"Reveal phone numbers","aria-pressed":l,title:l?"Hide numbers":"Reveal numbers",children:l?i.jsx(vp,{}):i.jsx(yp,{})}),i.jsx("button",{type:"button",className:"icon-btn toggle"+(s?" on":""),onClick:u,"aria-label":s?"Switch to light theme":"Switch to dark theme","aria-pressed":s,title:s?"Light mode":"Dark mode",children:s?i.jsx(gp,{}):i.jsx(wp,{})})]})]})}const Np=["1h","24h","7d","All"];function Ep(){const e=document.createElement("a");e.href="/api/dashboard/export/calls?format=csv",e.download="patter_calls.csv",e.rel="noopener",document.body.appendChild(e),e.click(),document.body.removeChild(e)}function Mp({range:e,setRange:t}){return i.jsxs("div",{className:"ph",children:[i.jsxs("div",{children:[i.jsx("h1",{children:"Calls"}),i.jsxs("p",{className:"sub",children:["Real-time view of every call routed through this Patter instance."," ",i.jsx("span",{className:"kbd",children:"⇧K"})," to focus search."]})]}),i.jsxs("div",{className:"filters",children:[i.jsx("div",{className:"seg",children:Np.map(n=>i.jsx("button",{type:"button",className:e===n?"on":"",onClick:()=>t(n),children:n},n))}),i.jsxs("button",{className:"btn",type:"button",onClick:Ep,children:[i.jsx(_c,{})," Export CSV"]})]})]})}const Ec=60*60*1e3,Lp=24*Ec;function Mr(e){return new Date(e).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function Pp(e){return new Date(e).toLocaleDateString([],{weekday:"short",month:"short",day:"numeric"})}function uu(e){return new Date(e).toLocaleString([],{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function Mc(e){const t=e.toMs-e.fromMs;return t>=Lp-Tp?Pp(e.fromMs):t>=Ec?`${Mr(e.fromMs)} → ${Mr(e.toMs)}`:t>=60*1e3?`${Mr(e.fromMs)} → ${Mr(e.toMs)}`:`${uu(e.fromMs)} → ${uu(e.toMs)}`}const Tp=5e3;function Lc(e){return e.cost.total??(e.cost.telco??0)+(e.cost.llm??0)+(e.cost.sttTts??0)}function zp(e){return e.calls.length===0?void 0:[...e.calls].sort((n,r)=>(r.startedAtMs??0)-(n.startedAtMs??0))[0]?.id}function Rp(e,t){const n=e.calls,r=n.length;if(t==="spend"){const l=n.reduce((s,o)=>s+Lc(o),0);return{label:"TOTAL COST",value:De(l)}}if(t==="latency"){const l=n.filter(o=>typeof o.latencyP95=="number");return{label:"AVG LATENCY",value:`${l.length>0?Math.round(l.reduce((o,u)=>o+(u.latencyP95??0),0)/l.length):0} ms`}}return{label:r===1?"CALL":"CALLS",value:`${r}`}}function Dp({bucket:e,kind:t}){const n=Mc(e),r=e.calls.length;if(r===0)return i.jsxs("div",{className:"spark-tooltip",children:[i.jsx("div",{className:"spark-tooltip-range",children:n}),i.jsx("div",{className:"spark-tooltip-empty",children:"no calls"})]});const l=Rp(e,t),s=e.calls.slice(0,4);return i.jsxs("div",{className:"spark-tooltip",children:[i.jsx("div",{className:"spark-tooltip-range",children:n}),i.jsxs("div",{className:"spark-tooltip-headline",children:[i.jsx("span",{className:"spark-tooltip-headline-l",children:l.label}),i.jsx("span",{className:"spark-tooltip-headline-v",children:l.value})]}),i.jsx("ul",{className:"spark-tooltip-list",children:s.map(o=>{const u=o.direction==="inbound"?o.from:o.to;return i.jsxs("li",{children:[i.jsx("span",{className:"num",children:u}),i.jsx("span",{className:"status",children:o.status}),i.jsx("span",{className:"cost",children:De(Lc(o))})]},o.id)})}),r>s.length&&i.jsxs("div",{className:"spark-tooltip-more",children:["+",r-s.length," more"]})]})}function Ip({bucket:e,height:t,interactive:n,kind:r,onSelect:l}){const[s,o]=M.useState(!1),u=!!e&&e.calls.length>0;return!n||!e?i.jsx("span",{className:"spark-bar-static",style:{height:t+"%"}}):i.jsxs("div",{className:"spark-bar-wrap",onMouseEnter:()=>o(!0),onMouseLeave:()=>o(!1),children:[i.jsx("button",{type:"button",className:"spark-bar"+(u?"":" empty"),style:{height:t+"%"},disabled:!u,onClick:()=>{if(!u)return;const a=zp(e);a&&l&&l(a)},onFocus:()=>o(!0),onBlur:()=>o(!1),"aria-label":`${e.calls.length} calls in ${Mc(e)}`}),s&&i.jsx(Dp,{bucket:e,kind:r})]})}function Lr({label:e,value:t,unit:n,delta:r,deltaTone:l,spark:s,buckets:o,onSelectCall:u,kind:a="count",peach:f,footer:h,badge:v}){const m=!!o&&!!u;return i.jsxs("div",{className:"metric"+(f?" peach":""),children:[i.jsxs("div",{className:"lbl",children:[i.jsx("span",{children:e}),v&&i.jsx("span",{className:"badge-now",children:"LIVE"})]}),i.jsxs("div",{className:"val",children:[t,n&&i.jsxs("span",{className:"unit",children:[" ",n]})]}),r&&i.jsx("div",{className:"delta "+(l||""),children:r}),h&&i.jsx("div",{className:"delta",children:h}),i.jsx("div",{className:"spark",children:s.map((x,w)=>i.jsx(Ip,{bucket:o?.[w],height:x,interactive:m,kind:a,onSelect:u},w))})]})}function Ap({call:e,isSelected:t,onSelect:n,isNew:r,isChecked:l,onToggleCheck:s,revealed:o}){const u=e.status==="live"&&e.durationStart?hl((Date.now()-e.durationStart)/1e3):hl(e.duration||0),a=e.latencyP95?Math.min(100,e.latencyP95/1e3*100):0,f=(e.latencyP95??0)>600,h=e.cost.total??(e.cost.telco??0)+(e.cost.llm??0)+(e.cost.sttTts??0),v=e.status.replace("-","");return i.jsxs("tr",{className:(t?"selected ":"")+(r?"new-row ":"")+(l?"checked":""),onClick:n,children:[i.jsx("td",{className:"check-cell",onClick:m=>{m.stopPropagation(),s&&s(m)},"aria-disabled":s===null,children:i.jsx("button",{type:"button",className:"row-check"+(l?" on":"")+(s===null?" disabled":""),"aria-label":s===null?"Live calls cannot be deleted":l?"Deselect call":"Select call","aria-pressed":l,disabled:s===null,onClick:m=>{m.stopPropagation(),s&&s(m)},tabIndex:s===null?-1:0,children:l?i.jsx(Nc,{}):null})}),i.jsx("td",{children:i.jsx("span",{className:"pill "+v,children:e.status})}),i.jsxs("td",{children:[i.jsx("span",{className:"dir in",style:{marginRight:8,color:e.direction==="inbound"?"#3b6f3b":"#4a4a4a"},children:e.direction==="inbound"?i.jsx(_c,{}):i.jsx(mp,{})}),i.jsxs("span",{className:"num-cell pii",children:[ml(e.from,o)," → ",ml(e.to,o)]})]}),i.jsx("td",{children:i.jsxs("span",{className:"car-tw",children:[i.jsx("span",{className:"car-dot "+(e.carrier==="twilio"?"tw":"tx")}),e.carrier==="twilio"?"Twilio":"Telnyx"]})}),i.jsx("td",{className:"num-cell",children:e.status==="no-answer"?"—":u}),i.jsx("td",{children:e.latencyP95?i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"lat-bar"+(f?" warn":""),children:i.jsx("i",{style:{width:a+"%"}})}),i.jsxs("span",{className:"num-cell",children:[e.latencyP95," ms"]})]}):"—"}),i.jsx("td",{className:"num-cell",children:De(h)})]})}function Op({calls:e,selectedId:t,onSelect:n,newId:r,search:l,setSearch:s,onDeleteCalls:o,revealed:u}){const a=M.useMemo(()=>{if(!l.trim())return e;const g=l.toLowerCase();return e.filter(j=>j.from.toLowerCase().includes(g)||j.to.toLowerCase().includes(g)||j.status.includes(g)||j.carrier.includes(g)||j.id.includes(g))},[e,l]),[f,h]=M.useState(new Set),[v,m]=M.useState(!1),[x,w]=M.useState(!1),S=M.useMemo(()=>a.filter(g=>g.status!=="live").map(g=>g.id),[a]),T=M.useMemo(()=>S.filter(g=>f.has(g)),[S,f]),d=S.length>0&&T.length===S.length,c=T.length>0,p=g=>{h(j=>{const D=new Set(j);return D.has(g)?D.delete(g):D.add(g),D})},y=()=>{h(g=>{const j=new Set(g);if(d)for(const D of S)j.delete(D);else for(const D of S)j.add(D);return j})},_=()=>{h(new Set),m(!1)},C=async()=>{if(!(!o||T.length===0||x)){w(!0);try{await o(T),_()}finally{w(!1)}}};return i.jsxs("div",{className:"panel",children:[i.jsxs("div",{className:"panel-h",children:[i.jsxs("h3",{children:["Recent calls"," ",i.jsxs("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,color:"#aaa",fontWeight:500,marginLeft:4},children:["(",a.length,")"]})]}),i.jsxs("div",{className:"search",children:[i.jsx(hp,{}),i.jsx("input",{placeholder:"Search number, status, carrier…",value:l,onChange:g=>s(g.target.value)})]}),i.jsxs("span",{className:"sse",children:[i.jsx("span",{className:"dot"}),"streaming · SSE"]})]}),c?i.jsxs("div",{className:"bulk-bar"+(v?" confirming":""),role:"region","aria-label":"Bulk actions",children:[i.jsxs("span",{className:"bulk-count",children:[i.jsx("span",{className:"bulk-num",children:T.length}),i.jsx("span",{className:"bulk-lbl",children:T.length===1?"call selected":"calls selected"})]}),i.jsx("div",{className:"bulk-spacer"}),v?i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"bulk-warn",children:"Removes from view + metrics. Logs kept on disk."}),i.jsx("button",{type:"button",className:"bulk-btn ghost",onClick:()=>m(!1),disabled:x,children:"Cancel"}),i.jsxs("button",{type:"button",className:"bulk-btn destructive",onClick:()=>void C(),disabled:x,autoFocus:!0,children:[i.jsx(iu,{}),i.jsx("span",{children:x?"Deleting…":`Delete ${T.length}`})]})]}):i.jsxs(i.Fragment,{children:[i.jsxs("button",{type:"button",className:"bulk-btn ghost",onClick:_,"aria-label":"Clear selection",children:[i.jsx(xp,{}),i.jsx("span",{children:"Clear"})]}),i.jsxs("button",{type:"button",className:"bulk-btn destructive",onClick:()=>m(!0),children:[i.jsx(iu,{}),i.jsx("span",{children:"Delete"})]})]})]}):null,i.jsx("div",{style:{minHeight:540,maxHeight:540,overflow:"auto"},children:i.jsxs("table",{className:"call-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:"check-cell",children:i.jsx("button",{type:"button",className:"row-check head"+(d?" on":c?" indet":"")+(S.length===0?" disabled":""),onClick:y,disabled:S.length===0,"aria-label":d?"Deselect all":"Select all calls in view","aria-pressed":d,children:d?i.jsx(Nc,{}):c?i.jsx("span",{className:"indet-mark"}):null})}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"From → To"}),i.jsx("th",{children:"Carrier"}),i.jsx("th",{children:"Duration"}),i.jsx("th",{children:"p95 latency"}),i.jsx("th",{children:"Cost"})]})}),i.jsx("tbody",{children:a.length===0?i.jsx("tr",{children:i.jsxs("td",{colSpan:7,className:"empty",children:['No calls match "',l,'"']})}):a.map(g=>i.jsx(Ap,{call:g,isSelected:g.id===t,onSelect:()=>n(g.id),isNew:g.id===r,isChecked:f.has(g.id),onToggleCheck:g.status==="live"?null:()=>p(g.id),revealed:u},g.id))})]})})]})}function Fp({start:e}){const[,t]=M.useState(0);return M.useEffect(()=>{const n=setInterval(()=>t(r=>r+1),1e3);return()=>clearInterval(n)},[]),i.jsx(i.Fragment,{children:hl((Date.now()-e)/1e3)})}function $p({call:e,transcript:t,onEnd:n,recording:r,setRecording:l,muted:s,setMuted:o,revealed:u}){const a=M.useRef(null);if(M.useEffect(()=>{a.current&&(a.current.scrollTop=a.current.scrollHeight)},[t]),!e)return i.jsxs("div",{className:"rr-card",children:[i.jsx("h3",{children:"No live call selected"}),i.jsx("div",{className:"meta",children:"Select a call from the table — or wait for the next ring."})]});const f=e.status==="live";return i.jsxs("div",{className:"rr-card",children:[i.jsxs("h3",{children:["Live call",i.jsx("span",{className:"pill "+(f?"live":"done"),children:e.status})]}),i.jsxs("div",{className:"meta",children:[i.jsx("strong",{className:"pii",children:ml(e.direction==="inbound"?e.from:e.to,u)}),i.jsx("span",{className:"sep",children:"·"}),e.agent]}),i.jsxs("div",{className:"duration-block",children:[i.jsx("span",{className:"l",children:"duration"}),i.jsxs("span",{className:"agent",children:[e.direction==="inbound"?"inbound":"outbound"," ·"," ",e.carrier==="twilio"?"Twilio":"Telnyx"]}),i.jsx("span",{className:"v",children:f&&e.durationStart?i.jsx(Fp,{start:e.durationStart}):hl(e.duration||0)})]}),i.jsx("div",{className:"transcript",ref:a,children:t.map((h,v)=>h.who==="tool"?i.jsxs("div",{className:"turn tool",children:[i.jsx("div",{className:"av",children:"⚙"}),i.jsxs("div",{className:"body",children:[i.jsxs("div",{className:"who",children:["tool · ",h.txt]}),h.args&&i.jsx("div",{className:"tool-call",children:Object.entries(h.args).map(([m,x])=>i.jsxs("span",{children:[i.jsxs("span",{className:"k",children:[m,":"]}),' "',String(x),'"'," "]},m))})]})]},v):i.jsxs("div",{className:"turn "+h.who,children:[i.jsx("div",{className:"av",children:h.who==="user"?"U":"P"}),i.jsxs("div",{className:"body",children:[i.jsxs("div",{className:"who",children:[h.who==="user"?"caller":"agent",h.typing&&" · typing"]}),i.jsx("div",{className:"txt",children:h.typing?i.jsxs("span",{className:"typing",children:[i.jsx("span",{}),i.jsx("span",{}),i.jsx("span",{})]}):h.txt}),h.lat&&!h.typing&&i.jsxs("div",{className:"lat",children:[h.lat.stt&&`stt ${h.lat.stt} ms`,h.lat.total&&`total ${h.lat.total} ms · llm ${h.lat.llm} · tts ${h.lat.tts}`]})]})]},v))}),f&&i.jsxs("div",{className:"controls",children:[i.jsxs("button",{type:"button",className:"ctrl"+(s?" active":""),onClick:()=>o(!s),children:[i.jsx(kp,{})," ",s?"unmute":"mute"]}),i.jsxs("button",{type:"button",className:"ctrl",children:[i.jsx(Sp,{})," transfer"]}),i.jsxs("button",{type:"button",className:"ctrl"+(r?" active":""),onClick:()=>l(!r),children:[i.jsx(Cp,{})," ",r?"stop rec":"record"]}),i.jsxs("button",{type:"button",className:"ctrl danger",onClick:n,children:[i.jsx(jp,{})," end"]})]})]})}const Vp=e=>!!e&&typeof e.latencyP95=="number",Up=e=>!!e&&(typeof e.cost.telco=="number"||typeof e.cost.llm=="number"||typeof e.cost.sttTts=="number"||typeof e.cost.total=="number");function Hp({call:e}){const[t,n]=M.useState("latency"),r=Vp(e),l=Up(e);if(!e||!r&&!l)return null;const s=t==="latency"&&!r?"cost":t==="cost"&&!l?"latency":t;return i.jsxs("div",{className:"rr-card metrics-panel",children:[i.jsx("div",{className:"metrics-panel-h",children:i.jsxs("div",{className:"seg",role:"tablist",children:[i.jsx("button",{type:"button",role:"tab","aria-selected":s==="latency",disabled:!r,className:s==="latency"?"on":"",onClick:()=>n("latency"),children:"Latency"}),i.jsx("button",{type:"button",role:"tab","aria-selected":s==="cost",disabled:!l,className:s==="cost"?"on":"",onClick:()=>n("cost"),children:"Cost"})]})}),i.jsxs("div",{className:"metrics-panel-body",children:[s==="latency"&&r&&i.jsx(Bp,{call:e}),s==="cost"&&l&&i.jsx(Wp,{call:e})]})]})}function Bp({call:e}){const t=e.latencyP50??0,n=e.latencyP95??0;if(e.mode==="realtime"){const h=(e.turnCount??0)>=2;return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"lat-grid",children:[i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"end-to-end p50"}),i.jsxs("div",{className:"v",children:[h&&t||"—",h&&i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox"+(h&&n>600?" warn":""),children:[i.jsx("div",{className:"l",children:"end-to-end p95"}),i.jsxs("div",{className:"v",children:[h&&n||"—",h&&i.jsx("span",{className:"u",children:"ms"})]})]})]}),i.jsx("div",{className:"waterfall",children:i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"e2e"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar llm",style:{left:0,width:Math.min(100,n/1e3*100)+"%"}})}),i.jsx("span",{className:"v",children:n})]})}),i.jsxs("div",{className:"wf-legend",children:[i.jsxs("span",{children:[i.jsx("i",{style:{background:"#DF9367"}}),"end-to-end"]}),i.jsx("span",{style:{marginLeft:"auto"},children:e.agent??"realtime"})]})]})}const l=e.sttAvg||0,s=e.llmAvg||0,o=e.ttsAvg||0,u=l+s+o,a=Math.max(u,800),f=(e.turnCount??0)>=2;return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"lat-grid",children:[i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"p50"}),i.jsxs("div",{className:"v",children:[f?e.latencyP50??"—":"—",f&&i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox"+(f&&n>600?" warn":""),children:[i.jsx("div",{className:"l",children:"p95"}),i.jsxs("div",{className:"v",children:[f?n:"—",f&&i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"stt avg"}),i.jsxs("div",{className:"v",children:[e.sttAvg??"—",i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"tts avg"}),i.jsxs("div",{className:"v",children:[e.ttsAvg??"—",i.jsx("span",{className:"u",children:"ms"})]})]})]}),i.jsxs("div",{className:"waterfall",children:[i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"stt"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar stt",style:{left:0,width:l/a*100+"%"}})}),i.jsx("span",{className:"v",children:l})]}),i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"llm"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar llm",style:{left:l/a*100+"%",width:s/a*100+"%"}})}),i.jsx("span",{className:"v",children:s})]}),i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"tts"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar tts",style:{left:(l+s)/a*100+"%",width:o/a*100+"%"}})}),i.jsx("span",{className:"v",children:o})]})]}),i.jsxs("div",{className:"wf-legend",children:[i.jsxs("span",{children:[i.jsx("i",{style:{background:"#1a1a1a"}}),"stt"]}),i.jsxs("span",{children:[i.jsx("i",{style:{background:"#DF9367"}}),"llm"]}),i.jsxs("span",{children:[i.jsx("i",{style:{background:"#278EFF",opacity:.8}}),"tts"]}),i.jsxs("span",{style:{marginLeft:"auto"},children:["total ",u," ms"]})]})]})}function ss(e){if(e.length===0)return e;const t=e.replace(/(?:_(?:ws|rest|stt|tts|llm))+$/i,"");return t.charAt(0).toUpperCase()+t.slice(1)}function Wp({call:e}){const t=e.cost,n=t.telco??0,r=t.llm??0,l=t.stt??0,s=t.tts??0,o=t.sttTts??0,u=l===0&&s===0?o:0,a=t.cached??0,f=n+r+l+s+u,h=t.total??f-a,v=S=>f>0?S/f*100:0,m=e.sttProvider?`${ss(e.sttProvider)} STT${e.sttModel?` · ${e.sttModel}`:""}`:"STT",x=e.ttsProvider?`${ss(e.ttsProvider)} TTS${e.ttsModel?` · ${e.ttsModel}`:""}`:"TTS",w=e.llmModel?`${e.model?ss(e.model)+" · ":""}${e.llmModel}`:e.model||"LLM";return i.jsxs(i.Fragment,{children:[f>0&&i.jsxs("div",{className:"cost-bar",children:[i.jsx("i",{style:{background:"#cc0000",width:v(n)+"%"}}),i.jsx("i",{style:{background:"#DF9367",width:v(r)+"%"}}),i.jsx("i",{style:{background:"#1a1a1a",width:v(l+u)+"%"}}),i.jsx("i",{style:{background:"#6c6c6c",width:v(s)+"%"}})]}),n>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#cc0000"}}),e.carrier==="twilio"?"Twilio":"Telnyx"]}),i.jsx("span",{className:"v",children:De(n)})]}),r>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#DF9367"}}),w]}),i.jsx("span",{className:"v",children:De(r)}),a>0&&i.jsxs("span",{className:"saved",children:["−",De(a)," cached"]})]}),l>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#1a1a1a"}}),m]}),i.jsx("span",{className:"v",children:De(l)})]}),s>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#6c6c6c"}}),x]}),i.jsx("span",{className:"v",children:De(s)})]}),u>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#1a1a1a"}}),"STT / TTS (legacy)"]}),i.jsx("span",{className:"v",children:De(u)})]}),i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:["Total"," ",e.status==="live"&&i.jsx("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"#aaa",marginLeft:4},children:"(running)"})]}),i.jsx("span",{className:"v",children:De(h)})]})]})}const Ut=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Tt=e=>typeof e=="string"?e:"",Ae=e=>typeof e=="number"&&Number.isFinite(e)?e:0,ae=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,Xe=e=>typeof e=="string"&&e.length>0?e:void 0;function Pr(e){if(Ut(e))return{stt_ms:ae(e.stt_ms),llm_ms:ae(e.llm_ms),tts_ms:ae(e.tts_ms),total_ms:ae(e.total_ms),agent_response_ms:ae(e.agent_response_ms),endpoint_ms:ae(e.endpoint_ms),user_speech_duration_ms:ae(e.user_speech_duration_ms)}}function Qp(e){if(Ut(e))return{stt:ae(e.stt),tts:ae(e.tts),llm:ae(e.llm),telephony:ae(e.telephony),total:ae(e.total),llm_cached_savings:ae(e.llm_cached_savings)}}function Kp(e){if(!Ut(e))return null;const t=e.turns;return{duration_seconds:ae(e.duration_seconds),provider_mode:Xe(e.provider_mode),telephony_provider:Xe(e.telephony_provider),stt_provider:Xe(e.stt_provider),tts_provider:Xe(e.tts_provider),llm_provider:Xe(e.llm_provider),stt_model:Xe(e.stt_model),tts_model:Xe(e.tts_model),llm_model:Xe(e.llm_model),cost:Qp(e.cost),latency_avg:Pr(e.latency_avg),latency_p50:Pr(e.latency_p50),latency_p95:Pr(e.latency_p95),latency_p99:Pr(e.latency_p99),turns:Array.isArray(t)?t:void 0}}function Yp(e){if(!Array.isArray(e))return;const t=[];for(const n of e)Ut(n)&&t.push({role:Tt(n.role),text:Tt(n.text),timestamp:Ae(n.timestamp)});return t}function Pc(e){if(!Ut(e))return null;const t=Tt(e.call_id);if(t.length===0)return null;const n=e.turns;return{call_id:t,caller:Tt(e.caller),callee:Tt(e.callee),direction:Tt(e.direction),started_at:Ae(e.started_at),ended_at:ae(e.ended_at),status:Xe(e.status),transcript:Yp(e.transcript),turns:Array.isArray(n)?n:void 0,metrics:Kp(e.metrics)}}function Tc(e){if(!Array.isArray(e))return[];const t=[];for(const n of e){const r=Pc(n);r&&t.push(r)}return t}function Xp(e){return Ut(e)?{stt:Ae(e.stt),tts:Ae(e.tts),llm:Ae(e.llm),telephony:Ae(e.telephony)}:{stt:0,tts:0,llm:0,telephony:0}}function Gp(e){if(!Ut(e))return{total_calls:0,total_cost:0,avg_duration:0,avg_latency_ms:0,cost_breakdown:{stt:0,tts:0,llm:0,telephony:0},active_calls:0};const t=Tt(e.sdk_version);return{total_calls:Ae(e.total_calls),total_cost:Ae(e.total_cost),avg_duration:Ae(e.avg_duration),avg_latency_ms:Ae(e.avg_latency_ms),cost_breakdown:Xp(e.cost_breakdown),active_calls:Ae(e.active_calls),...t?{sdk_version:t}:{}}}async function Jo(e){const t=await fetch(e,{headers:{Accept:"application/json"}});if(!t.ok)throw new Error(`Request to ${e} failed with status ${t.status}`);return t.json()}async function Zp(e=50,t=0){const n=`/api/dashboard/calls?limit=${encodeURIComponent(e)}&offset=${encodeURIComponent(t)}`,r=await Jo(n);return Tc(r)}async function Jp(){const e=await Jo("/api/dashboard/active");return Tc(e)}async function qp(){const e=await Jo("/api/dashboard/aggregates");return Gp(e)}async function bp(e){const t=`/api/dashboard/calls/${encodeURIComponent(e)}`,n=await fetch(t,{headers:{Accept:"application/json"}});if(n.status===404)return null;if(!n.ok)throw new Error(`Request to ${t} failed with status ${n.status}`);const r=await n.json();return Pc(r)}async function eh(e){if(e.length===0)return[];if(e.length===1){const r=`/api/dashboard/calls/${encodeURIComponent(e[0])}`,l=await fetch(r,{method:"DELETE",headers:{Accept:"application/json"}});if(!l.ok)throw new Error(`DELETE ${r} failed with status ${l.status}`);const s=await l.json();return Array.isArray(s.deleted)?s.deleted.filter(o=>typeof o=="string"):[]}const t=await fetch("/api/dashboard/calls/delete",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({call_ids:e})});if(!t.ok)throw new Error(`POST /api/dashboard/calls/delete failed with status ${t.status}`);const n=await t.json();return Array.isArray(n.deleted)?n.deleted.filter(r=>typeof r=="string"):[]}const th=new Set(["in-progress","initiated"]);function nh(e){if(!e)return"ended";switch(e){case"in-progress":case"initiated":return"live";case"completed":return"ended";case"no-answer":return"no-answer";case"busy":case"failed":case"canceled":case"webhook_error":return"fail";default:return"ended"}}function rh(e){return e==="outbound"?"outbound":"inbound"}function lh(e){return typeof e=="string"&&e.toLowerCase().includes("telnyx")?"telnyx":"twilio"}function sh(e){if(typeof e!="string")return"unknown";const t=e.toLowerCase();return t.includes("realtime")?"realtime":t.includes("convai")?"convai":t.includes("pipeline")?"pipeline":"unknown"}function au(e){return e.length===0?"—":e}function oh(e){const t=e.metrics?.provider_mode;if(!t)return;const n=e.metrics?.llm_provider;return t.startsWith("pipeline")&&n?`${t} · ${n}`:t}function ih(e){const t=e.metrics?.cost;if(!t)return{};const n={};return typeof t.telephony=="number"&&(n.telco=t.telephony),typeof t.llm=="number"&&(n.llm=t.llm),typeof t.stt=="number"&&(n.stt=t.stt),typeof t.tts=="number"&&(n.tts=t.tts),typeof t.llm_cached_savings=="number"&&(n.cached=t.llm_cached_savings),(n.stt!==void 0||n.tts!==void 0)&&(n.sttTts=(n.stt??0)+(n.tts??0)),n.telco===void 0&&n.llm===void 0&&n.sttTts===void 0&&typeof t.total=="number"&&(n.total=t.total),n}function uh(e,t){if(t)return;const n=e.metrics?.duration_seconds;return typeof n=="number"?n:typeof e.ended_at=="number"&&typeof e.started_at=="number"?Math.max(0,e.ended_at-e.started_at):0}function ah(e){if(typeof e.ended_at=="number")return Math.round(Date.now()/1e3-e.ended_at)}function cu(e){const t=nh(e.status),n=t==="live"||e.status!==void 0&&th.has(e.status),r=e.metrics?.latency_avg,l=e.metrics?.latency_p50,s=e.metrics?.latency_p95,o=(Array.isArray(e.metrics?.turns)?e.metrics?.turns?.length:void 0)??(Array.isArray(e.transcript)?e.transcript.length:void 0);return{id:e.call_id,status:t,direction:rh(e.direction),from:au(e.caller),to:au(e.callee),carrier:lh(e.metrics?.telephony_provider),startedAtMs:typeof e.started_at=="number"?e.started_at*1e3:void 0,durationStart:n?e.started_at*1e3:void 0,duration:uh(e,n),latencyP95:s?.agent_response_ms??s?.total_ms??r?.total_ms,latencyP50:l?.agent_response_ms??l?.total_ms??r?.total_ms,sttAvg:r?.stt_ms,ttsAvg:r?.tts_ms,llmAvg:r?.llm_ms,turnCount:o,agentResponseP50:l?.agent_response_ms,agentResponseP95:s?.agent_response_ms,cost:ih(e),agent:oh(e),model:e.metrics?.llm_provider,mode:sh(e.metrics?.provider_mode),sttProvider:e.metrics?.stt_provider,ttsProvider:e.metrics?.tts_provider,sttModel:e.metrics?.stt_model,ttsModel:e.metrics?.tts_model,llmModel:e.metrics?.llm_model,transcriptKey:e.call_id,endedAgo:ah(e)}}function ch(e){const t=e.transcript;if(t&&t.length>0){const l=[];for(const s of t){const o=s.text;switch(s.role){case"user":l.push({who:"user",txt:o});break;case"assistant":l.push({who:"bot",txt:o});break;case"tool":l.push({who:"tool",txt:o});break;default:l.push({who:"bot",txt:o});break}}return l}const n=e.turns;if(!n||n.length===0)return[];const r=[];for(const l of n){if(typeof l!="object"||l===null)continue;const s=l,o=typeof s.user_text=="string"?s.user_text:"",u=typeof s.agent_text=="string"?s.agent_text:"";o.length>0&&r.push({who:"user",txt:o}),u.length>0&&u!=="[interrupted]"&&r.push({who:"bot",txt:u})}return r}const zc=60*1e3,Rc=60*zc,os=24*Rc;function fh(e,t=Date.now()){switch(e){case"1h":{const n=5*zc,r=Math.ceil(t/n)*n,l=r-12*n;return{count:12,bucketSizeMs:n,window:{fromMs:l,toMs:r}}}case"24h":{const n=Rc,r=Math.ceil(t/n)*n,l=r-24*n;return{count:24,bucketSizeMs:n,window:{fromMs:l,toMs:r}}}case"7d":{const n=new Date(t);n.setHours(0,0,0,0);const r=n.getTime()+os,l=r-7*os;return{count:7,bucketSizeMs:os,window:{fromMs:l,toMs:r}}}case"All":default:return{count:9,bucketSizeMs:0,window:{fromMs:0,toMs:t}}}}function dh(e,t){const{fromMs:n,toMs:r}=t;return e.filter(l=>{const s=to(l);return typeof s!="number"?!1:s>=n&&s<=r})}function to(e){if(typeof e.startedAtMs=="number")return e.startedAtMs;if(typeof e.durationStart=="number")return e.durationStart;if(typeof e.endedAgo=="number")return Date.now()-e.endedAgo*1e3}function ph(e){const t=e.cost,n=(t.telco??0)+(t.llm??0)+(t.sttTts??0);return n>0?n:t.total??0}function hh(e){const t=e.reduce((n,r)=>r>n?r:n,0);return t<=0?e.map(()=>0):e.map(n=>Math.round(n/t*100))}function Tr(e,t,n=9,r){const l=typeof n=="object",s=l?n.count:n,o=Math.max(1,Math.floor(s)),u=l?n.window:r,a=l?n.bucketSizeMs:0;let f,h;if(u)f=u.fromMs,h=u.toMs;else{const d=[];for(const c of e){const p=to(c);typeof p=="number"&&d.push(p)}if(d.length===0){const c=Date.now();return{heights:new Array(o).fill(0),buckets:new Array(o).fill(null).map(()=>[]),window:{fromMs:c,toMs:c},bucketSizeMs:0}}f=Math.min(...d),h=Math.max(...d)}const v=Math.max(1,h-f),m=a>0?a:v/o,x=new Array(o).fill(null).map(()=>[]),w=new Array(o).fill(0),S=new Array(o).fill(0);for(const d of e){const c=to(d);if(typeof c!="number"||ch)continue;let p=Math.floor((c-f)/m);p>=o&&(p=o-1),p<0&&(p=0),x[p].push(d),t==="totalCalls"?w[p]+=1:t==="latency"?typeof d.latencyP95=="number"&&(w[p]+=d.latencyP95,S[p]+=1):w[p]+=ph(d)}const T=t==="latency"?w.map((d,c)=>S[c]>0?d/S[c]:0):w;return{heights:hh(T),buckets:x,window:{fromMs:f,toMs:h},bucketSizeMs:m}}const mh=500;function vh(e,t){const n=new Set,r=[];for(const l of e)n.has(l.call_id)||(n.add(l.call_id),r.push(cu(l)));for(const l of t)n.has(l.call_id)||(n.add(l.call_id),r.push(cu(l)));return r}function yh(e,t){const n=new Map(e.map(s=>[s.id,s])),r=new Set(t.map(s=>s.id)),l=t.map(s=>{const o=n.get(s.id);return o?{...o,...s,latencyP95:s.latencyP95??o.latencyP95,latencyP50:s.latencyP50??o.latencyP50,sttAvg:s.sttAvg??o.sttAvg,ttsAvg:s.ttsAvg??o.ttsAvg,llmAvg:s.llmAvg??o.llmAvg,turnCount:s.turnCount??o.turnCount,agentResponseP50:s.agentResponseP50??o.agentResponseP50,agentResponseP95:s.agentResponseP95??o.agentResponseP95,cost:{...o.cost,...s.cost}}:s});for(const s of e)r.has(s.id)||l.push(s);return l.sort((s,o)=>(o.startedAtMs??0)-(s.startedAtMs??0)),l.slice(0,mh)}const gh=1e3,wh=3e4,xh=5,kh=5e3,Sh=["call_start","call_initiated","call_status","call_end","calls_deleted"];function fu(e){return e instanceof Error?e.message:"Unknown error"}function Ch(){const[e,t]=M.useState([]),[n,r]=M.useState(null),[l,s]=M.useState(!1),[o,u]=M.useState(null),a=M.useRef(!0),f=M.useRef(null),h=M.useRef(null),v=M.useRef(null),m=M.useRef(0),x=M.useCallback(()=>{h.current!==null&&(clearTimeout(h.current),h.current=null)},[]),w=M.useCallback(()=>{v.current!==null&&(clearInterval(v.current),v.current=null)},[]),S=M.useCallback(()=>{f.current!==null&&(f.current.close(),f.current=null)},[]),T=M.useCallback(async()=>{try{const[g,j,D]=await Promise.all([Jp(),Zp(50,0),qp()]);if(!a.current)return;t(L=>yh(L,vh(g,j))),r(D),u(null)}catch(g){if(!a.current)return;u(fu(g))}},[]),d=M.useCallback(()=>{v.current===null&&(v.current=setInterval(()=>{T()},kh))},[T]),c=M.useRef(()=>{}),p=M.useCallback(()=>{if(x(),m.current>=xh){d();return}const g=m.current,j=Math.min(wh,gh*Math.pow(2,g));m.current=g+1,h.current=setTimeout(()=>{h.current=null,a.current&&c.current()},j)},[x,d]),y=M.useCallback(()=>{T()},[T]),_=M.useCallback(()=>{S();let g;try{g=new EventSource("/api/dashboard/events")}catch(j){u(fu(j)),p();return}f.current=g,g.onopen=()=>{a.current&&(m.current=0,w(),s(!0))},g.onerror=()=>{a.current&&(s(!1),S(),p())};for(const j of Sh)g.addEventListener(j,y);g.addEventListener("turn_complete",y)},[S,w,y,p]);M.useEffect(()=>{c.current=_},[_]),M.useEffect(()=>(a.current=!0,T(),_(),()=>{a.current=!1,x(),w(),S()}),[]);const C=M.useCallback(g=>{if(g.length===0)return;const j=new Set(g);t(D=>D.filter(L=>!j.has(L.id)))},[]);return{calls:e,aggregates:n,isStreaming:l,error:o,refresh:T,removeCallsLocal:C}}const jh=2e3;function _h(e,t){const[n,r]=M.useState([]),l=M.useRef(!0);return M.useEffect(()=>(l.current=!0,()=>{l.current=!1}),[]),M.useEffect(()=>{if(!e){r([]);return}let s=!1,o=null,u=null;const a=async()=>{try{const h=await bp(e);if(s||!l.current)return;if(h===null){r([]);return}r(ch(h))}catch{}};a();const f=h=>{const v=h;try{return JSON.parse(v.data)?.call_id===e}catch{return!1}};try{u=new EventSource("/api/dashboard/events"),u.addEventListener("turn_complete",h=>{f(h)&&a()}),u.addEventListener("call_end",h=>{f(h)&&a()})}catch{u=null}return t&&(o=setInterval(()=>{a()},jh)),()=>{s=!0,o!==null&&clearInterval(o),u!==null&&u.close()}},[e,t]),n}const du="patter.dashboard.reveal",Dc="patter.dashboard.theme";function Nh(e,t){try{const n=window.localStorage.getItem(e);return n==="1"||n==="true"?!0:n==="0"||n==="false"?!1:t}catch{return t}}function Eh(){try{const e=window.localStorage.getItem(Dc);if(e==="dark")return"dark";if(e==="light")return"light"}catch{}return"light"}function Mh(){const[e,t]=M.useState(()=>Nh(du,!1)),[n,r]=M.useState(()=>Eh());M.useEffect(()=>{try{window.localStorage.setItem(du,e?"1":"0")}catch{}},[e]),M.useEffect(()=>{try{window.localStorage.setItem(Dc,n)}catch{}const o=document.body.classList;n==="dark"?o.add("dark"):o.remove("dark")},[n]);const l=M.useCallback(()=>{t(o=>!o)},[]),s=M.useCallback(()=>{r(o=>o==="dark"?"light":"dark")},[]);return{revealed:e,dark:n==="dark",toggleRevealed:l,toggleDark:s}}const Lh="dev",is={"1h":"1h","24h":"24h","7d":"7d",All:"all-time"};function Ph(e){const t=e.filter(r=>typeof r.latencyP95=="number");if(t.length===0)return 0;const n=t.reduce((r,l)=>r+(l.latencyP95??0),0);return Math.round(n/t.length)}function Th(e){return e.reduce((t,n)=>{if(typeof n.cost.total=="number")return t+n.cost.total;const r=(n.cost.telco??0)+(n.cost.llm??0)+(n.cost.sttTts??0);return t+r},0)}function zh(e){const n=e.find(l=>l.status==="live")??e[0];if(!n)return"";const r=n.direction==="inbound"?n.to:n.from;return r&&r!=="—"?r:""}function Rh(){const{calls:e,aggregates:t,isStreaming:n,error:r,refresh:l,removeCallsLocal:s}=Ch(),{revealed:o,dark:u,toggleRevealed:a,toggleDark:f}=Mh(),[h,v]=M.useState(null),[m,x]=M.useState(""),[w,S]=M.useState("24h"),[T,d]=M.useState(!0),[c,p]=M.useState(!1),y=M.useMemo(()=>fh(w),[w]),_=y.window,C=M.useMemo(()=>{if(w==="All")return e;const I=new Set(dh(e,_).map(H=>H.id));return e.filter(H=>H.status==="live"||I.has(H.id))},[e,w,_]);M.useEffect(()=>{if(h!==null)return;const I=C.find(H=>H.status==="live")??C[0];I&&v(I.id)},[C,h]),M.useEffect(()=>{h!==null&&(C.some(I=>I.id===h)||v(null))},[C,h]),M.useEffect(()=>{const I=H=>{if(!(H.shiftKey&&H.key.toLowerCase()==="k"||H.metaKey&&H.key.toLowerCase()==="k"))return;H.preventDefault(),document.querySelector(".panel-h .search input")?.focus()};return window.addEventListener("keydown",I),()=>window.removeEventListener("keydown",I)},[]);const g=M.useMemo(()=>C.find(I=>I.id===h)??null,[C,h]),j=g?.status==="live",D=_h(g?.id??null,j),L=M.useMemo(()=>e.filter(I=>I.status==="live").length,[e]),pe=M.useMemo(()=>e.filter(I=>I.status==="live"&&I.direction==="inbound").length,[e]),_t=L-pe,Qe=C.length,cr=Ph(C)||t?.avg_latency_ms||0,zl=Th(C)||t?.total_cost||0,xn=zh(e),Ht=typeof t?.sdk_version=="string"&&t.sdk_version||Lh,N=M.useMemo(()=>Tr(C,"totalCalls",y),[C,y]),P=M.useMemo(()=>Tr(C,"latency",y),[C,y]),z=M.useMemo(()=>Tr(C,"spend",y),[C,y]),U=M.useMemo(()=>{const I=e.filter(H=>H.status==="live");return Tr(I,"totalCalls",y)},[e,y]),W=I=>I.heights.map((H,Ye)=>({height:H,calls:I.buckets[Ye],fromMs:I.window.fromMs+Ye*I.bucketSizeMs,toMs:I.window.fromMs+(Ye+1)*I.bucketSizeMs})),Bt=()=>{g&&l().catch(()=>{})},Ke=async I=>{if(I.length!==0){s(I),I.includes(h??"")&&v(null);try{await eh(I)}catch{await l().catch(()=>{})}}};return i.jsxs(i.Fragment,{children:[i.jsx(_p,{liveCount:L,todayCount:Qe,phoneNumber:xn,sdkVersion:Ht,revealed:o,dark:u,onToggleRevealed:a,onToggleDark:f}),i.jsxs("div",{className:"page",children:[i.jsx(Mp,{range:w,setRange:I=>S(I)}),i.jsxs("div",{className:"metrics",children:[i.jsx(Lr,{label:`Calls · ${is[w]}`,value:Qe,spark:N.heights,buckets:W(N),onSelectCall:v,kind:"count"}),i.jsx(Lr,{label:"Avg latency p95",value:cr||0,unit:"ms",spark:P.heights,buckets:W(P),onSelectCall:v,kind:"latency"}),i.jsx(Lr,{label:`Spend · ${is[w]}`,value:De(zl),spark:z.heights,buckets:W(z),onSelectCall:v,kind:"spend"}),i.jsx(Lr,{label:"Active now",value:L,peach:!0,badge:!0,footer:`${pe} inbound · ${_t} outbound`,spark:U.heights,buckets:W(U),onSelectCall:v,kind:"count"})]}),i.jsxs("div",{className:"split",children:[i.jsx(Op,{calls:C,selectedId:h,onSelect:v,newId:null,search:m,setSearch:x,onDeleteCalls:Ke,revealed:o}),i.jsxs("div",{className:"rr",children:[i.jsx($p,{call:g,transcript:D,onEnd:Bt,recording:T,setRecording:d,muted:c,setMuted:p,revealed:o}),i.jsx(Hp,{call:g})]})]}),i.jsxs("div",{className:"statusbar",children:[i.jsxs("div",{className:"group",children:[i.jsx("span",{className:n?"green":"",children:n?"streaming · sse":r?`error · ${r}`:"idle"}),i.jsxs("span",{children:["SDK · ",Ht]})]}),i.jsx("div",{className:"group",children:i.jsxs("span",{children:[L," live · ",Qe," ",is[w]]})})]})]})]})}const Ic=document.getElementById("root");if(!Ic)throw new Error("Patter dashboard: #root element missing");us.createRoot(Ic).render(i.jsx(qc.StrictMode,{children:i.jsx(Rh,{})})); diff --git a/libraries/python/getpatter/engines/__init__.py b/libraries/python/getpatter/engines/__init__.py index 02fe530e..21e588d3 100644 --- a/libraries/python/getpatter/engines/__init__.py +++ b/libraries/python/getpatter/engines/__init__.py @@ -12,4 +12,4 @@ from __future__ import annotations -__all__ = ["openai", "elevenlabs"] +__all__ = ["openai", "openai_realtime_2", "elevenlabs"] diff --git a/libraries/python/getpatter/engines/openai.py b/libraries/python/getpatter/engines/openai.py index d3bb237f..bc33de62 100644 --- a/libraries/python/getpatter/engines/openai.py +++ b/libraries/python/getpatter/engines/openai.py @@ -31,7 +31,7 @@ class Realtime: api_key: str = "" voice: str = "alloy" - model: str = "gpt-4o-mini-realtime-preview" + model: str = "gpt-realtime-mini" # Reasoning-effort tier for ``gpt-realtime-2``. ``None`` leaves the # ``session.reasoning`` field unset (server default applies). OpenAI # recommends ``"low"`` for production voice flows — higher tiers add diff --git a/libraries/python/getpatter/engines/openai_realtime_2.py b/libraries/python/getpatter/engines/openai_realtime_2.py new file mode 100644 index 00000000..fefcb885 --- /dev/null +++ b/libraries/python/getpatter/engines/openai_realtime_2.py @@ -0,0 +1,64 @@ +"""OpenAI Realtime 2 engine marker for Patter. + +Wraps ``gpt-realtime-2`` (GA Realtime API). Separate marker from +:class:`getpatter.engines.openai.Realtime` because the GA endpoint speaks a +different ``session.update`` wire shape; the client dispatches to +:class:`getpatter.providers.openai_realtime_2.OpenAIRealtime2Adapter` when +this marker is passed to ``Patter.agent(engine=...)``. +""" + +from __future__ import annotations + +import os +from dataclasses import dataclass +from typing import Literal + +__all__ = ["Realtime2"] + + +@dataclass(frozen=True) +class Realtime2: + """OpenAI GA Realtime API engine config — selects ``gpt-realtime-2``. + + Holds the minimal settings needed by the Patter server to instantiate + :class:`getpatter.providers.openai_realtime_2.OpenAIRealtime2Adapter` at + call time. + + Example:: + + from getpatter import Patter, Twilio, OpenAIRealtime2 + + phone = Patter(carrier=Twilio(), phone_number="+1...") + agent = phone.agent( + engine=OpenAIRealtime2(reasoning_effort="low"), + system_prompt="You are a friendly receptionist.", + first_message="Hello! How can I help?", + ) + """ + + api_key: str = "" + voice: str = "alloy" + model: str = "gpt-realtime-2" + # Reasoning-effort tier. ``None`` leaves the field unset (server default + # applies). OpenAI recommends ``"low"`` for production voice flows — + # higher tiers add measurable per-turn latency. Has no effect on models + # that don't support the ``reasoning`` field. + reasoning_effort: Literal["minimal", "low", "medium", "high"] | None = None + # Override for ``audio.input.transcription.model``. ``None`` keeps the + # adapter default (``whisper-1``). Use ``"gpt-realtime-whisper"`` for + # low-latency transcript partials. + input_audio_transcription_model: str | None = None + + def __post_init__(self) -> None: + key = self.api_key or os.environ.get("OPENAI_API_KEY", "") + if not key: + raise ValueError( + "OpenAI Realtime 2 engine requires an api_key. Pass " + "api_key='sk-...' or set OPENAI_API_KEY in the environment." + ) + object.__setattr__(self, "api_key", key) + + @property + def kind(self) -> str: + """Stable discriminator used for engine dispatch.""" + return "openai_realtime_2" diff --git a/libraries/python/getpatter/providers/elevenlabs_tts.py b/libraries/python/getpatter/providers/elevenlabs_tts.py index 0e226680..6adbb604 100644 --- a/libraries/python/getpatter/providers/elevenlabs_tts.py +++ b/libraries/python/getpatter/providers/elevenlabs_tts.py @@ -168,9 +168,7 @@ def __init__( api_key: str, voice_id: str = "21m00Tcm4TlvDq8ikWAM", model_id: Union[ElevenLabsModel, str] = ElevenLabsModel.FLASH_V2_5, - output_format: Union[ - ElevenLabsOutputFormat, str - ] = ElevenLabsOutputFormat.PCM_16000, + output_format: Union[ElevenLabsOutputFormat, str, None] = None, voice_settings: Optional[dict] = None, language_code: Optional[str] = None, chunk_size: int = 4096, @@ -178,7 +176,20 @@ def __init__( self.api_key = api_key self.voice_id = resolve_voice_id(voice_id) self.model_id = model_id - self.output_format = output_format + # Track whether the caller explicitly chose an ``output_format``. When + # left unset (``None``), we default to PCM 16 kHz for backward-compat + # but allow ``set_telephony_carrier`` to auto-flip to the carrier's + # native format (``ulaw_8000`` for Twilio) so ElevenLabs encodes + # server-side and we skip a client-side mulaw transcode. When the + # caller passed an explicit value, ``set_telephony_carrier`` is a + # no-op — the user's choice is respected. + # Parity with ElevenLabsWebSocketTTS._output_format_explicit. + self._output_format_explicit = output_format is not None + self.output_format: Union[ElevenLabsOutputFormat, str] = ( + output_format + if output_format is not None + else ElevenLabsOutputFormat.PCM_16000 + ) self.voice_settings = voice_settings self.language_code = language_code self.chunk_size = chunk_size @@ -268,6 +279,36 @@ def for_telnyx( chunk_size=chunk_size, ) + # Map of telephony carrier → ElevenLabs HTTP-native ``output_format`` for + # zero-transcode delivery to the carrier wire. Mirrors the WS variant's + # ``_CARRIER_NATIVE_FORMAT`` so both adapters behave identically when the + # stream-handler calls ``set_telephony_carrier``. + _CARRIER_NATIVE_FORMAT: dict = { + "twilio": ElevenLabsOutputFormat.ULAW_8000, + "telnyx": ElevenLabsOutputFormat.PCM_16000, + } + + def set_telephony_carrier(self, carrier: str) -> None: + """Hook called by ``StreamHandler`` to advise the carrier wire format. + + When the user did NOT pass an explicit ``output_format`` to + ``__init__``, this flips the format to the carrier's native wire + codec — saving a client-side transcode step. Calling with an + unknown carrier (``""`` / ``"custom"``) is a no-op. + + When ``output_format`` was explicitly passed (incl. via the + ``for_twilio`` / ``for_telnyx`` factories), this method is a no-op + — the user's choice always wins. + + Parity with :meth:`ElevenLabsWebSocketTTS.set_telephony_carrier`. + """ + if self._output_format_explicit: + return + native = self._CARRIER_NATIVE_FORMAT.get(carrier) + if native is None: + return + self.output_format = native + def _record_synthesis_cost(self, text: str) -> None: """Emit ``patter.cost.tts_chars`` for the synthesised text.""" try: diff --git a/libraries/python/getpatter/providers/elevenlabs_ws_tts.py b/libraries/python/getpatter/providers/elevenlabs_ws_tts.py index 426d523b..ae1f969f 100644 --- a/libraries/python/getpatter/providers/elevenlabs_ws_tts.py +++ b/libraries/python/getpatter/providers/elevenlabs_ws_tts.py @@ -226,6 +226,13 @@ def __init__( # send) instead of opening a fresh socket. The slot is # consumed exactly once. self._adopted_connection: Optional[ElevenLabsParkedWS] = None + # Holds a reference to the currently open synthesis WebSocket so + # ``cancel_active_stream`` can force-close it from outside the + # generator. Set just before the ``while True`` receive loop in + # ``synthesize``; cleared in the generator's ``finally`` block. + # ``None`` when no synthesis is in progress. + # Parity with TS ``ElevenLabsWebSocketTTS.activeStreamWs``. + self._active_stream_ws: object = None @property def api_key(self) -> str: @@ -338,6 +345,44 @@ def set_telephony_carrier(self, carrier: str) -> None: return self.output_format = native + def cancel_active_stream(self) -> None: + """Force-close the currently open synthesis WebSocket (if any). + + Called by ``StreamHandler`` from ``_do_cancel_for_barge_in``, + ``on_stop``, and ``on_ws_close`` to unblock the in-flight + ``synthesize`` generator's ``await ws.recv()`` immediately. + Without this the generator stays blocked in the receive loop + for up to ``frame_timeout`` (default 30 s) — ``_init_pipeline`` + would never return, the STT ``on_transcript`` callback would + never register, and every subsequent user turn would be silently + dropped. + + No-op when no synthesis is in progress. Thread-safe: the close + is idempotent on an already-closed websocket. + + Parity with TS ``ElevenLabsWebSocketTTS.cancelActiveStream``. + """ + ws = self._active_stream_ws + if ws is None: + return + self._active_stream_ws = None + try: + # ``websockets`` connection objects are asyncio-aware; close() + # schedules the close on the running event loop. We fire-and- + # forget here because cancel_active_stream is called from sync + # context (signal handler / barge-in cancel path). + import asyncio + + loop = asyncio.get_event_loop() + if loop.is_running(): + loop.call_soon_threadsafe( + lambda: asyncio.ensure_future(ws.close()) # type: ignore[attr-defined] + ) + else: + asyncio.run(ws.close()) # type: ignore[attr-defined] + except Exception: + pass # defensive — socket may already be closed + # ------------------------------------------------------------------ # Streaming # ------------------------------------------------------------------ @@ -445,6 +490,12 @@ async def synthesize(self, text: str) -> AsyncGenerator[bytes, None]: from websockets.exceptions import ConnectionClosedOK + # Expose the in-flight WS so ``cancel_active_stream`` (called + # from the stream-handler barge-in / stop / ws-close paths) can + # force-close it and unblock the ``await ws.recv()`` below. + # Parity with TS ``ElevenLabsWebSocketTTS.activeStreamWs``. + self._active_stream_ws = ws + while True: try: raw = await asyncio.wait_for(ws.recv(), timeout=self.frame_timeout) @@ -507,6 +558,11 @@ async def synthesize(self, text: str) -> AsyncGenerator[bytes, None]: if msg.get("isFinal"): return finally: + # Clear the active-stream slot. A concurrent ``cancel_active_stream`` + # call may have already set it to None; that is safe — ``ws`` is a + # local binding and the close below is idempotent. + if self._active_stream_ws is ws: + self._active_stream_ws = None # Best-effort: tell the server to stop synthesising any # buffered text the consumer is no longer interested in. # Failure to send is non-fatal — the socket close below diff --git a/libraries/python/getpatter/providers/openai_realtime.py b/libraries/python/getpatter/providers/openai_realtime.py index d9462b38..657b2851 100644 --- a/libraries/python/getpatter/providers/openai_realtime.py +++ b/libraries/python/getpatter/providers/openai_realtime.py @@ -240,7 +240,6 @@ async def warmup(self) -> None: url, additional_headers={ "Authorization": f"Bearer {self.api_key}", - "OpenAI-Beta": "realtime=v1", }, ping_interval=20, ping_timeout=20, @@ -345,7 +344,6 @@ async def connect(self) -> None: url, additional_headers={ "Authorization": f"Bearer {self.api_key}", - "OpenAI-Beta": "realtime=v1", }, # Keep the connection alive on long conversational pauses; a # dropped WS mid-call is the single most common failure on @@ -360,7 +358,14 @@ async def connect(self) -> None: response = await self._ws.recv() data = json.loads(response) if data.get("type") != "session.created": - raise RuntimeError(f"Expected session.created, got {data.get('type')}") + # Surface the actual server-side error so callers see the + # OpenAI message (auth, model not available, quota, etc.) + # rather than the bare "got error" wrapper. + err = data.get("error") or {} + msg = err.get("message") or err.get("code") or str(data) + raise RuntimeError( + f"Expected session.created, got {data.get('type')!r}: {msg}" + ) await self._ws.send( json.dumps( @@ -404,7 +409,6 @@ async def open_parked_connection(self): # type: ignore[no-untyped-def] url, additional_headers={ "Authorization": f"Bearer {self.api_key}", - "OpenAI-Beta": "realtime=v1", }, ping_interval=20, ping_timeout=20, @@ -415,7 +419,11 @@ async def open_parked_connection(self): # type: ignore[no-untyped-def] response = await asyncio.wait_for(ws.recv(), timeout=2.0) data = json.loads(response) if data.get("type") != "session.created": - raise RuntimeError(f"Expected session.created, got {data.get('type')}") + err = data.get("error") or {} + msg = err.get("message") or err.get("code") or str(data) + raise RuntimeError( + f"Expected session.created, got {data.get('type')!r}: {msg}" + ) await ws.send( json.dumps( { @@ -644,28 +652,35 @@ async def cancel_response(self) -> None: """ if self._ws is None: return - if self._current_response_item_id: - audio_end_ms = self._current_response_audio_ms - if self._current_response_first_audio_at is not None: - # Cap by wall-clock playback time. Subtracting from the - # generated total keeps audio_end_ms ≥ 0 and ≤ generated_ms. - elapsed_ms = int( - (time.monotonic() - self._current_response_first_audio_at) * 1000 - ) - audio_end_ms = min(audio_end_ms, max(elapsed_ms, 0)) - try: - await self._ws.send( - json.dumps( - { - "type": "conversation.item.truncate", - "item_id": self._current_response_item_id, - "content_index": 0, - "audio_end_ms": audio_end_ms, - } - ) + if not self._current_response_item_id: + # No response in flight — nothing to cancel. OpenAI Realtime + # GA rejects unconditional ``response.cancel`` with + # ``response_cancel_not_active``, which surfaces as ERROR-level + # log spam on every phantom VAD ``speech_started`` (echo of + # agent audio, voicemail beep, line noise). Silent no-op here + # keeps the cancel idempotent across stale callers. + return + audio_end_ms = self._current_response_audio_ms + if self._current_response_first_audio_at is not None: + # Cap by wall-clock playback time. Subtracting from the + # generated total keeps audio_end_ms ≥ 0 and ≤ generated_ms. + elapsed_ms = int( + (time.monotonic() - self._current_response_first_audio_at) * 1000 + ) + audio_end_ms = min(audio_end_ms, max(elapsed_ms, 0)) + try: + await self._ws.send( + json.dumps( + { + "type": "conversation.item.truncate", + "item_id": self._current_response_item_id, + "content_index": 0, + "audio_end_ms": audio_end_ms, + } ) - except Exception as exc: # pragma: no cover - logger.debug("conversation.item.truncate failed: %s", exc) + ) + except Exception as exc: # pragma: no cover + logger.debug("conversation.item.truncate failed: %s", exc) await self._ws.send(json.dumps({"type": "response.cancel"})) # Reset per-response tracking so subsequent audio chunks (post-cancel # late frames) and the next response.create start clean. @@ -691,6 +706,21 @@ async def send_text(self, text: str) -> None: ) await self._ws.send(json.dumps({"type": "response.create"})) + async def request_response(self) -> None: + """Trigger ``response.create`` with no new user item. + + Used by the Realtime stream-handler to drive a response after the + client-side hallucination filter accepts an + ``input_audio_transcription.completed`` event. The server VAD + config sets ``create_response: false`` so OpenAI no longer + auto-creates a response on every ``input_audio_buffer.committed``; + Patter is now responsible for triggering it explicitly when a + real user turn lands. + """ + if self._ws is None: + return + await self._ws.send(json.dumps({"type": "response.create"})) + async def send_first_message(self, text: str) -> None: """Make the AI speak ``text`` as its opening line. diff --git a/libraries/python/getpatter/providers/openai_realtime_2.py b/libraries/python/getpatter/providers/openai_realtime_2.py new file mode 100644 index 00000000..fb73ac50 --- /dev/null +++ b/libraries/python/getpatter/providers/openai_realtime_2.py @@ -0,0 +1,775 @@ +"""OpenAI Realtime adapter for the GA Realtime API (``gpt-realtime-2``). + +``gpt-realtime-2`` is served from the same ``wss://api.openai.com/v1/realtime`` +endpoint as the v1-beta family, but the GA endpoint: + +- REJECTS the legacy ``OpenAI-Beta: realtime=v1`` header. +- REQUIRES ``session.type == "realtime"`` at the root of ``session.update``. +- Uses ``output_modalities`` (was ``modalities``). +- Nests audio config under ``audio.{input,output}`` with MIME ``type`` + strings (``audio/pcm``) instead of the v1 enum strings (``g711_ulaw``, + ``pcm16``) and moves ``voice`` under ``audio.output.voice``, + ``transcription`` + ``turn_detection`` under ``audio.input``. + +Everything ELSE (event names, audio delta dispatch, barge-in / truncate +semantics, tool calling) is API-compatible with the v1 family — modulo a +small set of renamed events the GA API ships — so this adapter subclasses +:class:`OpenAIRealtimeAdapter` and overrides only :meth:`connect`, +:meth:`send_audio`, :meth:`send_first_message`, and the event-translation +layer. The runtime behaviour (``cancel_response``, ``send_text``, +``send_function_result``, ``close``) is inherited unchanged. + +Note on audio transport +----------------------- +The GA endpoint accepts only PCM-16-LE with rate >= 24000 for both +``session.audio.input.format`` and ``session.audio.output.format``. +The ``audio/pcmu`` MIME type is accepted at the protocol level but the +server's audio engine silently drops mulaw frames — ``input_audio_buffer.commit`` +returns "buffer only has 0.00ms of audio" and the call ends up muted. +Until OpenAI documents native g711_ulaw on the GA endpoint we transcode +on both directions on the Patter side: + +- Inbound (Twilio/Telnyx → model): mulaw 8 kHz → PCM 24 kHz +- Outbound (model → Twilio/Telnyx): PCM 24 kHz → mulaw 8 kHz + +The outbound path uses a stateful two-stage resampler (24k → 16k → 8k) +so phase carries across chunk boundaries and eliminates the click artefact +that a stateless helper would produce at every audio-delta boundary. +""" + +from __future__ import annotations + +import asyncio +import base64 +import json +import logging +import struct +from typing import Any, AsyncGenerator + +import websockets + +from getpatter.audio.transcoding import ( + StatefulResampler, + mulaw_to_pcm16, + pcm16_to_mulaw, +) +from getpatter.providers.openai_realtime import ( + OpenAIRealtimeAdapter, + OpenAIRealtimeVADType, + OpenAITranscriptionModel, +) + +logger = logging.getLogger("getpatter.openai_realtime_2") + +__all__ = ["OpenAIRealtime2Adapter"] + +# --------------------------------------------------------------------------- +# GA event name translation +# --------------------------------------------------------------------------- +# Mapping from GA Realtime event names back to the v1 names the rest of +# Patter (StreamHandler, metrics, dashboard) listens for. The GA API +# renamed several events but kept payload shapes identical, so we can +# translate at the WebSocket boundary and reuse the v1 event handler +# untouched. +_GA_TO_V1_EVENT_NAMES: dict[str, str] = { + "response.output_audio.delta": "response.audio.delta", + "response.output_audio.done": "response.audio.done", + "response.output_audio_transcript.delta": "response.audio_transcript.delta", + "response.output_audio_transcript.done": "response.audio_transcript.done", +} + +# 20 ms of mulaw at 8 kHz = 160 bytes. Splitting large GA deltas into +# 160-byte frames gives the StreamHandler → bridge.send_audio chain the +# natural cadence it expects. +_MULAW_FRAME_BYTES = 160 + +# Gain boost applied to inbound telephony audio before upsampling to 24 kHz. +# The GA server VAD is calibrated against studio-quality 24 kHz audio; +# telephony-band mulaw typically sits at ~-12 dB peak relative to that. +# 2x gain lifts the signal into the VAD's expected range so speech_started +# fires reliably on phone-band input. +_INBOUND_GAIN = 2 + + +class OpenAIRealtime2Adapter(OpenAIRealtimeAdapter): + """Realtime WebSocket adapter speaking OpenAI's GA Realtime API. + + Subclasses :class:`OpenAIRealtimeAdapter` and overrides: + + - :meth:`connect` — omits ``OpenAI-Beta`` header; sends GA-shape + ``session.update`` with nested ``audio.{input,output}`` and + ``output_modalities``. + - :meth:`send_audio` — transcodes inbound mulaw 8 kHz → PCM 24 kHz + before appending to the input audio buffer. + - :meth:`receive_events` — translates GA event names back to v1 names + and decodes outbound PCM 24 kHz → mulaw 8 kHz in 20 ms slices. + - :meth:`send_first_message` — uses ``output_modalities`` and re-injects + ``audio.output.voice`` for the first response.create. + + Everything else (``cancel_response``, ``send_text``, + ``send_function_result``, ``close``) is inherited unchanged. + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + # Stateful two-stage outbound resampler: 24k → 16k → 8k. + # Created lazily on the first audio delta so each session has its own state. + self._outbound_resampler_24to16: StatefulResampler | None = None + self._outbound_resampler_16to8: StatefulResampler | None = None + # Last 8 kHz input sample carried across chunk boundaries for the + # direct 3x linear upsample. The carry guarantees the first output of + # each chunk interpolates from the real preceding sample, not from a + # replicated first sample — without it every 20 ms Twilio frame + # boundary becomes a small DC step that the GA server VAD interprets + # as constant low-energy noise. + self._inbound_8k_carry: int | None = None + + # ------------------------------------------------------------------ + # Private helpers + # ------------------------------------------------------------------ + + def _build_ga_session_config(self) -> dict[str, Any]: + """Build the GA-shape session.update body.""" + # The GA endpoint requires audio/pcm with rate >= 24000 for both + # directions. mulaw is not honoured by the audio engine even though + # the protocol accepts the MIME type. + fmt: dict[str, Any] = {"type": "audio/pcm", "rate": 24000} + config: dict[str, Any] = { + "type": "realtime", + "output_modalities": self.modalities or ["audio"], + "audio": { + "input": { + "format": fmt, + "transcription": { + "model": self.input_audio_transcription_model + or OpenAITranscriptionModel.WHISPER_1.value, + }, + # VAD threshold raised back to the OpenAI default (0.5) + # on 2026-05-22. The earlier 0.1 tuning (motivated by + # the upsampled telephony-band loss in high frequencies) + # made the server VAD trigger on the carrier-loopback + # echo of the agent's OWN outbound audio in PSTN no-AEC + # scenarios. Combined with the default + # ``turn_detection.create_response: true``, every phantom + # ``speech_started`` ended a turn early and auto-created + # a new response that the agent immediately spoke over, + # leading to a runaway loop where the first message was + # repeatedly cut and re-generated. + "turn_detection": { + "type": self.vad_type or OpenAIRealtimeVADType.SERVER_VAD.value, + "threshold": 0.5, + "prefix_padding_ms": 300, + "silence_duration_ms": self.silence_duration_ms, + # Defer ``response.create`` to the application: when + # OpenAI's server VAD commits an + # ``input_audio_buffer.committed`` segment that turns + # out to be a Whisper hallucination on silence/echo, + # auto-creating a response would generate a phantom + # turn (the model reads the hallucinated text as user + # input). Patter triggers ``response.create`` + # explicitly in the Realtime stream-handler AFTER + # validating ``transcript_input`` against the + # hallucination filter. Pair with + # ``interrupt_response: false`` so server VAD also + # leaves in-flight responses alone — barge-in is + # gated client-side. + "create_response": False, + "interrupt_response": False, + }, + }, + "output": { + "format": fmt, + "voice": self.voice, + }, + }, + "instructions": self.instructions + or f"You are a helpful voice assistant. Respond in {self.language}. Be concise and natural.", + } + if self.temperature is not None: + config["temperature"] = self.temperature + if self.max_response_output_tokens is not None: + config["max_output_tokens"] = self.max_response_output_tokens + if self.tool_choice is not None: + config["tool_choice"] = self.tool_choice + if self.reasoning_effort is not None: + config["reasoning"] = {"effort": self.reasoning_effort} + if self.tools: + config["tools"] = [self._build_tool_wire_format(t) for t in self.tools] + return config + + def _transcode_inbound_mulaw8_to_pcm24(self, mulaw: bytes) -> bytes: + """mulaw 8 kHz → PCM-16-LE 24 kHz via direct 3x linear interpolation. + + For every consecutive pair of 8 kHz samples (s_a, s_b) we emit three + 24 kHz samples:: + + out_0 = s_a + out_1 = round(2/3·s_a + 1/3·s_b) + out_2 = round(1/3·s_a + 2/3·s_b) + + A one-sample carry across chunk boundaries eliminates the DC step at + every 20 ms Twilio frame boundary that otherwise causes the GA server + VAD to read constant low-energy noise and never fire speech_started. + The first chunk (no carry yet) loses 3 output samples at the leading + edge (~375 µs), which is well below any audible artefact and well + below the VAD's 300 ms prefix-padding window. + + A 2x gain boost lifts telephony-band audio (~-12 dB peak) into the + range the GA VAD was calibrated against. Int16 values are clamped to + ±32767 to avoid wrap-around. + """ + pcm8 = mulaw_to_pcm16(mulaw) + num_samples = len(pcm8) // 2 + if num_samples == 0: + return b"" + + # Unpack all 8 kHz samples at once and apply gain. + samples8 = [ + max( + -32768, + min(32767, struct.unpack_from(" bytes: + """Base64 PCM-16-LE 24 kHz → mulaw 8 kHz. + + Uses a stateful two-stage resampler (24k → 16k → 8k) to eliminate + boundary clicks. The 16k→8k stage uses audioop's built-in anti-alias + filter which removes energy above 4 kHz before decimation, preventing + aliasing artefacts that a direct 3:1 decimator would produce on the + voice content emitted by gpt-realtime-2. + """ + if self._outbound_resampler_24to16 is None: + self._outbound_resampler_24to16 = StatefulResampler( + src_rate=24000, dst_rate=16000 + ) + self._outbound_resampler_16to8 = StatefulResampler( + src_rate=16000, dst_rate=8000 + ) + pcm24 = base64.b64decode(delta_b64) + pcm16 = self._outbound_resampler_24to16.process(pcm24) + pcm8 = self._outbound_resampler_16to8.process(pcm16) # type: ignore[union-attr] + if not pcm8: + return b"" + return pcm16_to_mulaw(pcm8) + + def _translate_ga_event(self, raw: str) -> list[str]: + """Translate a raw GA JSON frame to a list of v1-compatible JSON frames. + + For ``response.output_audio.delta`` frames the outbound PCM 24 kHz + audio is transcoded to mulaw 8 kHz and split into 20 ms slices + (160 bytes each), each yielded as a separate ``response.audio.delta`` + frame. All other GA-renamed events are rewritten to their v1 name. + Returns the unmodified raw string if no translation is needed. + """ + try: + data = json.loads(raw) + except Exception: + return [raw] + + event_type = data.get("type", "") + + if event_type == "response.output_audio.delta": + delta_b64: str = data.get("delta", "") + if not isinstance(delta_b64, str): + return [raw] + mulaw = self._transcode_outbound_pcm24_to_mulaw8(delta_b64) + if not mulaw: + return [] # resampler warmup — no output yet + frames: list[str] = [] + for off in range(0, len(mulaw), _MULAW_FRAME_BYTES): + chunk = mulaw[off : off + _MULAW_FRAME_BYTES] + frame = dict(data) + frame["type"] = "response.audio.delta" + frame["delta"] = base64.b64encode(chunk).decode("ascii") + frames.append(json.dumps(frame)) + return frames + + v1_name = _GA_TO_V1_EVENT_NAMES.get(event_type) + if v1_name is not None: + data["type"] = v1_name + return [json.dumps(data)] + + return [raw] + + # ------------------------------------------------------------------ + # Overridden public methods + # ------------------------------------------------------------------ + + async def connect(self) -> None: + """Connect to the GA Realtime endpoint and apply the GA session config. + + Differences from the v1 ``connect()``: + + - Header ``OpenAI-Beta: realtime=v1`` is OMITTED. + - ``session.update`` uses the GA shape: nested ``audio.{input,output}``, + ``output_modalities``, ``session.type == "realtime"``. + - Surfaces real GA-side rejection errors (``invalid_model``, + ``missing_required_parameter``) immediately instead of timing out. + """ + url = f"{self.OPENAI_REALTIME_URL}?model={self.model}" + self._ws = await websockets.connect( + url, + additional_headers={ + "Authorization": f"Bearer {self.api_key}", + }, + ping_interval=20, + ping_timeout=20, + ) + self._running = True + + try: + # Wait for session.created. + raw = await asyncio.wait_for(self._ws.recv(), timeout=15.0) + data = json.loads(raw) + if data.get("type") == "error": + err = data.get("error") or {} + msg = err.get("message") or err.get("code") or str(data) + raise RuntimeError(f"OpenAI Realtime 2 setup error: {msg}") + if data.get("type") != "session.created": + err = data.get("error") or {} + msg = err.get("message") or err.get("code") or str(data) + raise RuntimeError( + f"Expected session.created, got {data.get('type')!r}: {msg}" + ) + + await self._ws.send( + json.dumps( + { + "type": "session.update", + "session": self._build_ga_session_config(), + } + ) + ) + + # Wait for session.updated, surface any error immediately. + await self._await_session_updated_ga() + + except Exception: + await self._ws.close() + self._ws = None + self._running = False + raise + + async def _await_session_updated_ga(self) -> None: + """Wait for ``session.updated``, raising on ``error`` events.""" + deadline = asyncio.get_event_loop().time() + self._SESSION_UPDATE_TIMEOUT + while True: + remaining = deadline - asyncio.get_event_loop().time() + if remaining <= 0: + logger.warning( + "OpenAI Realtime 2: no session.updated received after %.1fs; " + "continuing anyway", + self._SESSION_UPDATE_TIMEOUT, + ) + return + try: + raw = await asyncio.wait_for(self._ws.recv(), timeout=remaining) + except TimeoutError: + logger.warning( + "OpenAI Realtime 2: no session.updated received after %.1fs; " + "continuing anyway", + self._SESSION_UPDATE_TIMEOUT, + ) + return + try: + data = json.loads(raw) + except Exception: + continue + if data.get("type") == "session.updated": + return + if data.get("type") == "error": + err = data.get("error") or {} + msg = err.get("message") or err.get("code") or str(data) + raise RuntimeError(f"OpenAI Realtime 2 setup error: {msg}") + # Any other event gets buffered for the normal receive loop. + self._pending_events.append(raw) + + async def open_parked_connection(self): # type: ignore[no-untyped-def] + """Open a fresh GA Realtime WS during ringing, prime + ``session.update`` / ``session.updated``, and return the OPEN + socket WITHOUT taking it on ``self._ws``. + + Used by the prewarm pipeline to park a Realtime connection + during the carrier ringing window so the per-call StreamHandler + can adopt a fully-primed session at carrier ``start`` — + eliminating the TCP + TLS + HTTP-101 + ``session.update`` ack + round-trip from the critical path. Saves ~300-600 ms of + first-audible-word latency on outbound. + + Bounded by 8 s (matches the legacy v1 adapter). Raises on + timeout / handshake failure / GA-side rejection — the prewarm + pipeline treats any error as a cache miss and the call falls + through to the cold :meth:`connect` path. + + Billing safety: confirmed by OpenAI's Managing Realtime Costs + guide — ``session.update`` does NOT invoke the model and bills + no tokens. An idle parked socket costs $0. Call-completion / + no-answer paths drain the slot via ``_close_parked_slot``. + + Override of the legacy v1 adapter's parker so the GA shape + (``session.type == "realtime"``, ``output_modalities``, nested + ``audio.{input,output}``) is sent instead of the v1-beta flat + shape. + """ + url = f"{self.OPENAI_REALTIME_URL}?model={self.model}" + # Aggressive ping cadence on the parked socket. OpenAI's GA + # Realtime endpoint closes idle sockets within ~5-7 s when no + # frames are seen — the protocol-level WS PING is enough to + # keep the session alive between park (~T0) and adopt (whenever + # the callee picks up, typically T+3-15 s on cellular). 4 s + # cadence guarantees at least one ping reaches the server + # before the idle-disconnect window fires. The live session + # keeps the parent's 20 / 20 default — once the call is live, + # bidirectional audio frames are themselves the keepalive. + ws = await asyncio.wait_for( + websockets.connect( + url, + additional_headers={ + "Authorization": f"Bearer {self.api_key}", + }, + ping_interval=4, + ping_timeout=4, + ), + timeout=8.0, + ) + try: + raw = await asyncio.wait_for(ws.recv(), timeout=2.0) + data = json.loads(raw) + if data.get("type") != "session.created": + err = data.get("error") or {} + msg = err.get("message") or err.get("code") or str(data) + raise RuntimeError( + f"Expected session.created on parked GA WS, " + f"got {data.get('type')!r}: {msg}" + ) + await ws.send( + json.dumps( + { + "type": "session.update", + "session": self._build_ga_session_config(), + } + ) + ) + # Drain frames until session.updated (or 1.5 s timeout). + deadline = asyncio.get_event_loop().time() + 1.5 + while True: + remaining = deadline - asyncio.get_event_loop().time() + if remaining <= 0: + break + try: + raw = await asyncio.wait_for(ws.recv(), timeout=remaining) + except Exception: + break + try: + data = json.loads(raw) + except Exception: + continue + if isinstance(data, dict) and data.get("type") == "session.updated": + break + if isinstance(data, dict) and data.get("type") == "error": + err = data.get("error") or {} + msg = err.get("message") or err.get("code") or str(data) + raise RuntimeError(f"OpenAI Realtime 2 parked-setup error: {msg}") + except Exception: + try: + await ws.close() + except Exception: + pass + raise + # Application-level keepalive. Empirically, OpenAI's GA Realtime + # edge closes idle parked sockets within ~6-7 s even with a 4 s + # WS-level ping — protocol PINGs alone are not counted as + # activity. Sending an idempotent ``session.update`` every 3 s + # is the documented "ping" pattern (re-affirms session config, + # bills no tokens) and reliably keeps the socket alive across + # the 3-15 s ringing window. Task also drains incoming acks so + # the receive buffer doesn't back-pressure the writer. Cancelled + # by :meth:`adopt_websocket` when the live adapter takes over. + keepalive_task = asyncio.create_task( + self._parked_keepalive_loop(ws), + name=f"openai-realtime-parked-keepalive:{id(ws)}", + ) + attached = False + try: + ws._parked_keepalive_task = keepalive_task # type: ignore[attr-defined] + attached = True + except Exception as exc: + keepalive_task.cancel() + logger.info("[PREWARM-KA] setattr failed: %s — task cancelled", exc) + logger.info( + "[PREWARM-KA] task scheduled attached=%s ws_id=%s", attached, id(ws) + ) + return ws + + async def _parked_keepalive_loop(self, ws) -> None: # type: ignore[no-untyped-def] + """Drain incoming frames and emit a no-op ``session.update`` + every 3 s on the parked GA Realtime WS until cancelled.""" + logger.info("[PREWARM-KA] loop started ws_id=%s", id(ws)) + next_ping = asyncio.get_event_loop().time() + 3.0 + pings_sent = 0 + try: + while True: + now = asyncio.get_event_loop().time() + wait_for = max(0.0, next_ping - now) + try: + await asyncio.wait_for(ws.recv(), timeout=wait_for) + continue + except asyncio.TimeoutError: + pass + except Exception as exc: + logger.info( + "[PREWARM-KA] recv died after %d pings: %s", + pings_sent, + exc, + ) + return + try: + await ws.send( + json.dumps( + { + "type": "session.update", + "session": self._build_ga_session_config(), + } + ) + ) + pings_sent += 1 + logger.info( + "[PREWARM-KA] sent session.update #%d ws_closed=%s", + pings_sent, + getattr(ws, "closed", "?"), + ) + except Exception as exc: + logger.info( + "[PREWARM-KA] send failed after %d pings: %s", + pings_sent, + exc, + ) + return + next_ping = asyncio.get_event_loop().time() + 3.0 + except asyncio.CancelledError: + logger.info( + "[PREWARM-KA] cancelled after %d pings (adopted or closed)", + pings_sent, + ) + raise + + def adopt_websocket(self, ws) -> None: # type: ignore[no-untyped-def] + """Adopt a pre-opened, already-``session.updated`` GA Realtime WS + produced by the prewarm pipeline. Skips the cold-connect path — + saves ~300-600 ms on first audible word. + + Caller MUST verify the WS is still alive before calling and + MUST have already received ``session.updated`` on the parked + socket. If the parked WS died between park and adopt, fall back + to :meth:`connect`. Parity with parent ``adopt_websocket`` but + explicit here so the override surfaces in the GA adapter's + public API (and so tooling that introspects the adapter sees + the method without walking the MRO). + """ + # Cancel the parked keepalive loop — the live receive_events() + # owns the WS from here on. Awaiting cancellation isn't possible + # in a sync method; the loop tolerates abrupt cancellation + # (it raises CancelledError out of its single recv()/send()). + ka = getattr(ws, "_parked_keepalive_task", None) + if ka is not None: + try: + ka.cancel() + except Exception: + pass + try: + delattr(ws, "_parked_keepalive_task") + except Exception: + pass + self._ws = ws + self._running = True + + async def send_audio(self, audio: bytes) -> None: + """Send audio to the GA Realtime API. + + Transcodes inbound mulaw 8 kHz (from Twilio/Telnyx) to PCM-16-LE + 24 kHz before appending to the input audio buffer. The GA server's + audio engine ignores mulaw frames even though it accepts ``audio/pcmu`` + at the protocol level — raw mulaw results in "buffer only has 0.00ms + of audio" and a muted call. + """ + if self._ws is None: + return + pcm24 = self._transcode_inbound_mulaw8_to_pcm24(audio) + if not pcm24: + return + encoded = base64.b64encode(pcm24).decode("ascii") + await self._ws.send( + json.dumps({"type": "input_audio_buffer.append", "audio": encoded}) + ) + + async def receive_events(self) -> AsyncGenerator[tuple[str, Any], None]: + """Yield events from the GA Realtime API, translating event names to v1. + + Outbound audio deltas (``response.output_audio.delta``) are: + 1. Transcoded from PCM 24 kHz → mulaw 8 kHz. + 2. Split into 20 ms / 160-byte slices and emitted as individual + ``("audio", bytes)`` events so StreamHandler's cadence is + preserved. + + Other GA-renamed events are translated to their v1 equivalents + before dispatch. + """ + if self._ws is None: + return + + import websockets.exceptions as _ws_exc + + async def _iter_raw(): + while self._pending_events: + yield self._pending_events.popleft() + async for msg in self._ws: + yield msg + + try: + async for raw in _iter_raw(): + # Translate GA event names / audio format. + translated_frames = self._translate_ga_event(raw) + for frame in translated_frames: + # Delegate actual event parsing to a helper so we don't + # duplicate the full dispatch table from the parent class. + async for event in self._dispatch_frame(frame): + yield event + except _ws_exc.ConnectionClosed as exc: + if self._running and getattr(exc, "code", 1000) != 1000: + yield ( + "error", + { + "type": "connection_closed", + "code": getattr(exc, "code", None), + "reason": getattr(exc, "reason", ""), + }, + ) + finally: + self._running = False + + async def _dispatch_frame(self, raw: str) -> AsyncGenerator[tuple[str, Any], None]: + """Parse and dispatch a single (already translated) JSON frame. + + This is a subset of the parent's ``receive_events`` dispatch table, + re-used after GA→v1 name translation so we don't duplicate logic. + """ + import time as _time + + try: + data = json.loads(raw) + except Exception: + return + event_type = data.get("type", "") + + if event_type == "response.audio.delta": + audio_bytes = base64.b64decode(data.get("delta", "")) + # For GA path the audio is already mulaw 8 kHz (transcoded in + # _translate_ga_event). Use the mulaw estimator (8 bytes/ms). + self._current_response_audio_ms += len(audio_bytes) // 8 + if self._current_response_first_audio_at is None: + self._current_response_first_audio_at = _time.monotonic() + yield ("audio", audio_bytes) + + elif event_type == "response.audio_transcript.delta": + yield ("transcript_output", data.get("delta", "")) + + elif event_type in ( + "response.content_part.added", + "response.output_item.added", + ): + item = data.get("item") or {} + item_id = item.get("id") or data.get("item_id") + if item_id: + self._current_response_item_id = item_id + self._current_response_audio_ms = 0 + self._current_response_first_audio_at = None + + elif event_type == "input_audio_buffer.speech_started": + yield ("speech_started", None) + + elif event_type == "input_audio_buffer.speech_stopped": + yield ("speech_stopped", None) + + elif event_type == "conversation.item.input_audio_transcription.completed": + yield ("transcript_input", data.get("transcript", "")) + + elif event_type == "response.function_call_arguments.done": + yield ( + "function_call", + { + "call_id": data.get("call_id", ""), + "name": data.get("name", ""), + "arguments": data.get("arguments", "{}"), + }, + ) + + elif event_type == "response.done": + self._current_response_item_id = None + self._current_response_audio_ms = 0 + self._current_response_first_audio_at = None + yield ("response_done", data.get("response", {})) + + elif event_type == "error": + err = data.get("error", {}) + logger.error("OpenAI Realtime 2 error: %s", err) + yield ("error", err) + + async def send_first_message(self, text: str) -> None: + """Make the AI speak ``text`` as its opening line using GA-shape fields. + + Two differences from the v1 path: + + 1. Uses ``output_modalities`` (the GA endpoint rejects + ``response.modalities``). + 2. Re-injects ``audio.output.voice`` — the GA ``response.create`` + does NOT inherit voice from the session for this explicit request; + it falls back to the server-side default (``marin``, female) when + the field is omitted. + """ + if self._ws is None: + return + response_body: dict[str, Any] = { + "output_modalities": ["audio"], + "audio": {"output": {"voice": self.voice}}, + "instructions": ( + f"Say exactly the following sentence as your first turn " + f'and nothing else: "{text}"' + ), + } + # ``reasoning.effort`` is only accepted by the flagship GA + # variants (``gpt-realtime``, ``gpt-realtime-2``, …) — the + # cost-tier ``gpt-realtime-mini`` rejects it as "Unsupported + # option for this model". Forward the field only when the + # caller explicitly configured it. + if self.reasoning_effort is not None: + response_body["reasoning"] = {"effort": self.reasoning_effort} + await self._ws.send( + json.dumps({"type": "response.create", "response": response_body}) + ) diff --git a/libraries/python/getpatter/providers/silero_vad.py b/libraries/python/getpatter/providers/silero_vad.py index a0b813bf..9be17df8 100644 --- a/libraries/python/getpatter/providers/silero_vad.py +++ b/libraries/python/getpatter/providers/silero_vad.py @@ -212,6 +212,20 @@ def for_phone_call(cls, **overrides) -> "SileroVAD": """ defaults: dict = { "sample_rate": SileroSampleRate.HZ_16000, + # Telephony bumps the activation threshold from the upstream + # 0.5 → 0.8 (with deactivation 0.65) so background voices + # and low-volume audio in the caller's room don't trip + # barge-in. Near-mic speech typically scores 0.85-0.98 on + # Silero — above 0.8 — while a distant second speaker + # through a phone's noise-suppression pipeline lands around + # 0.4-0.6 and is now correctly ignored. Bumped twice during + # 2026-05-20 acceptance: first 0.5 → 0.7 (still triggered on + # quiet voices), then 0.7 → 0.8. Trade-off: a whispered + # legitimate input may not trigger; typical phone-call + # speakers are unaffected. Pass an explicit + # ``activation_threshold`` to override per call site. + "activation_threshold": 0.8, + "deactivation_threshold": 0.65, } defaults.update(overrides) return cls.load(**defaults) diff --git a/libraries/python/getpatter/providers/twilio_adapter.py b/libraries/python/getpatter/providers/twilio_adapter.py index 0ed71026..f8441ce3 100644 --- a/libraries/python/getpatter/providers/twilio_adapter.py +++ b/libraries/python/getpatter/providers/twilio_adapter.py @@ -6,6 +6,7 @@ import asyncio import logging +import re from functools import partial from twilio.rest import Client as TwilioClient from twilio.twiml.voice_response import VoiceResponse, Connect @@ -14,6 +15,22 @@ logger = logging.getLogger("getpatter.providers.twilio_adapter") +_PASCAL_TO_SNAKE_RE = re.compile(r"(? str: + """Translate a PascalCase / camelCase Twilio param to snake_case. + + The ``twilio-python`` SDK's ``client.calls.create(**kwargs)`` accepts + snake_case keyword arguments only — it translates them to the + PascalCase form Twilio's REST wire protocol requires. Passing a + PascalCase key directly raises ``TypeError: unexpected keyword + argument``. This helper normalises both shapes so the adapter is + robust regardless of how the caller spelled the param. + """ + return _PASCAL_TO_SNAKE_RE.sub("_", name).lower() + + class TwilioAdapter(TelephonyProvider): """:class:`TelephonyProvider` implementation backed by the Twilio REST API.""" @@ -68,7 +85,14 @@ async def initiate_call( twiml.append(connect) call_kwargs: dict = {"to": to_number, "from_": from_number, "twiml": str(twiml)} if extra_params: - call_kwargs.update(extra_params) + # Defensive normalisation: the ``twilio-python`` SDK rejects + # PascalCase kwargs (``StatusCallback``, ``MachineDetection``, + # …) with ``TypeError: unexpected keyword argument``. + # ``getpatter.client`` already builds the dict in snake_case + # form; this guard catches any third-party caller (or future + # regression) that still passes the wire-protocol spelling. + for key, value in extra_params.items(): + call_kwargs[_to_snake_case(key)] = value call = await self._run_sync(self._twilio_client.calls.create, **call_kwargs) return call.sid @@ -98,10 +122,26 @@ def record_call_end_cost(self, *, duration_seconds: float, direction: str) -> No logger.debug("record_call_end_cost failed", exc_info=True) @staticmethod - def generate_stream_twiml(stream_url: str) -> str: - """Return TwiML that connects the inbound call to the given media stream URL.""" + def generate_stream_twiml( + stream_url: str, + parameters: dict[str, str] | None = None, + ) -> str: + """Return TwiML that connects the inbound call to the media stream URL. + + ``parameters`` is forwarded as ```` + children of ````. Twilio Media Streams ignores query-string + params on the ```` (they are stripped before the WS + handshake), so ```` tags are the supported way to + pre-populate ``start.customParameters`` on the WS payload. Used by + the inbound path to carry caller / callee through to the bridge. + """ response = VoiceResponse() connect = Connect() - connect.stream(url=stream_url) + stream = connect.stream(url=stream_url) + if parameters: + for name, value in parameters.items(): + if value is None: + continue + stream.parameter(name=name, value=str(value)) response.append(connect) return str(response) diff --git a/libraries/python/getpatter/server.py b/libraries/python/getpatter/server.py index e02ac74c..7b23b723 100644 --- a/libraries/python/getpatter/server.py +++ b/libraries/python/getpatter/server.py @@ -349,6 +349,11 @@ async def _on_call_start(data): call_id_str, caller=resolved_caller, callee=resolved_callee, + direction=( + data.get("direction") + or active_record.get("direction") + or "inbound" + ), telephony_provider=data.get("telephony_provider", "") or "", provider_mode=getattr(agent, "provider", "") or "", agent=_agent_snapshot(), diff --git a/libraries/python/getpatter/services/call_log.py b/libraries/python/getpatter/services/call_log.py index 26b283a6..0c467364 100644 --- a/libraries/python/getpatter/services/call_log.py +++ b/libraries/python/getpatter/services/call_log.py @@ -104,10 +104,18 @@ def _retention_days() -> int: def _redact_mode() -> str: - raw = (os.environ.get("PATTER_LOG_REDACT_PHONE") or "mask").strip().lower() + # Default ``full`` (changed from ``mask`` on 2026-05-21): the dashboard + # UI's reveal toggle (``revealed=true`` in ``format.ts:fmtPhone``) + # cannot reconstruct a raw number once the persisted record has + # already been masked, so storing raw on disk is required for the + # toggle to actually work. The on-disk path + # (``~/Library/Application Support/patter/`` on macOS / XDG data dir + # on Linux) is user-private. Override with ``PATTER_LOG_REDACT_PHONE=mask`` + # for setups that ship logs off-host. + raw = (os.environ.get("PATTER_LOG_REDACT_PHONE") or "full").strip().lower() if raw in {"full", "mask", "hash_only"}: return raw - return "mask" + return "full" def _redact_phone(raw: str) -> str: @@ -211,6 +219,7 @@ def log_call_start( *, caller: str = "", callee: str = "", + direction: str = "", telephony_provider: str = "", provider_mode: str = "", agent: dict[str, Any] | None = None, @@ -233,6 +242,7 @@ def log_call_start( "status": "in_progress", "caller": _redact_phone(caller), "callee": _redact_phone(callee), + "direction": direction or "inbound", "telephony_provider": telephony_provider, "provider_mode": provider_mode, "agent": agent or {}, diff --git a/libraries/python/getpatter/stream_handler.py b/libraries/python/getpatter/stream_handler.py index f4b11b01..2ed4ef51 100644 --- a/libraries/python/getpatter/stream_handler.py +++ b/libraries/python/getpatter/stream_handler.py @@ -47,13 +47,42 @@ logger = logging.getLogger("getpatter") +def _is_parked_ws_alive(ws: object) -> bool: + """Best-effort liveness check across ``websockets`` library versions. + + The legacy client (``websockets<11``) exposes ``ws.closed: bool``. + The current asyncio client (``websockets>=12``) exposes ``ws.state`` + (an ``IntEnum`` with ``OPEN == 1``) and ``ws.close_code`` (``None`` + while still open). Return ``True`` only when we can confirm the + socket is OPEN — never default to True on unknown shapes, otherwise + we'd hand a dead socket to the live adapter. + """ + state = getattr(ws, "state", None) + if state is not None: + try: + return int(state) == 1 + except Exception: + return getattr(state, "name", "").upper() == "OPEN" + close_code = getattr(ws, "close_code", "__unset__") + if close_code != "__unset__": + return close_code is None + closed = getattr(ws, "closed", None) + if closed is None: + return False + return not bool(closed) + + # Minimum wall-clock duration (seconds) the agent must have been speaking # before barge-in is allowed to fire. AEC variant (1.0 s) covers the -# filter convergence window. NO_AEC variant (0.25 s) is anti-flicker -# only — used on PSTN where AEC is a no-op so there is no warmup to -# protect, and a long gate just suppresses real-user barge-in. +# filter convergence window. NO_AEC variant raised 0.1 → 0.5 s on +# 2026-05-19 after the 0.6.2 acceptance run showed a phantom VAD +# speech_start firing on the very first inbound frame, cancelling the +# prewarmed firstMessage and leaving the turn-state machine wedged +# (``_turn_already_closed=True``). 0.5 s filters those phantoms while +# still allowing real interruptions to land within half a second of +# agent onset. MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_AEC = 1.0 -MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_NO_AEC = 0.1 +MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_NO_AEC = 0.5 # Backwards-compat alias used by tests; matches AEC variant. MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN = MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_AEC @@ -66,6 +95,14 @@ # emit when fed silence or TTS echo on mulaw 8 kHz. Dropping them as turns # prevents the caller from entering a feedback loop where every silent frame # triggers a new LLM+TTS turn. Parity with TS ``HALLUCINATIONS``. +# +# Whisper-specific full-phrase hallucinations (the model's training set +# was dominated by YouTube captions — on silence / echo it falls back to +# the most common training-set closers). These fire HARD on PSTN echo +# loopback when the agent's outbound audio bleeds into the input buffer +# and the upstream VAD commits a "non-empty" segment to transcription. +# Comparison happens against the lower-cased + stripped form, so add +# the canonical lowercase spelling here. _STT_HALLUCINATIONS: frozenset[str] = frozenset( { "you", @@ -84,6 +121,22 @@ "bye", "right", "cool", + # Whisper YouTube-caption hallucinations + "thank you for watching", + "thanks for watching", + "thank you for watching!", + "thanks for watching!", + "thank you so much for watching", + "thanks for listening", + "please subscribe", + "subscribe", + "music", + "[music]", + "♪", + "[no audio]", + "[silence]", + "[blank_audio]", + "(silence)", } ) @@ -251,7 +304,7 @@ def create_metrics_accumulator( tts_model = str(getattr(agent.tts, "model", "") or "") else: tts_name = "elevenlabs" if elevenlabs_key else "" - elif provider == "openai_realtime": + elif provider in ("openai_realtime", "openai_realtime_2"): stt_name = "openai" tts_name = "openai" # Realtime collapses STT+LLM+TTS into one model — capture it so the @@ -262,7 +315,7 @@ def create_metrics_accumulator( elif provider == "elevenlabs_convai": stt_name = "elevenlabs" tts_name = "elevenlabs" - if provider == "openai_realtime": + if provider in ("openai_realtime", "openai_realtime_2"): llm_name = "openai" elif provider == "elevenlabs_convai": llm_name = "elevenlabs" @@ -744,6 +797,7 @@ def __init__( audio_format: str = "pcm16", input_transcode: str | None = None, speech_events=None, + pop_prewarmed_connections=None, ) -> None: super().__init__( agent=agent, @@ -763,6 +817,11 @@ def __init__( self._transfer_fn = transfer_fn self._hangup_fn = hangup_fn self._audio_format = audio_format + # Callback supplied by the telephony adapter so we can adopt a + # Realtime WS that ``Patter._park_provider_connections`` opened + # during the ringing window. ``None`` skips adoption — we fall + # back to a cold ``connect()``. + self._pop_prewarmed_connections = pop_prewarmed_connections # OpenAI Realtime API uses a single codec for both input and output # (``audio_format`` becomes both ``input_audio_format`` and # ``output_audio_format`` in the session). When the telephony leg @@ -902,10 +961,20 @@ async def _emit_tool_event( async def start(self) -> None: """Connect to OpenAI Realtime, register tools, and begin event forwarding.""" - from getpatter.providers.openai_realtime import ( - OpenAIRealtimeAdapter, # type: ignore[import] + # Both ``openai_realtime`` and ``openai_realtime_2`` engines now + # route through the GA-compatible ``OpenAIRealtime2Adapter`` — + # OpenAI deprecated the Beta Realtime API on 2026-05, returning + # `invalid_model` to the legacy ``session.update`` shape and the + # ``OpenAI-Beta: realtime=v1`` header. Only the default model + # string differs between the two engines (mini vs flagship); + # everything else (session shape, MIME types, event names) is + # identical and lives in the GA adapter. + from getpatter.providers.openai_realtime_2 import ( # type: ignore[import] + OpenAIRealtime2Adapter, ) + _adapter_cls = OpenAIRealtime2Adapter + # Resolve MCP servers BEFORE the adapter is built so the # discovered tools are visible in the first ``session.update``. # Failures are logged but not fatal — a dead MCP server should @@ -947,9 +1016,87 @@ async def start(self) -> None: ) if transcription_model is not None: adapter_kwargs["input_audio_transcription_model"] = transcription_model - self._adapter = OpenAIRealtimeAdapter(**adapter_kwargs) - await self._adapter.connect() - logger.debug("OpenAI Realtime connected") + self._adapter = _adapter_cls(**adapter_kwargs) + + # Try to adopt a Realtime WebSocket parked during the ringing + # window. When present we skip the cold ``connect()`` — the + # parked socket has already paid the TCP + TLS + HTTP-101 + + # ``session.update`` ack round-trip (~300-600 ms saved on first + # audible word). Fall back transparently on cache miss / dead + # socket / adapter missing ``adopt_websocket``. + parked: dict | None = None + pop_cb = self._pop_prewarmed_connections + if pop_cb is None: + logger.info( + "[PREWARM] callId=%s provider=openai_realtime SKIPPED adoption: " + "pop_prewarmed_connections callback not wired", + self.call_id, + ) + else: + try: + parked = pop_cb(self.call_id) + except Exception as exc: # noqa: BLE001 - best-effort + logger.info( + "[PREWARM] callId=%s provider=openai_realtime FAILED pop: %s", + self.call_id, + exc, + ) + parked = None + if parked is None: + logger.info( + "[PREWARM] callId=%s provider=openai_realtime no slot present " + "(cache miss / parked task still in flight)", + self.call_id, + ) + parked_realtime_ws = (parked or {}).get("openai_realtime") + adopt_ok = False + if parked_realtime_ws is not None: + adopt = getattr(self._adapter, "adopt_websocket", None) + # Liveness check robust across ``websockets`` versions. The + # legacy client exposes a ``closed`` bool, the new asyncio + # client exposes ``state`` (websockets.protocol.State enum) + # and ``close_code`` (None while OPEN). Pre-2025-04 we used + # ``getattr(ws, "closed", True)`` which defaulted to True + # when the attribute didn't exist — causing the GA-shape + # parked WS to be treated as dead and forcibly closed + # right before adoption. + ws_alive = _is_parked_ws_alive(parked_realtime_ws) + ws_closed = not ws_alive + if not callable(adopt): + logger.info( + "[PREWARM] callId=%s provider=openai_realtime adopter missing " + "adopt_websocket method", + self.call_id, + ) + elif not ws_alive: + logger.info( + "[PREWARM] callId=%s provider=openai_realtime parked WS died " + "between park and adopt (closed=%s)", + self.call_id, + ws_closed, + ) + else: + try: + adopt(parked_realtime_ws) + logger.info( + "[CONNECT] callId=%s provider=openai_realtime source=adopted ms=0", + self.call_id, + ) + adopt_ok = True + except Exception as exc: # noqa: BLE001 + logger.info( + "[PREWARM] callId=%s provider=openai_realtime adopt FAILED: %s", + self.call_id, + exc, + ) + if not adopt_ok: + try: + await parked_realtime_ws.close() + except Exception: + pass + if not adopt_ok: + await self._adapter.connect() + logger.debug("OpenAI Realtime connected (adapter=%s)", _adapter_cls.__name__) if self.agent.first_message: # Start measuring latency for the firstMessage turn (sendText → @@ -1020,6 +1167,24 @@ async def _forward_events(self) -> None: elif ev_type == "transcript_input": logger.debug("User: %s", sanitize_log_value(ev_data)) + # Filter known Whisper-on-silence hallucinations. The + # Realtime API's input_audio_transcription is Whisper, + # and Whisper's training-set bias means PSTN echo / + # silence segments often transcribe as + # "Thank you for watching." / "Thanks for watching." / + # "[music]" etc. — feeding those back to the LLM + # produces phantom user turns the caller never spoke. + _ev_stripped = ( + (ev_data or "").strip().rstrip(".,!?;: ").strip().lower() + ) + if _ev_stripped in _STT_HALLUCINATIONS or not _ev_stripped: + logger.info( + "Realtime transcript_input dropped (likely " + "Whisper hallucination on silence/echo): %r", + sanitize_log_value((ev_data or "")[:60]), + ) + self._user_transcript_pending = False + continue if self.metrics is not None: # Fallback: start turn here if speech_stopped was missed # (server VAD disabled or custom config). @@ -1048,6 +1213,20 @@ async def _forward_events(self) -> None: "history": list(self.conversation_history), } ) + # Drive the assistant response. The session config sets + # ``turn_detection.create_response: false`` so OpenAI's + # server VAD no longer auto-creates a response on every + # ``input_audio_buffer.committed`` — that path triggers + # phantom assistant turns on Whisper-hallucinated input + # ("Thank you for watching." etc.). Patter now requests + # the response explicitly here, AFTER the + # hallucination filter accepts the transcript above. + request_response = getattr(self._adapter, "request_response", None) + if callable(request_response): + try: + await request_response() + except Exception as exc: # noqa: BLE001 + logger.debug("Realtime request_response failed: %s", exc) # User transcript landed — flush any assistant turn # that was buffered waiting for it. self._user_transcript_pending = False @@ -1084,6 +1263,33 @@ async def _forward_events(self) -> None: current_agent_text += response_text elif ev_type == "speech_started": + # Gate the cancel/flush path with an anti-flicker window + # similar to the pipeline mode. OpenAI's server VAD + # fires ``speech_started`` on echo of the agent's own + # audio in PSTN no-AEC scenarios (carrier loopback + # feeds our outbound mulaw back into the input buffer). + # Without this gate every phantom ``speech_started`` + # cancels the response — most visibly, the + # firstMessage gets truncated mid-sentence. + # + # ``OpenAIRealtimeStreamHandler`` doesn't carry the + # full pipeline TTS-tracking state (no + # ``_is_speaking`` / ``_first_audio_sent_at``), so + # we use the adapter's own response-tracking + # attributes as a proxy. + response_started_at = getattr( + self._adapter, + "_current_response_first_audio_at", + None, + ) + if response_started_at is not None: + elapsed = time.monotonic() - response_started_at + if elapsed < MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_NO_AEC: + logger.info( + "Realtime barge-in suppressed (response < gate, %.2fs)", + elapsed, + ) + continue await self.audio_sender.send_clear() await self._adapter.cancel_response() if self.metrics is not None: @@ -1814,6 +2020,13 @@ def __init__( # generic ``audio_*`` marks the Realtime path sends so the two paths # can coexist without name collisions. self._first_message_mark_counter: int = 0 + # Cached result of ``_is_tts_output_format_native_for_carrier()`` + # — settled once at ``start()`` time after ``set_telephony_carrier`` + # has run on the TTS adapter. ``True`` means + # ``_encode_pipeline_audio`` can take the bypass path (raw bytes + # → base64, no resample/encode). Parity with TS + # ``StreamHandler.ttsOutputFormatNativeForCarrier``. + self._tts_output_format_native_for_carrier: bool = False async def start(self) -> None: """Initialize STT/TTS providers, hooks, and start the STT receive loop.""" @@ -1862,6 +2075,25 @@ async def start(self) -> None: "TTS set_telephony_carrier failed; using construction-time format", exc_info=True, ) + # Re-evaluate after set_telephony_carrier so the _encode_pipeline_audio + # fast path is enabled for the current carrier when the adapter + # auto-flipped (or the user constructed with a native format). + # Parity with TS ``StreamHandler.ttsOutputFormatNativeForCarrier``. + self._tts_output_format_native_for_carrier = ( + self._is_tts_output_format_native_for_carrier() + ) + if self._tts_output_format_native_for_carrier: + logger.debug( + "TTS outputFormat matches %s wire codec — bypassing client-side transcode", + "twilio" if self._for_twilio else "telnyx", + ) + # Flip the audio sender into pass-through mode so it stops + # transcoding (16 kHz PCM → mulaw) bytes that are already in + # the carrier's wire format. Mirrors the ConvAI handler's + # ``_native_mulaw_8k`` fast-path and TS ``encodePipelineAudio`` + # bypass. Parity with TS ``StreamHandler.ttsOutputFormatNativeForCarrier``. + if hasattr(self.audio_sender, "_input_is_mulaw_8k"): + self.audio_sender._input_is_mulaw_8k = True # type: ignore[attr-defined] if self._stt is None: logger.warning("Pipeline mode: no STT configured") @@ -2696,6 +2928,22 @@ async def _do_cancel_for_barge_in(self, transcript_text: str) -> None: cancel_event = getattr(self, "_llm_cancel_event", None) if cancel_event is not None: cancel_event.set() + # Force-close any in-flight TTS streaming socket. Without this, + # the firstMessage live ``synthesize`` path (used when the prewarm + # accumulator hadn't completed before pickup) would block on its + # inner ``await ws.recv()`` for up to ``frame_timeout`` (30 s) — + # ``_init_pipeline`` would never return, the STT ``on_transcript`` + # callback would never register, and every subsequent user turn + # would be silently dropped. Provider-duck-typed: adapters that + # don't expose ``cancel_active_stream`` are no-ops here. + # Parity with TS ``StreamHandler.cancelSpeaking``. + _tts = getattr(self, "_tts", None) + _cancel_fn = getattr(_tts, "cancel_active_stream", None) + if callable(_cancel_fn): + try: + _cancel_fn() + except Exception as _exc: + logger.debug("TTS cancel_active_stream raised: %s", _exc) try: await self.audio_sender.send_clear() except Exception as exc: @@ -3438,6 +3686,28 @@ async def _flush_inbound_audio_ring(self) -> None: replayed * 20, ) + def _is_tts_output_format_native_for_carrier(self) -> bool: + """Return True when the TTS adapter's output_format is already in the + carrier's wire codec — meaning no client-side resample/transcode is + needed in ``TwilioAudioSender.send_audio``. + + Twilio expects ``ulaw_8000``; Telnyx expects ``pcm_16000``. Anything + else goes through the normal resample-and-encode path. + + Parity with TS ``StreamHandler.isTtsOutputFormatNativeForCarrier``. + """ + if self._tts is None: + return False + fmt = getattr(self._tts, "output_format", None) + if not isinstance(fmt, str): + return False + carrier = "twilio" if self._for_twilio else "telnyx" + if carrier == "twilio": + return fmt == "ulaw_8000" + if carrier == "telnyx": + return fmt == "pcm_16000" + return False + # 40 ms @ 16 kHz mono PCM16 = 1280 bytes. Sized to mirror the smallest # live-TTS chunk boundary so cancel granularity (mark/clear bookkeeping) # is identical regardless of whether the firstMessage came from the @@ -3455,6 +3725,13 @@ async def _flush_inbound_audio_ring(self) -> None: # deadlock window when a carrier (or a test double) never echoes — # playout may glitch by one chunk on timeout but the call stays alive. _MARK_AWAIT_TIMEOUT_S: float = 0.5 + # Bytes-per-millisecond for a 16 kHz PCM16 mono stream. Used by + # ``_send_paced_first_message_bytes`` to translate chunk size into a + # playout-duration sleep so we never deliver faster than the carrier + # can decode + play out (which manifested as severe crackling on the + # HTTP-TTS path with client-side resampling). 16000 samples/sec × 2 + # bytes/sample = 32 bytes/ms. + _PCM16_16K_BYTES_PER_MS: int = 32 def _drain_pending_marks(self) -> None: """Resolve every entry in ``_pending_marks`` and empty the FIFO. @@ -3584,20 +3861,18 @@ async def _send_paced_first_message_bytes(self, bytes_: bytes) -> bool: self._drain_pending_marks() self._first_message_mark_counter = 0 first_chunk_sent = False - # Burst delivery: send all chunks back-to-back, exactly like the live - # TTS path (synthesize_sentence / first_message live fallback). - # Twilio explicitly accepts "media messages of any size" — frames - # are "buffered and played in the order received" by the carrier- - # side media server, which is the source of truth for the 8 kHz - # playout clock. Earlier revisions paced each chunk by - # ``playout_ms`` via ``asyncio.sleep`` to "throttle to the playout - # rate", but the cumulative ``_wait_for_mark_window`` wait pushed - # effective delivery BELOW Twilio's playout rate on long intros - # (the prewarm cache is typically 2-4 s of audio), producing - # periodic carrier-side buffer underruns audible to the caller as - # slow, gravelly, intermittent playback. Marks are still emitted - # per chunk so a barge-in's ``send_clear`` still has fine-grained - # granularity to cut. + # Once the mark window is first filled we switch to playout-time + # pacing to prevent batch-ACK bursts from draining the carrier + # jitter buffer. Before that we send in burst so the first + # ``_FIRST_MESSAGE_MARK_WINDOW`` chunks pre-fill the PSTN jitter + # buffer (250–1500 ms). The earlier experiment of pure-burst + # delivery (no per-chunk sleep) produced severe carrier-side + # crackling on the HTTP TTS path (pcm_16000 → mulaw_8000 client- + # side resample) because the burst arrived at Twilio faster than + # its media-stream decoder could process — even though the docs + # say "of any size". The pace-by-playout path is the robust + # default; mark back-pressure remains as an extra guard. + initial_fill_complete = False for i in range(0, len(bytes_), self._PREWARM_CHUNK_BYTES): if not self._is_speaking: break # barge-in mid-buffer — stop now @@ -3611,11 +3886,44 @@ async def _send_paced_first_message_bytes(self, bytes_: bytes) -> bool: self._aec.push_far_end(chunk) await self.audio_sender.send_audio(chunk) self._mark_first_audio_sent() - await self._send_mark_awaitable() + mark_awaitable = await self._send_mark_awaitable() + if ( + not initial_fill_complete + and len(self._pending_marks) >= self._FIRST_MESSAGE_MARK_WINDOW + ): + initial_fill_complete = True + # Telnyx has no mark concept — always pace by playout time. + # Twilio: the first ``_FIRST_MESSAGE_MARK_WINDOW`` chunks go + # out in burst to pre-fill the PSTN jitter buffer, then + # playout-time pacing kicks in (via the sticky + # ``initial_fill_complete`` flag) to prevent batch-ACK bursts + # from draining the buffer → crackling. + if mark_awaitable is None or initial_fill_complete: + playout_ms = max( + 1, + len(chunk) // self._PCM16_16K_BYTES_PER_MS, + ) + await asyncio.sleep(playout_ms / 1000.0) return first_chunk_sent async def cleanup(self) -> None: """Cancel the STT loop and close STT/TTS/remote-message adapters.""" + # Abort any in-flight LLM stream and close any in-flight TTS WS so + # the run_pipeline_llm / synthesize awaits unblock immediately + # instead of waiting up to 30 s for their own watchdog timers. + # Without this, the carrier's stop event ends the call but a + # pending TTS WS frame-wait fires a stale "LLM loop error" / + # "TTS streaming error" log line tens of seconds later. Parity + # with TS ``StreamHandler.handleStop`` / ``handleWsClose``. + cancel_event = getattr(self, "_llm_cancel_event", None) + if cancel_event is not None: + cancel_event.set() + _tts_cancel = getattr(getattr(self, "_tts", None), "cancel_active_stream", None) + if callable(_tts_cancel): + try: + _tts_cancel() + except Exception: + pass # Drop any pending barge-in timeout BEFORE we tear down metrics / # adapters. Without this, a call that ends while a barge-in is # pending leaves an asyncio.Task scheduled to fire diff --git a/libraries/python/getpatter/telephony/telnyx.py b/libraries/python/getpatter/telephony/telnyx.py index 2d7dc8f1..4f9b5a37 100644 --- a/libraries/python/getpatter/telephony/telnyx.py +++ b/libraries/python/getpatter/telephony/telnyx.py @@ -402,8 +402,9 @@ async def telnyx_stream_bridge( # 8 kHz to match the `streaming_start` PCMU bidirectional # stream — forward bytes as-is. Pipeline and ConvAI still # produce PCM16 that Telnyx accepts when L16 is negotiated. - _input_is_mulaw = ( - getattr(agent, "provider", "openai_realtime") == "openai_realtime" + _input_is_mulaw = getattr(agent, "provider", "openai_realtime") in ( + "openai_realtime", + "openai_realtime_2", ) audio_sender = TelnyxAudioSender( websocket, input_is_mulaw_8k=_input_is_mulaw @@ -623,6 +624,7 @@ async def _telnyx_stop_recording() -> None: # 20 ms → PCMU 8 kHz. OpenAI Realtime with this # codec forwards bytes pass-through on both legs. audio_format="g711_ulaw", + pop_prewarmed_connections=pop_prewarmed_connections, ) # Inherit patter.side from the parent Patter instance so all diff --git a/libraries/python/getpatter/telephony/twilio.py b/libraries/python/getpatter/telephony/twilio.py index 4b8f34c3..075f2508 100644 --- a/libraries/python/getpatter/telephony/twilio.py +++ b/libraries/python/getpatter/telephony/twilio.py @@ -9,7 +9,6 @@ import re import time from collections import deque -from urllib.parse import quote from getpatter.observability.attributes import patter_call_scope from getpatter.stream_handler import ( @@ -91,11 +90,15 @@ def twilio_webhook_handler( # Lazy import — provider adapter may be created by the parallel agent from getpatter.providers.twilio_adapter import TwilioAdapter # type: ignore[import] - stream_url = ( - f"wss://{webhook_base_url}/ws/stream/{call_sid}" - f"?caller={quote(caller)}&callee={quote(callee)}" + # Twilio Media Streams strips the query string from ```` + # before opening the WS, so caller/callee must travel as + # ```` children — the bridge then reads them from + # ``start.customParameters`` on the WS ``start`` frame. + stream_url = f"wss://{webhook_base_url}/ws/stream/{call_sid}" + return TwilioAdapter.generate_stream_twiml( + stream_url, + parameters={"caller": caller, "callee": callee}, ) - return TwilioAdapter.generate_stream_twiml(stream_url) # --------------------------------------------------------------------------- @@ -317,6 +320,15 @@ async def twilio_stream_bridge( start_data = data.get("start", {}) call_sid_actual = start_data.get("callSid", "") custom_params: dict = start_data.get("customParameters", {}) + # Inbound path: caller / callee travel via TwiML + # ```` tags (Twilio strips query params from + # ````), so the WS-level query-param read + # above lands empty. Fall back to ``customParameters`` on + # the ``start`` frame. + if not caller: + caller = custom_params.get("caller", "") or caller + if not callee: + callee = custom_params.get("callee", "") or callee # Single INFO line per call-start — full context in one place. _mode = ( @@ -405,7 +417,7 @@ async def twilio_stream_bridge( # to emit g711_ulaw @ 8 kHz directly (see below), so for that # provider we skip the built-in PCM→mulaw transcoding path. # Pipeline / ConvAI still produce PCM16 @ 16 kHz. - _input_is_mulaw = provider == "openai_realtime" + _input_is_mulaw = provider in ("openai_realtime", "openai_realtime_2") audio_sender = TwilioAudioSender( websocket, stream_sid, input_is_mulaw_8k=_input_is_mulaw ) @@ -516,6 +528,7 @@ async def _twilio_hangup(): # produces a deep, slurred voice. audio_format="g711_ulaw", speech_events=speech_events, + pop_prewarmed_connections=pop_prewarmed_connections, ) # Inherit patter.side from the parent Patter instance so all diff --git a/libraries/python/getpatter/tts/elevenlabs.py b/libraries/python/getpatter/tts/elevenlabs.py index 2a13f3a3..d4e5957f 100644 --- a/libraries/python/getpatter/tts/elevenlabs.py +++ b/libraries/python/getpatter/tts/elevenlabs.py @@ -57,7 +57,7 @@ def __init__( *, voice_id: str = "EXAVITQu4vr4xnSDxMaL", model_id: str = "eleven_flash_v2_5", - output_format: str = "pcm_16000", + output_format: str | None = None, language_code: str | None = None, voice_settings: dict | None = None, auto_mode: bool = True, @@ -68,13 +68,23 @@ def __init__( # (chunking is driven by ``chunk_length_schedule`` on that path). chunk_size: int | None = None, ) -> None: + # CRITICAL: only forward ``output_format`` when the caller actually + # passed one. Forwarding a fallback (``"pcm_16000"``) would flip the + # parent's ``_output_format_explicit`` flag to ``True`` and disable the + # carrier-aware auto-flip in ``set_telephony_carrier`` — the prewarm + # path on Twilio would keep emitting PCM16 16 kHz and pay the + # client-side resample/encode that produced the "audio a scatti" + # user report. Leaving the field out lets the parent default to + # PCM_16000 with the explicit-flag cleared so the carrier hook can + # flip to ulaw_8000 at call time. Parity with TS ``tts/elevenlabs.ts``. kwargs: dict = { "api_key": _resolve_api_key(api_key), "voice_id": voice_id, "model_id": model_id, - "output_format": output_format, "auto_mode": auto_mode, } + if output_format is not None: + kwargs["output_format"] = output_format if voice_settings is not None: kwargs["voice_settings"] = voice_settings if language_code is not None: diff --git a/libraries/python/tests/test_new_features.py b/libraries/python/tests/test_new_features.py index b3a9967c..c3ebf3e6 100644 --- a/libraries/python/tests/test_new_features.py +++ b/libraries/python/tests/test_new_features.py @@ -8,7 +8,7 @@ import pytest -from getpatter import OpenAIRealtime, Patter, Twilio, tool +from getpatter import OpenAIRealtime, Patter, Twilio from getpatter.models import Agent @@ -24,6 +24,8 @@ def _local_phone(webhook_url="abc.ngrok.io"): def _local_agent(phone: Patter) -> Agent: """Build an OpenAI Realtime agent for the tests below.""" return phone.agent(engine=OpenAIRealtime(api_key="sk_test"), system_prompt="Test") + + from getpatter.telephony.twilio import _TRANSFER_CALL_TOOL, _END_CALL_TOOL @@ -65,11 +67,20 @@ def test_transfer_call_tool_injected_when_no_agent_tools(): def test_transfer_call_tool_injected_alongside_agent_tools(): """transfer_call is appended after agent-defined tools.""" - user_tool = {"name": "lookup", "description": "Look up", "parameters": {}, "webhook_url": "https://x.com"} + user_tool = { + "name": "lookup", + "description": "Look up", + "parameters": {}, + "webhook_url": "https://x.com", + } agent = Agent(system_prompt="Test", tools=[user_tool]) # Simulate what the handler does agent_tools = [ - {"name": t["name"], "description": t.get("description", ""), "parameters": t.get("parameters", {})} + { + "name": t["name"], + "description": t.get("description", ""), + "parameters": t.get("parameters", {}), + } for t in (agent.tools or []) ] openai_tools = agent_tools + [_TRANSFER_CALL_TOOL] @@ -127,9 +138,8 @@ def test_serve_passes_recording_to_server(): MockServer.return_value = mock_instance import asyncio - asyncio.run( - phone.serve(agent, recording=True) - ) + + asyncio.run(phone.serve(agent, recording=True)) MockServer.assert_called_once() call_args = MockServer.call_args @@ -167,6 +177,7 @@ def test_call_accepts_machine_detection_param(): agent = _local_agent(phone) # Verify the parameter is accepted by the function signature import inspect + sig = inspect.signature(phone.call) assert "machine_detection" in sig.parameters @@ -182,16 +193,18 @@ def test_machine_detection_adds_params_to_twilio_call(): MockAdapter.return_value = mock_instance import asyncio - asyncio.run( - phone.call(to="+39123456789", agent=agent, machine_detection=True) - ) + + asyncio.run(phone.call(to="+39123456789", agent=agent, machine_detection=True)) mock_instance.initiate_call.assert_called_once() _, kwargs = mock_instance.initiate_call.call_args extra = kwargs.get("extra_params", {}) - assert extra.get("MachineDetection") == "DetectMessageEnd" - assert extra.get("AsyncAmd") == "true" - assert "AsyncAmdStatusCallback" in extra + # twilio-python's ``calls.create(**kwargs)`` accepts snake_case + # only — PascalCase raises ``TypeError: unexpected keyword + # argument``. Defaults must therefore be snake_case at the source. + assert extra.get("machine_detection") == "DetectMessageEnd" + assert extra.get("async_amd") == "true" + assert "async_amd_status_callback" in extra def test_amd_callback_url_uses_webhook_host(): @@ -205,13 +218,12 @@ def test_amd_callback_url_uses_webhook_host(): MockAdapter.return_value = mock_instance import asyncio - asyncio.run( - phone.call(to="+39123456789", agent=agent, machine_detection=True) - ) + + asyncio.run(phone.call(to="+39123456789", agent=agent, machine_detection=True)) _, kwargs = mock_instance.initiate_call.call_args extra = kwargs.get("extra_params", {}) - assert "my.ngrok.io" in extra.get("AsyncAmdStatusCallback", "") + assert "my.ngrok.io" in extra.get("async_amd_status_callback", "") def test_amd_webhook_endpoint_exists(): @@ -244,17 +256,18 @@ def test_machine_detection_false_no_extra_params(): MockAdapter.return_value = mock_instance import asyncio - asyncio.run( - phone.call(to="+39123456789", agent=agent, machine_detection=False) - ) + + asyncio.run(phone.call(to="+39123456789", agent=agent, machine_detection=False)) _, kwargs = mock_instance.initiate_call.call_args extra = kwargs.get("extra_params", {}) # AMD-specific params must be absent when machine_detection=False. - assert "MachineDetection" not in extra - assert "AsyncAmd" not in extra - # StatusCallback is always wired (BUG #06 — dashboard sees failures). - assert extra.get("StatusCallback", "").endswith("/webhooks/twilio/status") + assert "machine_detection" not in extra + assert "async_amd" not in extra + # status_callback is always wired (BUG #06 — dashboard sees failures). + # Snake_case is mandatory: twilio-python's ``calls.create`` + # rejects PascalCase with ``TypeError: unexpected keyword``. + assert extra.get("status_callback", "").endswith("/webhooks/twilio/status") # --------------------------------------------------------------------------- @@ -280,10 +293,19 @@ def test_end_call_tool_reason_is_optional(): def test_end_call_tool_injected_in_openai_tools(): """_END_CALL_TOOL is injected alongside _TRANSFER_CALL_TOOL in OpenAI tool list.""" - user_tool = {"name": "lookup", "description": "Look up", "parameters": {}, "webhook_url": "https://x.com"} + user_tool = { + "name": "lookup", + "description": "Look up", + "parameters": {}, + "webhook_url": "https://x.com", + } agent = Agent(system_prompt="Test", tools=[user_tool]) agent_tools = [ - {"name": t["name"], "description": t.get("description", ""), "parameters": t.get("parameters", {})} + { + "name": t["name"], + "description": t.get("description", ""), + "parameters": t.get("parameters", {}), + } for t in (agent.tools or []) ] openai_tools = agent_tools + [_TRANSFER_CALL_TOOL, _END_CALL_TOOL] @@ -308,6 +330,7 @@ def test_end_call_tool_injected_with_no_agent_tools(): def test_voicemail_message_param_on_call(): """Patter.call() accepts voicemail_message parameter.""" import inspect + phone = _local_phone() sig = inspect.signature(phone.call) assert "voicemail_message" in sig.parameters @@ -316,6 +339,7 @@ def test_voicemail_message_param_on_call(): def test_voicemail_message_param_on_serve(): """Patter.serve() accepts voicemail_message parameter.""" import inspect + phone = _local_phone() sig = inspect.signature(phone.serve) assert "voicemail_message" in sig.parameters @@ -334,7 +358,9 @@ def test_embedded_server_accepts_voicemail_message(): webhook_url="abc.ngrok.io", ) agent = Agent(system_prompt="Test") - server = EmbeddedServer(config=config, agent=agent, voicemail_message="Please call back.") + server = EmbeddedServer( + config=config, agent=agent, voicemail_message="Please call back." + ) assert server.voicemail_message == "Please call back." @@ -366,9 +392,8 @@ def test_serve_passes_voicemail_message_to_server(): MockServer.return_value = mock_instance import asyncio - asyncio.run( - phone.serve(agent, voicemail_message="Hi, please call back.") - ) + + asyncio.run(phone.serve(agent, voicemail_message="Hi, please call back.")) MockServer.assert_called_once() call_kwargs = MockServer.call_args.kwargs @@ -480,7 +505,9 @@ def test_resolve_variables_replaces_placeholders(): """_resolve_variables substitutes {key} with corresponding values.""" from getpatter.telephony.twilio import _resolve_variables - result = _resolve_variables("Hello {name}, order #{order_id}!", {"name": "Mario", "order_id": "42"}) + result = _resolve_variables( + "Hello {name}, order #{order_id}!", {"name": "Mario", "order_id": "42"} + ) assert result == "Hello Mario, order #42!" @@ -530,11 +557,13 @@ async def on_message(data): ws.query_params = {"caller": "+1", "callee": "+2"} events = [ - json.dumps({ - "event": "start", - "streamSid": "SID", - "start": {"callSid": "CA1", "customParameters": {}}, - }), + json.dumps( + { + "event": "start", + "streamSid": "SID", + "start": {"callSid": "CA1", "customParameters": {}}, + } + ), json.dumps({"event": "stop"}), ] ws.receive_text = AsyncMock(side_effect=events) @@ -555,9 +584,12 @@ async def fake_receive(): mock_stt.receive_transcripts = fake_receive - with patch("getpatter.telephony.twilio._create_stt_from_config", return_value=None), \ - patch("getpatter.telephony.twilio._create_tts_from_config", return_value=None): + with ( + patch("getpatter.telephony.twilio._create_stt_from_config", return_value=None), + patch("getpatter.telephony.twilio._create_tts_from_config", return_value=None), + ): from getpatter.telephony.twilio import twilio_stream_bridge + try: await asyncio.wait_for( twilio_stream_bridge( @@ -597,11 +629,13 @@ async def on_call_end(data): ws.query_params = {"caller": "+1", "callee": "+2"} events = [ - json.dumps({ - "event": "start", - "streamSid": "SID", - "start": {"callSid": "CA1", "customParameters": {}}, - }), + json.dumps( + { + "event": "start", + "streamSid": "SID", + "start": {"callSid": "CA1", "customParameters": {}}, + } + ), json.dumps({"event": "stop"}), ] ws.receive_text = AsyncMock(side_effect=events) @@ -620,8 +654,12 @@ async def fake_receive_events(): mock_adapter.receive_events = fake_receive_events - with patch("getpatter.providers.openai_realtime.OpenAIRealtimeAdapter", return_value=mock_adapter): + with patch( + "getpatter.providers.openai_realtime.OpenAIRealtimeAdapter", + return_value=mock_adapter, + ): from getpatter.telephony.twilio import twilio_stream_bridge + try: await asyncio.wait_for( twilio_stream_bridge( diff --git a/libraries/python/tests/test_prewarm.py b/libraries/python/tests/test_prewarm.py index 4d016bf5..ee013f03 100644 --- a/libraries/python/tests/test_prewarm.py +++ b/libraries/python/tests/test_prewarm.py @@ -146,17 +146,17 @@ async def test_prewarm_first_message_opt_out() -> None: assert agent.prewarm_first_message is False -async def test_factory_defaults_prewarm_first_message_true_in_pipeline_mode() -> None: - """``Patter.agent(...)`` factory auto-enables prewarm in pipeline - mode (since 0.6.2). Parity with the TypeScript factory in - ``client.ts``.""" +async def test_factory_defaults_prewarm_first_message_false_in_pipeline_mode() -> None: + """``Patter.agent(...)`` factory defaults prewarm_first_message to False + (reverted from True in 0.6.2 acceptance — opt-in only). + Parity with the TypeScript factory in ``client.ts``.""" phone = _make_patter() stt = StubSTT() tts = StubTTS() llm = StubLLM() agent = phone.agent(system_prompt="hi", stt=stt, tts=tts, llm=llm) assert agent.provider == "pipeline" - assert agent.prewarm_first_message is True + assert agent.prewarm_first_message is False async def test_factory_does_not_default_prewarm_in_realtime_mode() -> None: diff --git a/libraries/python/tests/unit/test_client_unit.py b/libraries/python/tests/unit/test_client_unit.py index 23f317da..65cc8536 100644 --- a/libraries/python/tests/unit/test_client_unit.py +++ b/libraries/python/tests/unit/test_client_unit.py @@ -365,6 +365,137 @@ async def test_disconnect_is_idempotent(self) -> None: await client.disconnect() # should not raise +# --------------------------------------------------------------------------- +# ready / tunnel_ready — serve-ready futures (parity with TS phone.ready) +# --------------------------------------------------------------------------- + + +@pytest.mark.unit +class TestReadyFuture: + """phone.ready and phone.tunnel_ready — lazy futures that track serve() state.""" + + # --- lazy creation ------------------------------------------------------- + + async def test_ready_creates_future_on_first_access(self) -> None: + """Accessing phone.ready before serve() returns a pending Future.""" + import asyncio + + client = _local_phone() + fut = client.ready + assert isinstance(fut, asyncio.Future) + assert not fut.done() + + async def test_tunnel_ready_creates_future_on_first_access(self) -> None: + """Accessing phone.tunnel_ready before serve() returns a pending Future. + + Use webhook_url="" so there is no static pre-resolution — the tunnel + must call _resolve_tunnel_ready() before the future is done. + """ + import asyncio + + client = _local_phone(webhook_url="") + fut = client.tunnel_ready + assert isinstance(fut, asyncio.Future) + assert not fut.done() + + async def test_ready_returns_same_future_on_repeated_access(self) -> None: + """Repeated accesses return the same Future object (idempotent).""" + client = _local_phone() + assert client.ready is client.ready + + async def test_tunnel_ready_returns_same_future_on_repeated_access(self) -> None: + client = _local_phone(webhook_url="") + assert client.tunnel_ready is client.tunnel_ready + + # --- resolution ---------------------------------------------------------- + + async def test_ready_resolves_when_server_listening(self) -> None: + """_resolve_ready() fulfils phone.ready with the webhook hostname.""" + client = _local_phone() + fut = client.ready + assert not fut.done() + + client._resolve_ready("my-tunnel.trycloudflare.com") + + assert fut.done() + assert await fut == "my-tunnel.trycloudflare.com" + + async def test_tunnel_ready_resolves_when_tunnel_known(self) -> None: + client = _local_phone(webhook_url="") + fut = client.tunnel_ready + client._resolve_tunnel_ready("tunnel.example.com") + + assert fut.done() + assert await fut == "tunnel.example.com" + + async def test_ready_rejects_on_serve_failure(self) -> None: + """_reject_ready() causes phone.ready to raise the propagated error.""" + import asyncio + + client = _local_phone() + fut = client.ready + + err = RuntimeError("port already in use") + client._reject_ready(err) + + assert fut.done() + with pytest.raises(RuntimeError, match="port already in use"): + await asyncio.shield(fut) + + # --- idempotence (safe to call resolve/reject multiple times) ----------- + + async def test_resolve_ready_is_idempotent(self) -> None: + """Calling _resolve_ready() twice does not raise FutureDoneError.""" + client = _local_phone() + client._resolve_ready("host-a.com") + client._resolve_ready("host-b.com") # should be a no-op, not raise + assert await client.ready == "host-a.com" + + async def test_reject_ready_after_resolve_is_noop(self) -> None: + client = _local_phone() + client._resolve_ready("host.com") + client._reject_ready(RuntimeError("ignored")) # must not raise + assert await client.ready == "host.com" + + # --- static-webhook pre-resolution (no tunnel) -------------------------- + + async def test_tunnel_ready_pre_resolved_for_static_webhook(self) -> None: + """With an explicit webhookUrl, tunnel_ready is resolved immediately.""" + client = _local_phone(webhook_url="static.example.com") + fut = client.tunnel_ready + assert fut.done() + assert fut.result() == "static.example.com" + + # --- disconnect recreates the futures ----------------------------------- + + async def test_disconnect_recreates_ready_future(self) -> None: + """After disconnect(), phone.ready is a fresh pending Future. + + Mirrors the TS test: + 'recreates ready / tunnelReady so a follow-up serve() can resolve them' + """ + client = _local_phone() + before = client.ready + client._resolve_ready("host.com") + + await client.disconnect() + + after = client.ready + assert after is not before + assert not after.done() + + async def test_disconnect_recreates_tunnel_ready_future(self) -> None: + client = _local_phone(webhook_url="") + before = client.tunnel_ready + client._resolve_tunnel_ready("t.example.com") + + await client.disconnect() + + after = client.tunnel_ready + assert after is not before + assert not after.done() + + # --------------------------------------------------------------------------- # Module-level factories (guardrail, tool) # --------------------------------------------------------------------------- diff --git a/libraries/python/tests/unit/test_stream_handler_unit.py b/libraries/python/tests/unit/test_stream_handler_unit.py index 92f9a533..3f4aa01a 100644 --- a/libraries/python/tests/unit/test_stream_handler_unit.py +++ b/libraries/python/tests/unit/test_stream_handler_unit.py @@ -519,13 +519,17 @@ async def test_barge_in_fires_after_warmup_window(self) -> None: "barge-in must fire normally after the AEC warmup gate elapses" ) - async def test_barge_in_fires_at_400ms_when_aec_off(self) -> None: - """The bug fix: on PSTN deployments AEC is OFF and the gate - collapses to 0.1 s anti-flicker. A user saying "stop" 400 ms - into the agent's turn must cancel the agent — pre-fix this was - silently suppressed by the hardcoded 1.0 s gate. + async def test_barge_in_fires_at_600ms_when_aec_off(self) -> None: + """On PSTN deployments AEC is OFF and the gate is + MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_NO_AEC (0.5 s, bumped from + 0.1 s in 0.6.2 acceptance to filter phantom speech_start on first + inbound frame). A user saying "stop" 600 ms into the agent's turn + must cancel the agent — just past the 0.5 s gate. """ - from getpatter.stream_handler import PipelineStreamHandler + from getpatter.stream_handler import ( + MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_NO_AEC, + PipelineStreamHandler, + ) from getpatter.providers.base import Transcript import time @@ -536,17 +540,18 @@ async def test_barge_in_fires_at_400ms_when_aec_off(self) -> None: handler.audio_sender = MagicMock() handler.audio_sender.send_clear = AsyncMock() handler._llm_cancel_event = asyncio.Event() - # AEC OFF (PSTN default) — gate is 0.25 s. + # AEC OFF (PSTN default) — gate is 0.5 s. handler._aec = None - handler._speaking_started_at = time.time() - 0.4 - handler._first_audio_sent_at = time.time() - 0.4 + past_gate = MIN_AGENT_SPEAKING_S_BEFORE_BARGE_IN_NO_AEC + 0.1 + handler._speaking_started_at = time.time() - past_gate + handler._first_audio_sent_at = time.time() - past_gate await handler._handle_barge_in( Transcript(text="stop", is_final=True, speech_final=True) ) assert handler._llm_cancel_event.is_set(), ( - "barge-in must fire on PSTN at 400 ms — past the 0.1 s anti-flicker gate" + "barge-in must fire on PSTN at 600 ms — past the 0.5 s gate" ) async def test_barge_in_suppressed_within_anti_flicker_when_aec_off( diff --git a/libraries/python/tests/unit/test_twilio_adapter_snake_case_kwargs.py b/libraries/python/tests/unit/test_twilio_adapter_snake_case_kwargs.py new file mode 100644 index 00000000..2c070188 --- /dev/null +++ b/libraries/python/tests/unit/test_twilio_adapter_snake_case_kwargs.py @@ -0,0 +1,321 @@ +"""Regression test for the PascalCase → snake_case Twilio kwarg bug. + +The ``twilio-python`` SDK's ``client.calls.create(**kwargs)`` accepts +**snake_case** keyword arguments and translates them internally to the +PascalCase form Twilio's REST wire protocol expects. Passing +PascalCase keys (``StatusCallback``, ``MachineDetection``, ``Timeout``) +directly raises ``TypeError: unexpected keyword argument`` and crashes +every outbound call. + +This file locks in two behaviours: + +1. ``getpatter.client.Patter.call`` builds ``extra_params`` for the + Twilio adapter using snake_case keys only (fix at source). +2. ``TwilioAdapter.initiate_call`` invokes the underlying + ``calls.create`` with snake_case kwargs even if a caller passes + PascalCase (defensive normalisation in the adapter). + +Both behaviours are exercised end-to-end against the real adapter +with a real ``TwilioClient`` whose ``.calls.create`` raises ``TypeError`` +on PascalCase — mirroring the production failure mode. +""" + +from __future__ import annotations + +from unittest.mock import MagicMock, patch + +import pytest + +from getpatter.client import Patter +from getpatter.local_config import LocalConfig +from getpatter.providers.twilio_adapter import TwilioAdapter, _to_snake_case + +from tests.conftest import make_agent + + +# --------------------------------------------------------------------------- +# Helper: a ``calls.create`` stand-in that enforces snake_case kwargs. +# --------------------------------------------------------------------------- + +# These are the Twilio params the SDK explicitly accepts in snake_case. +# A real ``twilio.rest.Client.calls.create(...)`` has a typed signature +# that rejects anything else — we replicate that contract here so the +# test fails the same way production does. +_ACCEPTED_SNAKE_KWARGS = frozenset( + { + "to", + "from_", + "twiml", + "url", + "method", + "fallback_url", + "status_callback", + "status_callback_event", + "status_callback_method", + "send_digits", + "timeout", + "record", + "recording_channels", + "recording_status_callback", + "machine_detection", + "machine_detection_timeout", + "machine_detection_speech_threshold", + "machine_detection_speech_end_threshold", + "machine_detection_silence_timeout", + "async_amd", + "async_amd_status_callback", + "async_amd_status_callback_method", + "byoc", + "trunk_sid", + } +) + + +def _strict_create(**kwargs): + """Drop-in for ``twilio.rest.Client.calls.create`` that rejects + PascalCase keys exactly the way the real SDK does.""" + bad = [k for k in kwargs if k not in _ACCEPTED_SNAKE_KWARGS] + if bad: + raise TypeError(f"calls.create() got an unexpected keyword argument {bad[0]!r}") + resp = MagicMock() + resp.sid = "CA" + "f" * 32 + return resp + + +# --------------------------------------------------------------------------- +# Unit: the snake_case helper. +# --------------------------------------------------------------------------- + + +@pytest.mark.unit +class TestToSnakeCase: + def test_pascal_to_snake(self) -> None: + assert _to_snake_case("StatusCallback") == "status_callback" + assert _to_snake_case("AsyncAmdStatusCallback") == "async_amd_status_callback" + assert _to_snake_case("MachineDetection") == "machine_detection" + assert _to_snake_case("Timeout") == "timeout" + + def test_snake_passthrough(self) -> None: + assert _to_snake_case("timeout") == "timeout" + assert _to_snake_case("status_callback_event") == "status_callback_event" + + def test_camel_to_snake(self) -> None: + assert _to_snake_case("asyncAmd") == "async_amd" + + +# --------------------------------------------------------------------------- +# Adapter-level: TwilioAdapter.initiate_call invokes calls.create with +# snake_case kwargs ONLY. The strict stub raises TypeError otherwise — +# making this an authentic test that would catch the production bug. +# --------------------------------------------------------------------------- + + +@pytest.mark.unit +class TestAdapterPassesSnakeCaseKwargs: + @pytest.mark.asyncio + async def test_initiate_call_with_snake_case_extra_params(self) -> None: + # ``twilio.rest.Client.calls`` is a read-only property — we + # cannot patch it on a real instance. Replace the constructor + # so the adapter wraps a MagicMock whose ``calls.create`` is + # the strict validator. Everything else (TwiML construction, + # ``_run_sync`` threading, kwarg normalisation) runs the actual + # production code path. + with patch( + "getpatter.providers.twilio_adapter.TwilioClient" + ) as MockTwilioClient: + client_instance = MagicMock() + client_instance.calls = MagicMock() + client_instance.calls.create = _strict_create + MockTwilioClient.return_value = client_instance + + adapter = TwilioAdapter( + account_sid="ACtest000000000000000000000000000", + auth_token="tok_test", + ) + + sid = await adapter.initiate_call( + "+15551234567", + "+15559876543", + "wss://test.ngrok.io/ws/stream/outbound", + extra_params={ + "timeout": 25, + "machine_detection": "DetectMessageEnd", + "async_amd": "true", + "async_amd_status_callback": "https://test.ngrok.io/webhooks/twilio/amd", + "status_callback": "https://test.ngrok.io/webhooks/twilio/status", + "status_callback_method": "POST", + "status_callback_event": [ + "initiated", + "ringing", + "answered", + "completed", + ], + }, + ) + assert sid == "CA" + "f" * 32 + + @pytest.mark.asyncio + async def test_initiate_call_translates_pascal_case_defensively(self) -> None: + """Belt-and-braces: even if a future caller forgets and passes + PascalCase, the adapter must normalise before invoking the SDK. + Without the fix this raises ``TypeError`` (production crash).""" + captured: dict = {} + + def _capture(**kwargs): + # Re-use the strict validator so any leakage explodes here. + _strict_create(**kwargs) + captured.update(kwargs) + resp = MagicMock() + resp.sid = "CA" + "a" * 32 + return resp + + with patch( + "getpatter.providers.twilio_adapter.TwilioClient" + ) as MockTwilioClient: + client_instance = MagicMock() + client_instance.calls = MagicMock() + client_instance.calls.create = _capture + MockTwilioClient.return_value = client_instance + + adapter = TwilioAdapter( + account_sid="ACtest000000000000000000000000000", + auth_token="tok_test", + ) + + await adapter.initiate_call( + "+15551234567", + "+15559876543", + "wss://test.ngrok.io/ws/stream/outbound", + extra_params={ + "Timeout": 30, + "MachineDetection": "DetectMessageEnd", + "StatusCallback": "https://test.ngrok.io/webhooks/twilio/status", + }, + ) + + # Adapter must have rewritten all three to snake_case before + # the SDK call — and the strict validator must have accepted them. + assert captured["timeout"] == 30 + assert captured["machine_detection"] == "DetectMessageEnd" + assert ( + captured["status_callback"] + == "https://test.ngrok.io/webhooks/twilio/status" + ) + # PascalCase keys must NOT survive into the SDK call. + assert "Timeout" not in captured + assert "MachineDetection" not in captured + assert "StatusCallback" not in captured + + +# --------------------------------------------------------------------------- +# Client-level: Patter.call() routes through the adapter with snake_case +# keys. Hooking the adapter to the strict stub asserts the entire path is +# wire-correct — not just the dict shape. +# --------------------------------------------------------------------------- + + +@pytest.mark.unit +class TestPatterCallEndToEnd: + @pytest.mark.asyncio + async def test_outbound_call_does_not_raise_typeerror(self) -> None: + """Reproduce the user-reported zenn.dev bug: an outbound call with + machine_detection + ring_timeout must NOT raise ``TypeError`` from + twilio-python's ``calls.create``. Pre-fix, this test fails.""" + cfg = LocalConfig( + telephony_provider="twilio", + twilio_sid="ACtest000000000000000000000000000", + twilio_token="tok_test", + openai_key="sk-test", + webhook_url="test.ngrok.io", + phone_number="+15551234567", + ) + phone = Patter.__new__(Patter) + phone._local_config = cfg + phone._server = None + + # Patch the TwilioClient constructor so the adapter wraps a real + # TwilioAdapter instance but the underlying SDK is replaced by + # our strict validator. Everything else (URL/TwiML construction, + # ring_timeout propagation, status callback wiring, AMD params) + # runs the actual production code path. + captured: dict = {} + + def _capture(**kwargs): + _strict_create(**kwargs) + captured.update(kwargs) + resp = MagicMock() + resp.sid = "CA" + "b" * 32 + return resp + + with patch( + "getpatter.providers.twilio_adapter.TwilioClient" + ) as MockTwilioClient: + client_instance = MagicMock() + client_instance.calls = MagicMock() + client_instance.calls.create = _capture + MockTwilioClient.return_value = client_instance + + await phone.call( + to="+15559876543", + agent=make_agent(), + machine_detection=True, + ring_timeout=30, + ) + + # All the params Twilio cares about landed under snake_case keys. + assert captured["to"] == "+15559876543" + assert captured["from_"] == "+15551234567" + assert captured["timeout"] == 30 + assert captured["machine_detection"] == "DetectMessageEnd" + assert captured["async_amd"] == "true" + assert "async_amd_status_callback" in captured + assert ( + captured["status_callback"] + == "https://test.ngrok.io/webhooks/twilio/status" + ) + assert captured["status_callback_method"] == "POST" + assert "ringing" in captured["status_callback_event"] + assert "completed" in captured["status_callback_event"] + + @pytest.mark.asyncio + async def test_outbound_call_without_amd_still_snake_case(self) -> None: + """``machine_detection=False`` must still produce a snake_case + StatusCallback wiring — the dashboard relies on it.""" + cfg = LocalConfig( + telephony_provider="twilio", + twilio_sid="ACtest000000000000000000000000000", + twilio_token="tok_test", + openai_key="sk-test", + webhook_url="test.ngrok.io", + phone_number="+15551234567", + ) + phone = Patter.__new__(Patter) + phone._local_config = cfg + phone._server = None + + captured: dict = {} + + def _capture(**kwargs): + _strict_create(**kwargs) + captured.update(kwargs) + resp = MagicMock() + resp.sid = "CA" + "c" * 32 + return resp + + with patch( + "getpatter.providers.twilio_adapter.TwilioClient" + ) as MockTwilioClient: + client_instance = MagicMock() + client_instance.calls = MagicMock() + client_instance.calls.create = _capture + MockTwilioClient.return_value = client_instance + + await phone.call( + to="+15559876543", + agent=make_agent(), + machine_detection=False, + ) + + assert "machine_detection" not in captured + assert "async_amd" not in captured + assert captured["status_callback"].endswith("/webhooks/twilio/status") diff --git a/libraries/python/tests/unit/test_twilio_status_and_ring_timeout.py b/libraries/python/tests/unit/test_twilio_status_and_ring_timeout.py index 51e0ea85..209f04e0 100644 --- a/libraries/python/tests/unit/test_twilio_status_and_ring_timeout.py +++ b/libraries/python/tests/unit/test_twilio_status_and_ring_timeout.py @@ -10,7 +10,8 @@ in-memory metrics store. 2. **IMP2** — callers may set ``ring_timeout`` on ``Patter.call()`` to control how long the phone rings before the carrier gives up. It - must land as ``Timeout`` on Twilio's REST payload and ``timeout_secs`` + must land as ``timeout`` on the twilio-python kwarg payload + (translated to Twilio's ``Timeout`` REST param) and as ``timeout_secs`` on Telnyx's — the old code silently dropped it. The tests exercise the endpoint directly via the ASGI layer, and exercise @@ -254,9 +255,7 @@ async def test_twilio_ring_timeout_becomes_timeout_param(self) -> None: "getpatter.providers.twilio_adapter.TwilioAdapter" ) as mock_adapter_cls: mock_adapter = mock_adapter_cls.return_value - mock_adapter.initiate_call = AsyncMock( - return_value="CA" + "9" * 32 - ) + mock_adapter.initiate_call = AsyncMock(return_value="CA" + "9" * 32) await phone.call( to="+15559876543", @@ -265,10 +264,8 @@ async def test_twilio_ring_timeout_becomes_timeout_param(self) -> None: ) mock_adapter.initiate_call.assert_awaited_once() - extra_params = mock_adapter.initiate_call.await_args.kwargs[ - "extra_params" - ] - assert extra_params["Timeout"] == 45 + extra_params = mock_adapter.initiate_call.await_args.kwargs["extra_params"] + assert extra_params["timeout"] == 45 @pytest.mark.asyncio async def test_twilio_ring_timeout_default_is_25(self) -> None: @@ -292,16 +289,12 @@ async def test_twilio_ring_timeout_default_is_25(self) -> None: "getpatter.providers.twilio_adapter.TwilioAdapter" ) as mock_adapter_cls: mock_adapter = mock_adapter_cls.return_value - mock_adapter.initiate_call = AsyncMock( - return_value="CA" + "8" * 32 - ) + mock_adapter.initiate_call = AsyncMock(return_value="CA" + "8" * 32) await phone.call(to="+15559876543", agent=make_agent()) - extra_params = mock_adapter.initiate_call.await_args.kwargs[ - "extra_params" - ] - assert extra_params["Timeout"] == 25 + extra_params = mock_adapter.initiate_call.await_args.kwargs["extra_params"] + assert extra_params["timeout"] == 25 @pytest.mark.asyncio async def test_twilio_ring_timeout_omitted_when_none(self) -> None: @@ -324,18 +317,16 @@ async def test_twilio_ring_timeout_omitted_when_none(self) -> None: "getpatter.providers.twilio_adapter.TwilioAdapter" ) as mock_adapter_cls: mock_adapter = mock_adapter_cls.return_value - mock_adapter.initiate_call = AsyncMock( - return_value="CA" + "8" * 32 - ) + mock_adapter.initiate_call = AsyncMock(return_value="CA" + "8" * 32) await phone.call( - to="+15559876543", agent=make_agent(), ring_timeout=None, + to="+15559876543", + agent=make_agent(), + ring_timeout=None, ) - extra_params = mock_adapter.initiate_call.await_args.kwargs[ - "extra_params" - ] - assert "Timeout" not in extra_params + extra_params = mock_adapter.initiate_call.await_args.kwargs["extra_params"] + assert "timeout" not in extra_params @pytest.mark.asyncio async def test_twilio_statuscallback_always_registered(self) -> None: @@ -359,24 +350,23 @@ async def test_twilio_statuscallback_always_registered(self) -> None: "getpatter.providers.twilio_adapter.TwilioAdapter" ) as mock_adapter_cls: mock_adapter = mock_adapter_cls.return_value - mock_adapter.initiate_call = AsyncMock( - return_value="CA" + "7" * 32 - ) + mock_adapter.initiate_call = AsyncMock(return_value="CA" + "7" * 32) await phone.call(to="+15559876543", agent=make_agent()) - extra = mock_adapter.initiate_call.await_args.kwargs[ - "extra_params" - ] + extra = mock_adapter.initiate_call.await_args.kwargs["extra_params"] + # Keys are snake_case — the twilio-python SDK's + # ``calls.create(**kwargs)`` rejects PascalCase with + # ``TypeError: unexpected keyword argument``. assert ( - extra["StatusCallback"] + extra["status_callback"] == "https://test.ngrok.io/webhooks/twilio/status" ) - assert extra["StatusCallbackMethod"] == "POST" - # Events we care about for BUG #06. Now passed as a list under + assert extra["status_callback_method"] == "POST" + # Events we care about for BUG #06. Passed as a list under # the snake_case key the twilio-python SDK expects (see # 2026-04-29 fix for Twilio notification 21626). - events = extra.get("status_callback_event") or extra.get("StatusCallbackEvent") + events = extra["status_callback_event"] assert "ringing" in events assert "completed" in events diff --git a/libraries/typescript/src/cli.ts b/libraries/typescript/src/cli.ts index 8cb332a3..fd837799 100644 --- a/libraries/typescript/src/cli.ts +++ b/libraries/typescript/src/cli.ts @@ -76,7 +76,13 @@ async function main(): Promise { res.json({ status: 'ok', mode: 'dashboard' }); }); - // Ingest endpoint — SDK POSTs completed call data here for live updates + // Ingest endpoint — SDK POSTs call lifecycle events here so a + // standalone dashboard surfaces them live. Three event kinds: + // * status="initiated" — outbound dial handed off to carrier, + // callee hasn't picked up yet. Surfaces the row immediately so + // the user sees the attempt during ringing. + // * default (no status) — call_start, media stream began. + // * ended_at present — call_end, final metrics + transcript. app.post('/api/dashboard/ingest', (req, res) => { const data = req.body as Record; const callId = (data.call_id as string) || ''; @@ -84,6 +90,12 @@ async function main(): Promise { res.json({ ok: false, error: 'missing call_id' }); return; } + const status = data.status as string | undefined; + if (status === 'initiated') { + store.recordCallInitiated(data); + res.json({ ok: true, call_id: callId, event: 'initiated' }); + return; + } store.recordCallStart(data); if (data.ended_at) { store.recordCallEnd(data, (data.metrics as Record) ?? null); diff --git a/libraries/typescript/src/client.ts b/libraries/typescript/src/client.ts index 2ee2ae29..87288120 100644 --- a/libraries/typescript/src/client.ts +++ b/libraries/typescript/src/client.ts @@ -124,14 +124,27 @@ function resolvePersistRoot(persist: boolean | string | undefined): string | nul if (persist === false) return null; if (persist === true) return resolveLogRoot('auto'); if (typeof persist === 'string') return resolveLogRoot(persist); - return resolveLogRoot(); + // Changed from the prior opt-in behaviour on 2026-05-21: the dashboard's + // hydrate path requires on-disk records to survive process restarts, so + // persistence now defaults to ON when `persist` is omitted. Set + // `persist: false` to keep the old ephemeral-RAM-only behaviour. + const envRoot = resolveLogRoot(); + if (envRoot !== null) return envRoot; + return resolveLogRoot('auto'); } /** Close every parked socket inside a ``ParkedProviderConnections`` slot. */ function closeParkedConnections(slot: ParkedProviderConnections): void { if (slot.stt) { try { slot.stt.close(); } catch { /* ignore */ } } if (slot.tts) { try { slot.tts.ws.close(); } catch { /* ignore */ } } - if (slot.openaiRealtime) { try { slot.openaiRealtime.close(); } catch { /* ignore */ } } + if (slot.openaiRealtime) { + const wsAny = slot.openaiRealtime as unknown as { _parkedKeepalive?: NodeJS.Timeout }; + if (wsAny._parkedKeepalive) { + clearInterval(wsAny._parkedKeepalive); + delete wsAny._parkedKeepalive; + } + try { slot.openaiRealtime.close(); } catch { /* ignore */ } + } } /** Top-level SDK entry point — wraps a carrier + embedded server + agent loop. */ @@ -520,19 +533,17 @@ export class Patter { validateAllToolSchemas(working.tools as ToolDefinition[]); } - // Default `prewarmFirstMessage` to true in pipeline mode (0.6.2). - // First-turn p95 on every pipeline acceptance run was dominated by - // the 200-700 ms TTS first-byte latency on the greeting; pre-rendering - // during the ringing window collapses that to a single buffer-copy at - // pickup. Opt-out by passing `prewarmFirstMessage: false` explicitly - // — high-volume outbound where un-answered TTS spend matters can - // restore the pre-0.6.2 behaviour. Realtime / ConvAI modes never - // consume the cache; leave them unchanged so we don't pay TTS for a - // synth no caller will hear. - if (working.prewarmFirstMessage === undefined && working.provider === 'pipeline') { - working = { ...working, prewarmFirstMessage: true }; - } - + // ``prewarmFirstMessage`` is opt-in (default false) — reverted from + // 2026-05-18's default-on attempt after the 0.6.2 acceptance run + // surfaced a phantom-barge-in interaction: prewarm bursts audio + // at pickup, the very first inbound carrier frame triggered Silero + // VAD speech_start, the firstMessage was cancelled mid-playback + // and the user heard a clipped (graffiante) fragment. Until the + // root cause (anchoring the barge-in gate on first-mark-echo + // rather than ``firstAudioSentAt = beginSpeaking time``) is fully + // addressed, default it off so most pipeline calls take the + // live-streaming path that the user is happy with. Opt in + // explicitly per agent when willing to pay the trade-off. return working; } @@ -874,7 +885,19 @@ export class Patter { const tts = agent.tts as { openParkedConnection?: () => Promise } | undefined; const sttOpen = typeof stt?.openParkedConnection === 'function' ? stt.openParkedConnection.bind(stt) : null; const ttsOpen = typeof tts?.openParkedConnection === 'function' ? tts.openParkedConnection.bind(tts) : null; - if (!sttOpen && !ttsOpen) return; + // Detect OpenAI Realtime agents (provider == 'openai_realtime' or + // 'openai_realtime_2'). The adapter isn't constructed yet — the + // per-call StreamHandler builds it at `start`. We instantiate a + // throw-away one here just long enough to call openParkedConnection + // and produce a primed WS, then store the WS in the slot. The live + // adapter (built per-call) adopts it via `adoptWebSocket`. Cast + // through `string` because the public ``AgentOptions.provider`` + // literal union doesn't yet enumerate ``openai_realtime_2`` (the + // GA engine carries it through internally). + const providerStr = (agent.provider as unknown as string | undefined) ?? ''; + const wantsRealtimePark = + providerStr === 'openai_realtime' || providerStr === 'openai_realtime_2'; + if (!sttOpen && !ttsOpen && !wantsRealtimePark) return; const slot: ParkedProviderConnections = {}; this.prewarmedConnections.set(callId, slot); @@ -918,6 +941,47 @@ export class Patter { } })()); } + if (wantsRealtimePark) { + tasks.push((async () => { + // Defer the import so users that don't use Realtime don't pay + // the load-time cost of the adapter + ws module. + const { OpenAIRealtime2Adapter } = await import('./providers/openai-realtime-2'); + const apiKey = process.env.OPENAI_API_KEY ?? ''; + if (!apiKey) { + getLogger().debug(`Park OpenAI Realtime skipped for ${callId}: no OPENAI_API_KEY`); + return; + } + try { + // Build a throw-away adapter just to call openParkedConnection. + // The session.update payload mirrors what the per-call + // StreamHandler would send so no second session.update is + // needed after adoption. The constructor signature is + // positional (inherited from OpenAIRealtimeAdapter). + const tmpAdapter = new OpenAIRealtime2Adapter( + apiKey, + (agent.model as string | undefined) ?? 'gpt-realtime-mini', + (agent.voice as string | undefined) ?? 'alloy', + (agent.systemPrompt as string | undefined) ?? '', + [], + // audioFormat — the GA adapter always emits audio/pcm@24000 + // internally regardless of this value, but it's a required + // positional param. Default to g711_ulaw (Twilio wire format). + undefined, + ); + const ws = await tmpAdapter.openParkedConnection(); + if (this.prewarmedConnections.get(callId) !== slot) { + try { ws.close(); } catch { /* ignore */ } + return; + } + slot.openaiRealtime = ws; + getLogger().info( + `[PREWARM] callId=${callId} provider=openai_realtime ms=${Date.now() - startedAt}`, + ); + } catch (err) { + getLogger().debug(`Park OpenAI Realtime failed for ${callId}: ${String(err)}`); + } + })()); + } const task = (async () => { await Promise.allSettled(tasks); @@ -1005,6 +1069,7 @@ export class Patter { agent: AgentOptions, callId: string, ringTimeout: number | null | undefined, + carrier?: 'twilio' | 'telnyx', ): void { if (!agent.prewarmFirstMessage) return; // FIX #94 — Realtime / ConvAI never consume the cache. Refuse early @@ -1023,6 +1088,28 @@ export class Patter { if (!firstMessage || !tts) return; if (typeof tts.synthesizeStream !== 'function') return; + // Advise the TTS adapter of the telephony carrier BEFORE we trigger + // the synth so it can produce wire-native bytes (``ulaw_8000`` for + // Twilio, ``pcm_16000`` for Telnyx) — skipping the client-side + // resample + mulaw encode that produced audible artifacts on the + // prewarmed firstMessage during 0.6.2 acceptance. The hook is opt-in + // per-adapter; adapters that don't expose it (or that the user + // configured with an explicit outputFormat) keep their format. + if (carrier) { + const carrierAware = tts as unknown as { + setTelephonyCarrier?: (c: string) => void; + }; + if (typeof carrierAware.setTelephonyCarrier === 'function') { + try { + carrierAware.setTelephonyCarrier(carrier); + } catch (err) { + getLogger().debug( + `Prewarm TTS setTelephonyCarrier failed for ${callId}: ${String(err)}`, + ); + } + } + } + // FIX #96 — refuse to spawn when the cache (live entries + // in-flight synth tasks) would exceed the cap. Counting both // active entries AND pending tasks keeps the bound honest under @@ -1198,16 +1285,30 @@ export class Patter { } catch { /* non-fatal */ } - if (this.embeddedServer && telnyxCallId) { - this.embeddedServer.metricsStore.recordCallInitiated({ + if (telnyxCallId) { + const initiatedPayload = { call_id: telnyxCallId, caller: phoneNumber, callee: options.to, direction: 'outbound', - }); + status: 'initiated', + } as const; + if (this.embeddedServer) { + this.embeddedServer.metricsStore.recordCallInitiated(initiatedPayload); + } + // Relay to a standalone dashboard (running in a separate process) + // so it surfaces the dial attempt during ringing, not only when + // media arrives on pickup. Fire-and-forget — silent when no + // standalone dashboard is listening. + try { + const { notifyDashboard } = await import('./dashboard/persistence'); + notifyDashboard(initiatedPayload); + } catch { + /* ignore */ + } } if (telnyxCallId) { - this.spawnPrewarmFirstMessage(options.agent, telnyxCallId, effectiveRingTimeout); + this.spawnPrewarmFirstMessage(options.agent, telnyxCallId, effectiveRingTimeout, 'telnyx'); // Park provider WebSockets in parallel so the per-call // StreamHandler can adopt them at ``start`` instead of paying // the cold-handshake on first turn. Off when the user @@ -1293,23 +1394,33 @@ export class Patter { } catch { /* non-fatal — the statusCallback will register anyway */ } - if (this.embeddedServer && twilioCallSid) { - this.embeddedServer.metricsStore.recordCallInitiated({ + if (twilioCallSid) { + const initiatedPayload = { call_id: twilioCallSid, caller: phoneNumber, callee: options.to, direction: 'outbound', - }); - if (twilioNotificationsPath) { - getLogger().info( - `Outbound call ${twilioCallSid} placed. ` + - `Twilio notifications: https://api.twilio.com${twilioNotificationsPath} ` + - '(check here if the call drops with no audio).', - ); + status: 'initiated', + } as const; + if (this.embeddedServer) { + this.embeddedServer.metricsStore.recordCallInitiated(initiatedPayload); + if (twilioNotificationsPath) { + getLogger().info( + `Outbound call ${twilioCallSid} placed. ` + + `Twilio notifications: https://api.twilio.com${twilioNotificationsPath} ` + + '(check here if the call drops with no audio).', + ); + } + } + try { + const { notifyDashboard } = await import('./dashboard/persistence'); + notifyDashboard(initiatedPayload); + } catch { + /* ignore */ } } if (twilioCallSid) { - this.spawnPrewarmFirstMessage(options.agent, twilioCallSid, effectiveRingTimeout); + this.spawnPrewarmFirstMessage(options.agent, twilioCallSid, effectiveRingTimeout, 'twilio'); // Park provider WebSockets in parallel so the per-call // StreamHandler can adopt them at ``start`` instead of paying // the cold-handshake on first turn. Off when the user diff --git a/libraries/typescript/src/dashboard/store.ts b/libraries/typescript/src/dashboard/store.ts index f1be69a4..8ce5c9cc 100644 --- a/libraries/typescript/src/dashboard/store.ts +++ b/libraries/typescript/src/dashboard/store.ts @@ -15,6 +15,12 @@ import { EventEmitter } from 'events'; import * as fs from 'node:fs'; import * as path from 'node:path'; import { getLogger } from '../logger'; +import { VERSION } from '../version'; + +/** Resolved SDK version (single source of truth: ``package.json``). */ +function sdkVersion(): string { + return VERSION; +} /** Snapshot of a call as held by the dashboard store. */ export interface CallRecord { @@ -482,6 +488,7 @@ export class MetricsStore extends EventEmitter { avg_latency_ms: 0, cost_breakdown: { stt: 0, tts: 0, llm: 0, telephony: 0 }, active_calls: this.activeCalls.size, + sdk_version: sdkVersion(), }; } @@ -529,6 +536,7 @@ export class MetricsStore extends EventEmitter { telephony: Math.round(costTel * 1e6) / 1e6, }, active_calls: this.activeCalls.size, + sdk_version: sdkVersion(), }; } diff --git a/libraries/typescript/src/dashboard/ui.html b/libraries/typescript/src/dashboard/ui.html index 50347d38..29a02214 100644 --- a/libraries/typescript/src/dashboard/ui.html +++ b/libraries/typescript/src/dashboard/ui.html @@ -15,7 +15,7 @@ href="https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet" /> - +`+s.stack}return{value:e,source:t,stack:l,digest:null}}function ts(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Us(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var $d=typeof WeakMap=="function"?WeakMap:Map;function Ja(e,t,n){n=be(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){cl||(cl=!0,Js=r),Us(e,t)},n}function qa(e,t,n){n=be(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var l=t.value;n.payload=function(){return r(l)},n.callback=function(){Us(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){Us(e,t),typeof r!="function"&&(yt===null?yt=new Set([this]):yt.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}function Hi(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new $d;var l=new Set;r.set(t,l)}else l=r.get(t),l===void 0&&(l=new Set,r.set(t,l));l.has(n)||(l.add(n),e=bd.bind(null,e,t,n),t.then(e,e))}function Bi(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Wi(e,t,n,r,l){return e.mode&1?(e.flags|=65536,e.lanes=l,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=be(-1,1),t.tag=2,vt(n,t,1))),n.lanes|=1),e)}var Vd=lt.ReactCurrentOwner,me=!1;function ue(e,t,n,r){t.child=e===null?Ea(t,null,n,r):pn(t,e.child,n,r)}function Qi(e,t,n,r,l){n=n.render;var s=t.ref;return un(t,l),r=Io(e,t,n,r,s,l),n=Ao(),e!==null&&!me?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,rt(e,t,l)):(B&&n&&Co(t),t.flags|=1,ue(e,t,r,l),t.child)}function Ki(e,t,n,r,l){if(e===null){var s=n.type;return typeof s=="function"&&!Ko(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,ba(e,t,s,r,l)):(e=Br(n.type,null,r,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&l)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:Gn,n(o,r)&&e.ref===t.ref)return rt(e,t,l)}return t.flags|=1,e=wt(s,r),e.ref=t.ref,e.return=t,t.child=e}function ba(e,t,n,r,l){if(e!==null){var s=e.memoizedProps;if(Gn(s,r)&&e.ref===t.ref)if(me=!1,t.pendingProps=r=s,(e.lanes&l)!==0)e.flags&131072&&(me=!0);else return t.lanes=e.lanes,rt(e,t,l)}return Hs(e,t,n,r,l)}function ec(e,t,n){var r=t.pendingProps,l=r.children,s=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},F(nn,we),we|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,F(nn,we),we|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=s!==null?s.baseLanes:n,F(nn,we),we|=r}else s!==null?(r=s.baseLanes|n,t.memoizedState=null):r=n,F(nn,we),we|=r;return ue(e,t,l,n),t.child}function tc(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Hs(e,t,n,r,l){var s=ye(n)?Dt:ie.current;return s=fn(t,s),un(t,l),n=Io(e,t,n,r,s,l),r=Ao(),e!==null&&!me?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,rt(e,t,l)):(B&&r&&Co(t),t.flags|=1,ue(e,t,n,l),t.child)}function Yi(e,t,n,r,l){if(ye(n)){var s=!0;el(t)}else s=!1;if(un(t,l),t.stateNode===null)Vr(e,t),Za(t,n,r),Vs(t,n,r,l),r=!0;else if(e===null){var o=t.stateNode,u=t.memoizedProps;o.props=u;var a=o.context,f=n.contextType;typeof f=="object"&&f!==null?f=Le(f):(f=ye(n)?Dt:ie.current,f=fn(t,f));var h=n.getDerivedStateFromProps,v=typeof h=="function"||typeof o.getSnapshotBeforeUpdate=="function";v||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(u!==r||a!==f)&&Ui(t,o,r,f),it=!1;var m=t.memoizedState;o.state=m,sl(t,r,o,l),a=t.memoizedState,u!==r||m!==a||ve.current||it?(typeof h=="function"&&($s(t,n,h,r),a=t.memoizedState),(u=it||Vi(t,n,u,r,m,a,f))?(v||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=a),o.props=r,o.state=a,o.context=f,r=u):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,La(e,t),u=t.memoizedProps,f=t.type===t.elementType?u:ze(t.type,u),o.props=f,v=t.pendingProps,m=o.context,a=n.contextType,typeof a=="object"&&a!==null?a=Le(a):(a=ye(n)?Dt:ie.current,a=fn(t,a));var x=n.getDerivedStateFromProps;(h=typeof x=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(u!==v||m!==a)&&Ui(t,o,r,a),it=!1,m=t.memoizedState,o.state=m,sl(t,r,o,l);var w=t.memoizedState;u!==v||m!==w||ve.current||it?(typeof x=="function"&&($s(t,n,x,r),w=t.memoizedState),(f=it||Vi(t,n,f,r,m,w,a)||!1)?(h||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,w,a),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,w,a)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=w),o.props=r,o.state=w,o.context=a,r=f):(typeof o.componentDidUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),r=!1)}return Bs(e,t,n,r,s,l)}function Bs(e,t,n,r,l,s){tc(e,t);var o=(t.flags&128)!==0;if(!r&&!o)return l&&zi(t,n,!1),rt(e,t,s);r=t.stateNode,Vd.current=t;var u=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=pn(t,e.child,null,s),t.child=pn(t,null,u,s)):ue(e,t,u,s),t.memoizedState=r.state,l&&zi(t,n,!0),t.child}function nc(e){var t=e.stateNode;t.pendingContext?Ti(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Ti(e,t.context,!1),To(e,t.containerInfo)}function Xi(e,t,n,r,l){return dn(),_o(l),t.flags|=256,ue(e,t,n,r),t.child}var Ws={dehydrated:null,treeContext:null,retryLane:0};function Qs(e){return{baseLanes:e,cachePool:null,transitions:null}}function rc(e,t,n){var r=t.pendingProps,l=Q.current,s=!1,o=(t.flags&128)!==0,u;if((u=o)||(u=e!==null&&e.memoizedState===null?!1:(l&2)!==0),u?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(l|=1),F(Q,l&1),e===null)return Os(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,s?(r=t.mode,s=t.child,o={mode:"hidden",children:o},!(r&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=El(o,r,0,null),e=Rt(e,r,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Qs(n),t.memoizedState=Ws,e):$o(t,o));if(l=e.memoizedState,l!==null&&(u=l.dehydrated,u!==null))return Ud(e,t,o,r,u,l,n);if(s){s=r.fallback,o=t.mode,l=e.child,u=l.sibling;var a={mode:"hidden",children:r.children};return!(o&1)&&t.child!==l?(r=t.child,r.childLanes=0,r.pendingProps=a,t.deletions=null):(r=wt(l,a),r.subtreeFlags=l.subtreeFlags&14680064),u!==null?s=wt(u,s):(s=Rt(s,o,n,null),s.flags|=2),s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,o=e.child.memoizedState,o=o===null?Qs(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=e.childLanes&~n,t.memoizedState=Ws,r}return s=e.child,e=s.sibling,r=wt(s,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function $o(e,t){return t=El({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function jr(e,t,n,r){return r!==null&&_o(r),pn(t,e.child,null,n),e=$o(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Ud(e,t,n,r,l,s,o){if(n)return t.flags&256?(t.flags&=-257,r=ts(Error(k(422))),jr(e,t,o,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=r.fallback,l=t.mode,r=El({mode:"visible",children:r.children},l,0,null),s=Rt(s,l,o,null),s.flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,t.mode&1&&pn(t,e.child,null,o),t.child.memoizedState=Qs(o),t.memoizedState=Ws,s);if(!(t.mode&1))return jr(e,t,o,null);if(l.data==="$!"){if(r=l.nextSibling&&l.nextSibling.dataset,r)var u=r.dgst;return r=u,s=Error(k(419)),r=ts(s,r,void 0),jr(e,t,o,r)}if(u=(o&e.childLanes)!==0,me||u){if(r=ee,r!==null){switch(o&-o){case 4:l=2;break;case 16:l=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:l=32;break;case 536870912:l=268435456;break;default:l=0}l=l&(r.suspendedLanes|o)?0:l,l!==0&&l!==s.retryLane&&(s.retryLane=l,nt(e,l),Fe(r,e,l,-1))}return Qo(),r=ts(Error(k(421))),jr(e,t,o,r)}return l.data==="$?"?(t.flags|=128,t.child=e.child,t=ep.bind(null,e),l._reactRetry=t,null):(e=s.treeContext,xe=mt(l.nextSibling),ke=t,B=!0,Ie=null,e!==null&&(_e[Ne++]=Je,_e[Ne++]=qe,_e[Ne++]=It,Je=e.id,qe=e.overflow,It=t),t=$o(t,r.children),t.flags|=4096,t)}function Gi(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Fs(e.return,t,n)}function ns(e,t,n,r,l){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:l}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=r,s.tail=n,s.tailMode=l)}function lc(e,t,n){var r=t.pendingProps,l=r.revealOrder,s=r.tail;if(ue(e,t,r.children,n),r=Q.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Gi(e,n,t);else if(e.tag===19)Gi(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(F(Q,r),!(t.mode&1))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;n!==null;)e=n.alternate,e!==null&&ol(e)===null&&(l=n),n=n.sibling;n=l,n===null?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),ns(t,!1,l,n,s);break;case"backwards":for(n=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&ol(e)===null){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}ns(t,!0,n,null,s);break;case"together":ns(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Vr(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function rt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ot|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(k(153));if(t.child!==null){for(e=t.child,n=wt(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=wt(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Hd(e,t,n){switch(t.tag){case 3:nc(t),dn();break;case 5:Pa(t);break;case 1:ye(t.type)&&el(t);break;case 4:To(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,l=t.memoizedProps.value;F(rl,r._currentValue),r._currentValue=l;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(F(Q,Q.current&1),t.flags|=128,null):n&t.child.childLanes?rc(e,t,n):(F(Q,Q.current&1),e=rt(e,t,n),e!==null?e.sibling:null);F(Q,Q.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return lc(e,t,n);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),F(Q,Q.current),r)break;return null;case 22:case 23:return t.lanes=0,ec(e,t,n)}return rt(e,t,n)}var sc,Ks,oc,ic;sc=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Ks=function(){};oc=function(e,t,n,r){var l=e.memoizedProps;if(l!==r){e=t.stateNode,Pt(We.current);var s=null;switch(n){case"input":l=hs(e,l),r=hs(e,r),s=[];break;case"select":l=Y({},l,{value:void 0}),r=Y({},r,{value:void 0}),s=[];break;case"textarea":l=ys(e,l),r=ys(e,r),s=[];break;default:typeof l.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=qr)}ws(n,r);var o;n=null;for(f in l)if(!r.hasOwnProperty(f)&&l.hasOwnProperty(f)&&l[f]!=null)if(f==="style"){var u=l[f];for(o in u)u.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else f!=="dangerouslySetInnerHTML"&&f!=="children"&&f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&f!=="autoFocus"&&(Hn.hasOwnProperty(f)?s||(s=[]):(s=s||[]).push(f,null));for(f in r){var a=r[f];if(u=l?.[f],r.hasOwnProperty(f)&&a!==u&&(a!=null||u!=null))if(f==="style")if(u){for(o in u)!u.hasOwnProperty(o)||a&&a.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in a)a.hasOwnProperty(o)&&u[o]!==a[o]&&(n||(n={}),n[o]=a[o])}else n||(s||(s=[]),s.push(f,n)),n=a;else f==="dangerouslySetInnerHTML"?(a=a?a.__html:void 0,u=u?u.__html:void 0,a!=null&&u!==a&&(s=s||[]).push(f,a)):f==="children"?typeof a!="string"&&typeof a!="number"||(s=s||[]).push(f,""+a):f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&(Hn.hasOwnProperty(f)?(a!=null&&f==="onScroll"&&$("scroll",e),s||u===a||(s=[])):(s=s||[]).push(f,a))}n&&(s=s||[]).push("style",n);var f=s;(t.updateQueue=f)&&(t.flags|=4)}};ic=function(e,t,n,r){n!==r&&(t.flags|=4)};function En(e,t){if(!B)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function se(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags&14680064,r|=l.flags&14680064,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags,r|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Bd(e,t,n){var r=t.pendingProps;switch(jo(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return se(t),null;case 1:return ye(t.type)&&br(),se(t),null;case 3:return r=t.stateNode,hn(),V(ve),V(ie),Ro(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Sr(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Ie!==null&&(eo(Ie),Ie=null))),Ks(e,t),se(t),null;case 5:zo(t);var l=Pt(er.current);if(n=t.type,e!==null&&t.stateNode!=null)oc(e,t,n,r,l),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(k(166));return se(t),null}if(e=Pt(We.current),Sr(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[He]=t,r[qn]=s,e=(t.mode&1)!==0,n){case"dialog":$("cancel",r),$("close",r);break;case"iframe":case"object":case"embed":$("load",r);break;case"video":case"audio":for(l=0;l<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[He]=t,e[qn]=r,sc(e,t,!1,!1),t.stateNode=e;e:{switch(o=xs(n,r),n){case"dialog":$("cancel",e),$("close",e),l=r;break;case"iframe":case"object":case"embed":$("load",e),l=r;break;case"video":case"audio":for(l=0;lvn&&(t.flags|=128,r=!0,En(s,!1),t.lanes=4194304)}else{if(!r)if(e=ol(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),En(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!B)return se(t),null}else 2*G()-s.renderingStartTime>vn&&n!==1073741824&&(t.flags|=128,r=!0,En(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(n=s.last,n!==null?n.sibling=o:t.child=o,s.last=o)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=G(),t.sibling=null,n=Q.current,F(Q,r?n&1|2:n&1),t):(se(t),null);case 22:case 23:return Wo(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?we&1073741824&&(se(t),t.subtreeFlags&6&&(t.flags|=8192)):se(t),null;case 24:return null;case 25:return null}throw Error(k(156,t.tag))}function Wd(e,t){switch(jo(t),t.tag){case 1:return ye(t.type)&&br(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return hn(),V(ve),V(ie),Ro(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return zo(t),null;case 13:if(V(Q),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(k(340));dn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return V(Q),null;case 4:return hn(),null;case 10:return Mo(t.type._context),null;case 22:case 23:return Wo(),null;case 24:return null;default:return null}}var _r=!1,oe=!1,Qd=typeof WeakSet=="function"?WeakSet:Set,E=null;function tn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){X(e,t,r)}else n.current=null}function Ys(e,t,n){try{n()}catch(r){X(e,t,r)}}var Zi=!1;function Kd(e,t){if(Ps=Gr,e=da(),So(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,u=-1,a=-1,f=0,h=0,v=e,m=null;t:for(;;){for(var x;v!==n||l!==0&&v.nodeType!==3||(u=o+l),v!==s||r!==0&&v.nodeType!==3||(a=o+r),v.nodeType===3&&(o+=v.nodeValue.length),(x=v.firstChild)!==null;)m=v,v=x;for(;;){if(v===e)break t;if(m===n&&++f===l&&(u=o),m===s&&++h===r&&(a=o),(x=v.nextSibling)!==null)break;v=m,m=v.parentNode}v=x}n=u===-1||a===-1?null:{start:u,end:a}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ts={focusedElem:e,selectionRange:n},Gr=!1,E=t;E!==null;)if(t=E,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,E=e;else for(;E!==null;){t=E;try{var w=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(w!==null){var S=w.memoizedProps,T=w.memoizedState,d=t.stateNode,c=d.getSnapshotBeforeUpdate(t.elementType===t.type?S:ze(t.type,S),T);d.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var p=t.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(k(163))}}catch(y){X(t,t.return,y)}if(e=t.sibling,e!==null){e.return=t.return,E=e;break}E=t.return}return w=Zi,Zi=!1,w}function $n(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var s=l.destroy;l.destroy=void 0,s!==void 0&&Ys(t,n,s)}l=l.next}while(l!==r)}}function _l(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Xs(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function uc(e){var t=e.alternate;t!==null&&(e.alternate=null,uc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[He],delete t[qn],delete t[Ds],delete t[Md],delete t[Ld])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function ac(e){return e.tag===5||e.tag===3||e.tag===4}function Ji(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||ac(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Gs(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=qr));else if(r!==4&&(e=e.child,e!==null))for(Gs(e,t,n),e=e.sibling;e!==null;)Gs(e,t,n),e=e.sibling}function Zs(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Zs(e,t,n),e=e.sibling;e!==null;)Zs(e,t,n),e=e.sibling}var te=null,Re=!1;function st(e,t,n){for(n=n.child;n!==null;)cc(e,t,n),n=n.sibling}function cc(e,t,n){if(Be&&typeof Be.onCommitFiberUnmount=="function")try{Be.onCommitFiberUnmount(yl,n)}catch{}switch(n.tag){case 5:oe||tn(n,t);case 6:var r=te,l=Re;te=null,st(e,t,n),te=r,Re=l,te!==null&&(Re?(e=te,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):te.removeChild(n.stateNode));break;case 18:te!==null&&(Re?(e=te,n=n.stateNode,e.nodeType===8?Gl(e.parentNode,n):e.nodeType===1&&Gl(e,n),Yn(e)):Gl(te,n.stateNode));break;case 4:r=te,l=Re,te=n.stateNode.containerInfo,Re=!0,st(e,t,n),te=r,Re=l;break;case 0:case 11:case 14:case 15:if(!oe&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var s=l,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&Ys(n,t,o),l=l.next}while(l!==r)}st(e,t,n);break;case 1:if(!oe&&(tn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(u){X(n,t,u)}st(e,t,n);break;case 21:st(e,t,n);break;case 22:n.mode&1?(oe=(r=oe)||n.memoizedState!==null,st(e,t,n),oe=r):st(e,t,n);break;default:st(e,t,n)}}function qi(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Qd),t.forEach(function(r){var l=tp.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function Te(e,t){var n=t.deletions;if(n!==null)for(var r=0;rl&&(l=o),r&=~s}if(r=l,r=G()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Xd(r/1960))-r,10e?16:e,ft===null)var r=!1;else{if(e=ft,ft=null,fl=0,A&6)throw Error(k(331));var l=A;for(A|=4,E=e.current;E!==null;){var s=E,o=s.child;if(E.flags&16){var u=s.deletions;if(u!==null){for(var a=0;aG()-Ho?zt(e,0):Uo|=n),ge(e,t)}function gc(e,t){t===0&&(e.mode&1?(t=vr,vr<<=1,!(vr&130023424)&&(vr=4194304)):t=1);var n=ce();e=nt(e,t),e!==null&&(or(e,t,n),ge(e,n))}function ep(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),gc(e,n)}function tp(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(k(314))}r!==null&&r.delete(t),gc(e,n)}var wc;wc=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||ve.current)me=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return me=!1,Hd(e,t,n);me=!!(e.flags&131072)}else me=!1,B&&t.flags&1048576&&Ca(t,nl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Vr(e,t),e=t.pendingProps;var l=fn(t,ie.current);un(t,n),l=Io(null,t,r,e,l,n);var s=Ao();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,ye(r)?(s=!0,el(t)):s=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,Po(t),l.updater=jl,t.stateNode=l,l._reactInternals=t,Vs(t,r,e,n),t=Bs(null,t,r,!0,s,n)):(t.tag=0,B&&s&&Co(t),ue(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Vr(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=rp(r),e=ze(r,e),l){case 0:t=Hs(null,t,r,e,n);break e;case 1:t=Yi(null,t,r,e,n);break e;case 11:t=Qi(null,t,r,e,n);break e;case 14:t=Ki(null,t,r,ze(r.type,e),n);break e}throw Error(k(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Hs(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Yi(e,t,r,l,n);case 3:e:{if(nc(t),e===null)throw Error(k(387));r=t.pendingProps,s=t.memoizedState,l=s.element,La(e,t),sl(t,r,null,n);var o=t.memoizedState;if(r=o.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){l=mn(Error(k(423)),t),t=Xi(e,t,r,n,l);break e}else if(r!==l){l=mn(Error(k(424)),t),t=Xi(e,t,r,n,l);break e}else for(xe=mt(t.stateNode.containerInfo.firstChild),ke=t,B=!0,Ie=null,n=Ea(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(dn(),r===l){t=rt(e,t,n);break e}ue(e,t,r,n)}t=t.child}return t;case 5:return Pa(t),e===null&&Os(t),r=t.type,l=t.pendingProps,s=e!==null?e.memoizedProps:null,o=l.children,zs(r,l)?o=null:s!==null&&zs(r,s)&&(t.flags|=32),tc(e,t),ue(e,t,o,n),t.child;case 6:return e===null&&Os(t),null;case 13:return rc(e,t,n);case 4:return To(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=pn(t,null,r,n):ue(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Qi(e,t,r,l,n);case 7:return ue(e,t,t.pendingProps,n),t.child;case 8:return ue(e,t,t.pendingProps.children,n),t.child;case 12:return ue(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,s=t.memoizedProps,o=l.value,F(rl,r._currentValue),r._currentValue=o,s!==null)if($e(s.value,o)){if(s.children===l.children&&!ve.current){t=rt(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var u=s.dependencies;if(u!==null){o=s.child;for(var a=u.firstContext;a!==null;){if(a.context===r){if(s.tag===1){a=be(-1,n&-n),a.tag=2;var f=s.updateQueue;if(f!==null){f=f.shared;var h=f.pending;h===null?a.next=a:(a.next=h.next,h.next=a),f.pending=a}}s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),Fs(s.return,n,t),u.lanes|=n;break}a=a.next}}else if(s.tag===10)o=s.type===t.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(k(341));o.lanes|=n,u=o.alternate,u!==null&&(u.lanes|=n),Fs(o,n,t),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}ue(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,un(t,n),l=Le(l),r=r(l),t.flags|=1,ue(e,t,r,n),t.child;case 14:return r=t.type,l=ze(r,t.pendingProps),l=ze(r.type,l),Ki(e,t,r,l,n);case 15:return ba(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Vr(e,t),t.tag=1,ye(r)?(e=!0,el(t)):e=!1,un(t,n),Za(t,r,l),Vs(t,r,l,n),Bs(null,t,r,!0,e,n);case 19:return lc(e,t,n);case 22:return ec(e,t,n)}throw Error(k(156,t.tag))};function xc(e,t){return Yu(e,t)}function np(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ee(e,t,n,r){return new np(e,t,n,r)}function Ko(e){return e=e.prototype,!(!e||!e.isReactComponent)}function rp(e){if(typeof e=="function")return Ko(e)?1:0;if(e!=null){if(e=e.$$typeof,e===co)return 11;if(e===fo)return 14}return 2}function wt(e,t){var n=e.alternate;return n===null?(n=Ee(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Br(e,t,n,r,l,s){var o=2;if(r=e,typeof e=="function")Ko(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case Kt:return Rt(n.children,l,s,t);case ao:o=8,l|=8;break;case cs:return e=Ee(12,n,t,l|2),e.elementType=cs,e.lanes=s,e;case fs:return e=Ee(13,n,t,l),e.elementType=fs,e.lanes=s,e;case ds:return e=Ee(19,n,t,l),e.elementType=ds,e.lanes=s,e;case Pu:return El(n,l,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Mu:o=10;break e;case Lu:o=9;break e;case co:o=11;break e;case fo:o=14;break e;case ot:o=16,r=null;break e}throw Error(k(130,e==null?e:typeof e,""))}return t=Ee(o,n,t,l),t.elementType=e,t.type=r,t.lanes=s,t}function Rt(e,t,n,r){return e=Ee(7,e,r,t),e.lanes=n,e}function El(e,t,n,r){return e=Ee(22,e,r,t),e.elementType=Pu,e.lanes=n,e.stateNode={isHidden:!1},e}function rs(e,t,n){return e=Ee(6,e,null,t),e.lanes=n,e}function ls(e,t,n){return t=Ee(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function lp(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Fl(0),this.expirationTimes=Fl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Fl(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Yo(e,t,n,r,l,s,o,u,a){return e=new lp(e,t,n,u,a),t===1?(t=1,s===!0&&(t|=8)):t=0,s=Ee(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Po(s),e}function sp(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(jc)}catch(e){console.error(e)}}jc(),ju.exports=Ce;var cp=ju.exports,ou=cp;us.createRoot=ou.createRoot,us.hydrateRoot=ou.hydrateRoot;function fp({strokeWidth:e=60,...t}){return i.jsx("svg",{viewBox:"0 0 1188 1773",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",...t,children:i.jsx("path",{d:"M25 561L245 694M25 561V818M245 694V951M25 961V1218M25 1357V1614M245 1489V1747M245 1093V1351M942 823V1080M1161 955V1213M1162 555V812M942 422V679M669 585V843L787 913M942 25V282M1162 158V415M25 818L245 951M244 1094L464 962M25 961L143 890M244 1352L464 1219M942 823L1162 956M942 679L1162 812M721 811L942 679M669 842L724 809M669 586L724 553M1041 883L1162 812M245 1747L1161 1213M244 1490L942 1080M25 1357L142 1289M518 1071L942 823M721 555L942 422M942 422L1162 556M942 282L1162 415M942 25L1162 158M942 1080L1161 1213M25 1218L245 1351M25 961L245 1094M464 962L519 929M464 1219L519 1186V928L403 859M25 1357L245 1490M25 1614L245 1747M25 561L942 25M244 694L941 282M1043 484L1162 415M245 951L668 704",stroke:"currentColor",strokeWidth:e,strokeLinecap:"round"})})}function dp(e){return i.jsxs("svg",{viewBox:"269 80 364 110",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-label":"Patter",...e,children:[i.jsx("path",{d:"M271.422 182.689V85.9524H317.517C324.705 85.9524 330.86 87.2064 335.982 89.7143C341.193 92.2223 345.192 95.7156 347.977 100.194C350.852 104.673 352.29 109.913 352.29 115.914C352.29 121.915 350.852 127.2 347.977 131.768C345.102 136.336 341.058 139.919 335.847 142.516C330.725 145.024 324.615 146.278 317.517 146.278H287.866V130.424H316.439C321.201 130.424 324.885 129.125 327.491 126.528C330.186 123.841 331.534 120.348 331.534 116.048C331.534 111.749 330.186 108.3 327.491 105.703C324.885 103.105 321.201 101.806 316.439 101.806H292.178V182.689H271.422Z",fill:"currentColor"}),i.jsx("path",{d:"M395.375 182.689C394.836 180.718 394.432 178.613 394.162 176.374C393.982 174.135 393.893 171.537 393.893 168.581H393.353V136.202C393.353 133.425 392.41 131.275 390.523 129.752C388.726 128.14 386.03 127.334 382.436 127.334C379.022 127.334 376.281 127.916 374.215 129.081C372.238 130.245 370.935 131.947 370.306 134.186H351.033C351.931 128.006 355.121 122.9 360.602 118.87C366.083 114.839 373.586 112.824 383.11 112.824C392.994 112.824 400.542 115.018 405.753 119.407C410.965 123.796 413.57 130.111 413.57 138.351V168.581C413.57 170.821 413.705 173.105 413.975 175.434C414.334 177.673 414.873 180.091 415.592 182.689H395.375ZM371.384 184.032C364.556 184.032 359.12 182.33 355.076 178.927C351.033 175.434 349.011 170.821 349.011 165.088C349.011 158.729 351.392 153.623 356.154 149.772C361.006 145.83 367.745 143.278 376.371 142.113L396.453 139.292V150.981L379.741 153.533C376.147 154.071 373.496 155.056 371.789 156.489C370.082 157.922 369.228 159.893 369.228 162.401C369.228 164.64 370.037 166.342 371.654 167.507C373.271 168.671 375.428 169.253 378.123 169.253C382.347 169.253 385.941 168.134 388.906 165.894C391.871 163.565 393.353 160.878 393.353 157.833L395.24 168.581C393.264 173.687 390.254 177.538 386.21 180.136C382.167 182.734 377.225 184.032 371.384 184.032Z",fill:"currentColor"}),i.jsx("path",{d:"M450.248 184.167C441.443 184.167 434.883 182.062 430.57 177.852C426.347 173.553 424.236 167.059 424.236 158.37V98.8506L444.453 91.3266V159.042C444.453 162.087 445.306 164.372 447.014 165.894C448.721 167.417 451.371 168.178 454.966 168.178C456.313 168.178 457.571 168.044 458.739 167.775C459.907 167.507 461.075 167.193 462.244 166.835V182.151C461.075 182.778 459.413 183.271 457.257 183.629C455.19 183.988 452.854 184.167 450.248 184.167ZM411.432 129.484V114.167H462.244V129.484H411.432Z",fill:"currentColor"}),i.jsx("path",{d:"M500.501 184.167C491.695 184.167 485.136 182.062 480.823 177.852C476.6 173.553 474.489 167.059 474.489 158.37V98.8506L494.705 91.3266V159.042C494.705 162.087 495.559 164.372 497.266 165.894C498.973 167.417 501.624 168.178 505.218 168.178C506.566 168.178 507.824 168.044 508.992 167.775C510.16 167.507 511.328 167.193 512.496 166.835V182.151C511.328 182.778 509.666 183.271 507.509 183.629C505.443 183.988 503.107 184.167 500.501 184.167ZM461.684 129.484V114.167H512.496V129.484H461.684Z",fill:"currentColor"}),i.jsx("path",{d:"M547.852 184.032C540.214 184.032 533.565 182.554 527.904 179.599C522.244 176.553 517.841 172.343 514.696 166.969C511.641 161.595 510.113 155.414 510.113 148.428C510.113 141.352 511.641 135.171 514.696 129.887C517.841 124.513 522.199 120.348 527.769 117.392C533.34 114.346 539.81 112.824 547.178 112.824C554.276 112.824 560.431 114.257 565.642 117.123C570.854 119.989 574.897 123.975 577.773 129.081C580.648 134.186 582.086 140.187 582.086 147.084C582.086 148.518 582.041 149.861 581.951 151.115C581.861 152.279 581.726 153.399 581.546 154.474H521.974V141.173H565.238L561.734 143.591C561.734 138.038 560.386 133.962 557.69 131.365C555.085 128.678 551.491 127.334 546.908 127.334C541.607 127.334 537.474 129.125 534.508 132.708C531.633 136.291 530.196 141.665 530.196 148.831C530.196 155.818 531.633 161.013 534.508 164.416C537.474 167.82 541.876 169.522 547.717 169.522C550.952 169.522 553.737 168.984 556.073 167.91C558.409 166.835 560.161 165.088 561.33 162.67H580.333C578.087 169.298 574.223 174.538 568.742 178.389C563.351 182.151 556.388 184.032 547.852 184.032Z",fill:"currentColor"}),i.jsx("path",{d:"M586.158 182.689V114.167H605.971V130.29H606.375V182.689H586.158ZM606.375 146.95L604.623 130.693C606.24 124.871 608.891 120.437 612.575 117.392C616.259 114.346 620.842 112.824 626.323 112.824C628.03 112.824 629.288 113.003 630.096 113.361V132.171C629.647 131.992 629.018 131.902 628.21 131.902C627.401 131.813 626.412 131.768 625.244 131.768C618.775 131.768 614.013 132.932 610.958 135.261C607.903 137.5 606.375 141.397 606.375 146.95Z",fill:"currentColor"})]})}function pp(){return i.jsxs("span",{className:"patter-logo",style:{display:"inline-flex",alignItems:"center",gap:8},"aria-label":"Patter",children:[i.jsx(fp,{height:26}),i.jsx(dp,{height:24})]})}function hl(e){const t=Math.floor(e/60),n=Math.floor(e%60);return`${String(t).padStart(2,"0")}:${String(n).padStart(2,"0")}`}function ml(e,t=!0){if(!e)return"";if(t)return e.startsWith("***")?"•••"+e.slice(3):e;if(e.startsWith("***"))return"•••"+e.slice(3);if(e.startsWith("sha256:"))return"••••••••";const n=e.replace(/\D/g,"");return n.length>=4?"•••"+n.slice(-4):"••••••••"}function De(e){if(e==null||!Number.isFinite(e))return"$0.00";const t=Math.abs(e);return t===0?"$0.00":t>=.01?`$${e.toFixed(2)}`:t>=.001?`$${e.toFixed(3)}`:t>=1e-4?`$${e.toFixed(4)}`:`$${e.toFixed(5)}`}function hp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("circle",{cx:"11",cy:"11",r:"7"}),i.jsx("path",{d:"m21 21-4.3-4.3"})]})}function _c(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M7 13l5 5 5-5"}),i.jsx("path",{d:"M12 4v14"})]})}function mp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M17 11l-5-5-5 5"}),i.jsx("path",{d:"M12 20V6"})]})}function vp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z"}),i.jsx("circle",{cx:"12",cy:"12",r:"3"})]})}function yp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M17.94 17.94A10.94 10.94 0 0 1 12 19c-6.5 0-10-7-10-7a18.5 18.5 0 0 1 5.06-5.94"}),i.jsx("path",{d:"M9.9 4.24A10.6 10.6 0 0 1 12 4c6.5 0 10 7 10 7a18.8 18.8 0 0 1-2.16 3.19"}),i.jsx("path",{d:"M14.12 14.12a3 3 0 1 1-4.24-4.24"}),i.jsx("path",{d:"M1 1l22 22"})]})}function gp(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("circle",{cx:"12",cy:"12",r:"4"}),i.jsx("path",{d:"M12 2v2"}),i.jsx("path",{d:"M12 20v2"}),i.jsx("path",{d:"M4.93 4.93l1.41 1.41"}),i.jsx("path",{d:"M17.66 17.66l1.41 1.41"}),i.jsx("path",{d:"M2 12h2"}),i.jsx("path",{d:"M20 12h2"}),i.jsx("path",{d:"M4.93 19.07l1.41-1.41"}),i.jsx("path",{d:"M17.66 6.34l1.41-1.41"})]})}function wp(e){return i.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:i.jsx("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})})}function iu(e){return i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M3 6h18"}),i.jsx("path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}),i.jsx("path",{d:"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"}),i.jsx("path",{d:"M10 11v6"}),i.jsx("path",{d:"M14 11v6"})]})}function xp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M18 6L6 18"}),i.jsx("path",{d:"M6 6l12 12"})]})}function Nc(e){return i.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round",...e,children:i.jsx("path",{d:"M20 6 9 17l-5-5"})})}function kp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("rect",{x:"9",y:"2",width:"6",height:"12",rx:"3"}),i.jsx("path",{d:"M19 10a7 7 0 0 1-14 0"}),i.jsx("path",{d:"M12 19v3"})]})}function Sp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("polyline",{points:"15 17 20 12 15 7"}),i.jsx("path",{d:"M4 18v-2a4 4 0 0 1 4-4h12"})]})}function Cp(e){return i.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",...e,children:i.jsx("circle",{cx:"12",cy:"12",r:"6"})})}function jp(e){return i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[i.jsx("path",{d:"M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.42 19.42 0 0 1-3.33-2.67"}),i.jsx("path",{d:"M22 2 2 22"})]})}function _p({liveCount:e,todayCount:t,phoneNumber:n,sdkVersion:r,revealed:l,dark:s,onToggleRevealed:o,onToggleDark:u}){const a=ml(n,l);return i.jsxs("header",{className:"top",children:[i.jsxs("div",{className:"brand",children:[i.jsx(pp,{}),i.jsxs("span",{className:"tag",children:["dashboard · v",r]})]}),i.jsxs("div",{className:"top-r",children:[i.jsxs("span",{className:"live-chip",children:[i.jsx("span",{className:"pulse"+(e>0?" active":"")}),e," live · ",t," today"]}),n&&n!=="—"&&i.jsx("span",{className:"num-chip",children:a}),i.jsx("button",{type:"button",className:"icon-btn toggle"+(l?" on":""),onClick:o,"aria-label":l?"Hide phone numbers":"Reveal phone numbers","aria-pressed":l,title:l?"Hide numbers":"Reveal numbers",children:l?i.jsx(vp,{}):i.jsx(yp,{})}),i.jsx("button",{type:"button",className:"icon-btn toggle"+(s?" on":""),onClick:u,"aria-label":s?"Switch to light theme":"Switch to dark theme","aria-pressed":s,title:s?"Light mode":"Dark mode",children:s?i.jsx(gp,{}):i.jsx(wp,{})})]})]})}const Np=["1h","24h","7d","All"];function Ep(){const e=document.createElement("a");e.href="/api/dashboard/export/calls?format=csv",e.download="patter_calls.csv",e.rel="noopener",document.body.appendChild(e),e.click(),document.body.removeChild(e)}function Mp({range:e,setRange:t}){return i.jsxs("div",{className:"ph",children:[i.jsxs("div",{children:[i.jsx("h1",{children:"Calls"}),i.jsxs("p",{className:"sub",children:["Real-time view of every call routed through this Patter instance."," ",i.jsx("span",{className:"kbd",children:"⇧K"})," to focus search."]})]}),i.jsxs("div",{className:"filters",children:[i.jsx("div",{className:"seg",children:Np.map(n=>i.jsx("button",{type:"button",className:e===n?"on":"",onClick:()=>t(n),children:n},n))}),i.jsxs("button",{className:"btn",type:"button",onClick:Ep,children:[i.jsx(_c,{})," Export CSV"]})]})]})}const Ec=60*60*1e3,Lp=24*Ec;function Mr(e){return new Date(e).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function Pp(e){return new Date(e).toLocaleDateString([],{weekday:"short",month:"short",day:"numeric"})}function uu(e){return new Date(e).toLocaleString([],{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function Mc(e){const t=e.toMs-e.fromMs;return t>=Lp-Tp?Pp(e.fromMs):t>=Ec?`${Mr(e.fromMs)} → ${Mr(e.toMs)}`:t>=60*1e3?`${Mr(e.fromMs)} → ${Mr(e.toMs)}`:`${uu(e.fromMs)} → ${uu(e.toMs)}`}const Tp=5e3;function Lc(e){return e.cost.total??(e.cost.telco??0)+(e.cost.llm??0)+(e.cost.sttTts??0)}function zp(e){return e.calls.length===0?void 0:[...e.calls].sort((n,r)=>(r.startedAtMs??0)-(n.startedAtMs??0))[0]?.id}function Rp(e,t){const n=e.calls,r=n.length;if(t==="spend"){const l=n.reduce((s,o)=>s+Lc(o),0);return{label:"TOTAL COST",value:De(l)}}if(t==="latency"){const l=n.filter(o=>typeof o.latencyP95=="number");return{label:"AVG LATENCY",value:`${l.length>0?Math.round(l.reduce((o,u)=>o+(u.latencyP95??0),0)/l.length):0} ms`}}return{label:r===1?"CALL":"CALLS",value:`${r}`}}function Dp({bucket:e,kind:t}){const n=Mc(e),r=e.calls.length;if(r===0)return i.jsxs("div",{className:"spark-tooltip",children:[i.jsx("div",{className:"spark-tooltip-range",children:n}),i.jsx("div",{className:"spark-tooltip-empty",children:"no calls"})]});const l=Rp(e,t),s=e.calls.slice(0,4);return i.jsxs("div",{className:"spark-tooltip",children:[i.jsx("div",{className:"spark-tooltip-range",children:n}),i.jsxs("div",{className:"spark-tooltip-headline",children:[i.jsx("span",{className:"spark-tooltip-headline-l",children:l.label}),i.jsx("span",{className:"spark-tooltip-headline-v",children:l.value})]}),i.jsx("ul",{className:"spark-tooltip-list",children:s.map(o=>{const u=o.direction==="inbound"?o.from:o.to;return i.jsxs("li",{children:[i.jsx("span",{className:"num",children:u}),i.jsx("span",{className:"status",children:o.status}),i.jsx("span",{className:"cost",children:De(Lc(o))})]},o.id)})}),r>s.length&&i.jsxs("div",{className:"spark-tooltip-more",children:["+",r-s.length," more"]})]})}function Ip({bucket:e,height:t,interactive:n,kind:r,onSelect:l}){const[s,o]=M.useState(!1),u=!!e&&e.calls.length>0;return!n||!e?i.jsx("span",{className:"spark-bar-static",style:{height:t+"%"}}):i.jsxs("div",{className:"spark-bar-wrap",onMouseEnter:()=>o(!0),onMouseLeave:()=>o(!1),children:[i.jsx("button",{type:"button",className:"spark-bar"+(u?"":" empty"),style:{height:t+"%"},disabled:!u,onClick:()=>{if(!u)return;const a=zp(e);a&&l&&l(a)},onFocus:()=>o(!0),onBlur:()=>o(!1),"aria-label":`${e.calls.length} calls in ${Mc(e)}`}),s&&i.jsx(Dp,{bucket:e,kind:r})]})}function Lr({label:e,value:t,unit:n,delta:r,deltaTone:l,spark:s,buckets:o,onSelectCall:u,kind:a="count",peach:f,footer:h,badge:v}){const m=!!o&&!!u;return i.jsxs("div",{className:"metric"+(f?" peach":""),children:[i.jsxs("div",{className:"lbl",children:[i.jsx("span",{children:e}),v&&i.jsx("span",{className:"badge-now",children:"LIVE"})]}),i.jsxs("div",{className:"val",children:[t,n&&i.jsxs("span",{className:"unit",children:[" ",n]})]}),r&&i.jsx("div",{className:"delta "+(l||""),children:r}),h&&i.jsx("div",{className:"delta",children:h}),i.jsx("div",{className:"spark",children:s.map((x,w)=>i.jsx(Ip,{bucket:o?.[w],height:x,interactive:m,kind:a,onSelect:u},w))})]})}function Ap({call:e,isSelected:t,onSelect:n,isNew:r,isChecked:l,onToggleCheck:s,revealed:o}){const u=e.status==="live"&&e.durationStart?hl((Date.now()-e.durationStart)/1e3):hl(e.duration||0),a=e.latencyP95?Math.min(100,e.latencyP95/1e3*100):0,f=(e.latencyP95??0)>600,h=e.cost.total??(e.cost.telco??0)+(e.cost.llm??0)+(e.cost.sttTts??0),v=e.status.replace("-","");return i.jsxs("tr",{className:(t?"selected ":"")+(r?"new-row ":"")+(l?"checked":""),onClick:n,children:[i.jsx("td",{className:"check-cell",onClick:m=>{m.stopPropagation(),s&&s(m)},"aria-disabled":s===null,children:i.jsx("button",{type:"button",className:"row-check"+(l?" on":"")+(s===null?" disabled":""),"aria-label":s===null?"Live calls cannot be deleted":l?"Deselect call":"Select call","aria-pressed":l,disabled:s===null,onClick:m=>{m.stopPropagation(),s&&s(m)},tabIndex:s===null?-1:0,children:l?i.jsx(Nc,{}):null})}),i.jsx("td",{children:i.jsx("span",{className:"pill "+v,children:e.status})}),i.jsxs("td",{children:[i.jsx("span",{className:"dir in",style:{marginRight:8,color:e.direction==="inbound"?"#3b6f3b":"#4a4a4a"},children:e.direction==="inbound"?i.jsx(_c,{}):i.jsx(mp,{})}),i.jsxs("span",{className:"num-cell pii",children:[ml(e.from,o)," → ",ml(e.to,o)]})]}),i.jsx("td",{children:i.jsxs("span",{className:"car-tw",children:[i.jsx("span",{className:"car-dot "+(e.carrier==="twilio"?"tw":"tx")}),e.carrier==="twilio"?"Twilio":"Telnyx"]})}),i.jsx("td",{className:"num-cell",children:e.status==="no-answer"?"—":u}),i.jsx("td",{children:e.latencyP95?i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"lat-bar"+(f?" warn":""),children:i.jsx("i",{style:{width:a+"%"}})}),i.jsxs("span",{className:"num-cell",children:[e.latencyP95," ms"]})]}):"—"}),i.jsx("td",{className:"num-cell",children:De(h)})]})}function Op({calls:e,selectedId:t,onSelect:n,newId:r,search:l,setSearch:s,onDeleteCalls:o,revealed:u}){const a=M.useMemo(()=>{if(!l.trim())return e;const g=l.toLowerCase();return e.filter(j=>j.from.toLowerCase().includes(g)||j.to.toLowerCase().includes(g)||j.status.includes(g)||j.carrier.includes(g)||j.id.includes(g))},[e,l]),[f,h]=M.useState(new Set),[v,m]=M.useState(!1),[x,w]=M.useState(!1),S=M.useMemo(()=>a.filter(g=>g.status!=="live").map(g=>g.id),[a]),T=M.useMemo(()=>S.filter(g=>f.has(g)),[S,f]),d=S.length>0&&T.length===S.length,c=T.length>0,p=g=>{h(j=>{const D=new Set(j);return D.has(g)?D.delete(g):D.add(g),D})},y=()=>{h(g=>{const j=new Set(g);if(d)for(const D of S)j.delete(D);else for(const D of S)j.add(D);return j})},_=()=>{h(new Set),m(!1)},C=async()=>{if(!(!o||T.length===0||x)){w(!0);try{await o(T),_()}finally{w(!1)}}};return i.jsxs("div",{className:"panel",children:[i.jsxs("div",{className:"panel-h",children:[i.jsxs("h3",{children:["Recent calls"," ",i.jsxs("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,color:"#aaa",fontWeight:500,marginLeft:4},children:["(",a.length,")"]})]}),i.jsxs("div",{className:"search",children:[i.jsx(hp,{}),i.jsx("input",{placeholder:"Search number, status, carrier…",value:l,onChange:g=>s(g.target.value)})]}),i.jsxs("span",{className:"sse",children:[i.jsx("span",{className:"dot"}),"streaming · SSE"]})]}),c?i.jsxs("div",{className:"bulk-bar"+(v?" confirming":""),role:"region","aria-label":"Bulk actions",children:[i.jsxs("span",{className:"bulk-count",children:[i.jsx("span",{className:"bulk-num",children:T.length}),i.jsx("span",{className:"bulk-lbl",children:T.length===1?"call selected":"calls selected"})]}),i.jsx("div",{className:"bulk-spacer"}),v?i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"bulk-warn",children:"Removes from view + metrics. Logs kept on disk."}),i.jsx("button",{type:"button",className:"bulk-btn ghost",onClick:()=>m(!1),disabled:x,children:"Cancel"}),i.jsxs("button",{type:"button",className:"bulk-btn destructive",onClick:()=>void C(),disabled:x,autoFocus:!0,children:[i.jsx(iu,{}),i.jsx("span",{children:x?"Deleting…":`Delete ${T.length}`})]})]}):i.jsxs(i.Fragment,{children:[i.jsxs("button",{type:"button",className:"bulk-btn ghost",onClick:_,"aria-label":"Clear selection",children:[i.jsx(xp,{}),i.jsx("span",{children:"Clear"})]}),i.jsxs("button",{type:"button",className:"bulk-btn destructive",onClick:()=>m(!0),children:[i.jsx(iu,{}),i.jsx("span",{children:"Delete"})]})]})]}):null,i.jsx("div",{style:{minHeight:540,maxHeight:540,overflow:"auto"},children:i.jsxs("table",{className:"call-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:"check-cell",children:i.jsx("button",{type:"button",className:"row-check head"+(d?" on":c?" indet":"")+(S.length===0?" disabled":""),onClick:y,disabled:S.length===0,"aria-label":d?"Deselect all":"Select all calls in view","aria-pressed":d,children:d?i.jsx(Nc,{}):c?i.jsx("span",{className:"indet-mark"}):null})}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"From → To"}),i.jsx("th",{children:"Carrier"}),i.jsx("th",{children:"Duration"}),i.jsx("th",{children:"p95 latency"}),i.jsx("th",{children:"Cost"})]})}),i.jsx("tbody",{children:a.length===0?i.jsx("tr",{children:i.jsxs("td",{colSpan:7,className:"empty",children:['No calls match "',l,'"']})}):a.map(g=>i.jsx(Ap,{call:g,isSelected:g.id===t,onSelect:()=>n(g.id),isNew:g.id===r,isChecked:f.has(g.id),onToggleCheck:g.status==="live"?null:()=>p(g.id),revealed:u},g.id))})]})})]})}function Fp({start:e}){const[,t]=M.useState(0);return M.useEffect(()=>{const n=setInterval(()=>t(r=>r+1),1e3);return()=>clearInterval(n)},[]),i.jsx(i.Fragment,{children:hl((Date.now()-e)/1e3)})}function $p({call:e,transcript:t,onEnd:n,recording:r,setRecording:l,muted:s,setMuted:o,revealed:u}){const a=M.useRef(null);if(M.useEffect(()=>{a.current&&(a.current.scrollTop=a.current.scrollHeight)},[t]),!e)return i.jsxs("div",{className:"rr-card",children:[i.jsx("h3",{children:"No live call selected"}),i.jsx("div",{className:"meta",children:"Select a call from the table — or wait for the next ring."})]});const f=e.status==="live";return i.jsxs("div",{className:"rr-card",children:[i.jsxs("h3",{children:["Live call",i.jsx("span",{className:"pill "+(f?"live":"done"),children:e.status})]}),i.jsxs("div",{className:"meta",children:[i.jsx("strong",{className:"pii",children:ml(e.direction==="inbound"?e.from:e.to,u)}),i.jsx("span",{className:"sep",children:"·"}),e.agent]}),i.jsxs("div",{className:"duration-block",children:[i.jsx("span",{className:"l",children:"duration"}),i.jsxs("span",{className:"agent",children:[e.direction==="inbound"?"inbound":"outbound"," ·"," ",e.carrier==="twilio"?"Twilio":"Telnyx"]}),i.jsx("span",{className:"v",children:f&&e.durationStart?i.jsx(Fp,{start:e.durationStart}):hl(e.duration||0)})]}),i.jsx("div",{className:"transcript",ref:a,children:t.map((h,v)=>h.who==="tool"?i.jsxs("div",{className:"turn tool",children:[i.jsx("div",{className:"av",children:"⚙"}),i.jsxs("div",{className:"body",children:[i.jsxs("div",{className:"who",children:["tool · ",h.txt]}),h.args&&i.jsx("div",{className:"tool-call",children:Object.entries(h.args).map(([m,x])=>i.jsxs("span",{children:[i.jsxs("span",{className:"k",children:[m,":"]}),' "',String(x),'"'," "]},m))})]})]},v):i.jsxs("div",{className:"turn "+h.who,children:[i.jsx("div",{className:"av",children:h.who==="user"?"U":"P"}),i.jsxs("div",{className:"body",children:[i.jsxs("div",{className:"who",children:[h.who==="user"?"caller":"agent",h.typing&&" · typing"]}),i.jsx("div",{className:"txt",children:h.typing?i.jsxs("span",{className:"typing",children:[i.jsx("span",{}),i.jsx("span",{}),i.jsx("span",{})]}):h.txt}),h.lat&&!h.typing&&i.jsxs("div",{className:"lat",children:[h.lat.stt&&`stt ${h.lat.stt} ms`,h.lat.total&&`total ${h.lat.total} ms · llm ${h.lat.llm} · tts ${h.lat.tts}`]})]})]},v))}),f&&i.jsxs("div",{className:"controls",children:[i.jsxs("button",{type:"button",className:"ctrl"+(s?" active":""),onClick:()=>o(!s),children:[i.jsx(kp,{})," ",s?"unmute":"mute"]}),i.jsxs("button",{type:"button",className:"ctrl",children:[i.jsx(Sp,{})," transfer"]}),i.jsxs("button",{type:"button",className:"ctrl"+(r?" active":""),onClick:()=>l(!r),children:[i.jsx(Cp,{})," ",r?"stop rec":"record"]}),i.jsxs("button",{type:"button",className:"ctrl danger",onClick:n,children:[i.jsx(jp,{})," end"]})]})]})}const Vp=e=>!!e&&typeof e.latencyP95=="number",Up=e=>!!e&&(typeof e.cost.telco=="number"||typeof e.cost.llm=="number"||typeof e.cost.sttTts=="number"||typeof e.cost.total=="number");function Hp({call:e}){const[t,n]=M.useState("latency"),r=Vp(e),l=Up(e);if(!e||!r&&!l)return null;const s=t==="latency"&&!r?"cost":t==="cost"&&!l?"latency":t;return i.jsxs("div",{className:"rr-card metrics-panel",children:[i.jsx("div",{className:"metrics-panel-h",children:i.jsxs("div",{className:"seg",role:"tablist",children:[i.jsx("button",{type:"button",role:"tab","aria-selected":s==="latency",disabled:!r,className:s==="latency"?"on":"",onClick:()=>n("latency"),children:"Latency"}),i.jsx("button",{type:"button",role:"tab","aria-selected":s==="cost",disabled:!l,className:s==="cost"?"on":"",onClick:()=>n("cost"),children:"Cost"})]})}),i.jsxs("div",{className:"metrics-panel-body",children:[s==="latency"&&r&&i.jsx(Bp,{call:e}),s==="cost"&&l&&i.jsx(Wp,{call:e})]})]})}function Bp({call:e}){const t=e.latencyP50??0,n=e.latencyP95??0;if(e.mode==="realtime"){const h=(e.turnCount??0)>=2;return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"lat-grid",children:[i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"end-to-end p50"}),i.jsxs("div",{className:"v",children:[h&&t||"—",h&&i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox"+(h&&n>600?" warn":""),children:[i.jsx("div",{className:"l",children:"end-to-end p95"}),i.jsxs("div",{className:"v",children:[h&&n||"—",h&&i.jsx("span",{className:"u",children:"ms"})]})]})]}),i.jsx("div",{className:"waterfall",children:i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"e2e"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar llm",style:{left:0,width:Math.min(100,n/1e3*100)+"%"}})}),i.jsx("span",{className:"v",children:n})]})}),i.jsxs("div",{className:"wf-legend",children:[i.jsxs("span",{children:[i.jsx("i",{style:{background:"#DF9367"}}),"end-to-end"]}),i.jsx("span",{style:{marginLeft:"auto"},children:e.agent??"realtime"})]})]})}const l=e.sttAvg||0,s=e.llmAvg||0,o=e.ttsAvg||0,u=l+s+o,a=Math.max(u,800),f=(e.turnCount??0)>=2;return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"lat-grid",children:[i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"p50"}),i.jsxs("div",{className:"v",children:[f?e.latencyP50??"—":"—",f&&i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox"+(f&&n>600?" warn":""),children:[i.jsx("div",{className:"l",children:"p95"}),i.jsxs("div",{className:"v",children:[f?n:"—",f&&i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"stt avg"}),i.jsxs("div",{className:"v",children:[e.sttAvg??"—",i.jsx("span",{className:"u",children:"ms"})]})]}),i.jsxs("div",{className:"latbox",children:[i.jsx("div",{className:"l",children:"tts avg"}),i.jsxs("div",{className:"v",children:[e.ttsAvg??"—",i.jsx("span",{className:"u",children:"ms"})]})]})]}),i.jsxs("div",{className:"waterfall",children:[i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"stt"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar stt",style:{left:0,width:l/a*100+"%"}})}),i.jsx("span",{className:"v",children:l})]}),i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"llm"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar llm",style:{left:l/a*100+"%",width:s/a*100+"%"}})}),i.jsx("span",{className:"v",children:s})]}),i.jsxs("div",{className:"wf-row",children:[i.jsx("span",{className:"lbl",children:"tts"}),i.jsx("span",{className:"track",children:i.jsx("span",{className:"seg-bar tts",style:{left:(l+s)/a*100+"%",width:o/a*100+"%"}})}),i.jsx("span",{className:"v",children:o})]})]}),i.jsxs("div",{className:"wf-legend",children:[i.jsxs("span",{children:[i.jsx("i",{style:{background:"#1a1a1a"}}),"stt"]}),i.jsxs("span",{children:[i.jsx("i",{style:{background:"#DF9367"}}),"llm"]}),i.jsxs("span",{children:[i.jsx("i",{style:{background:"#278EFF",opacity:.8}}),"tts"]}),i.jsxs("span",{style:{marginLeft:"auto"},children:["total ",u," ms"]})]})]})}function ss(e){if(e.length===0)return e;const t=e.replace(/(?:_(?:ws|rest|stt|tts|llm))+$/i,"");return t.charAt(0).toUpperCase()+t.slice(1)}function Wp({call:e}){const t=e.cost,n=t.telco??0,r=t.llm??0,l=t.stt??0,s=t.tts??0,o=t.sttTts??0,u=l===0&&s===0?o:0,a=t.cached??0,f=n+r+l+s+u,h=t.total??f-a,v=S=>f>0?S/f*100:0,m=e.sttProvider?`${ss(e.sttProvider)} STT${e.sttModel?` · ${e.sttModel}`:""}`:"STT",x=e.ttsProvider?`${ss(e.ttsProvider)} TTS${e.ttsModel?` · ${e.ttsModel}`:""}`:"TTS",w=e.llmModel?`${e.model?ss(e.model)+" · ":""}${e.llmModel}`:e.model||"LLM";return i.jsxs(i.Fragment,{children:[f>0&&i.jsxs("div",{className:"cost-bar",children:[i.jsx("i",{style:{background:"#cc0000",width:v(n)+"%"}}),i.jsx("i",{style:{background:"#DF9367",width:v(r)+"%"}}),i.jsx("i",{style:{background:"#1a1a1a",width:v(l+u)+"%"}}),i.jsx("i",{style:{background:"#6c6c6c",width:v(s)+"%"}})]}),n>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#cc0000"}}),e.carrier==="twilio"?"Twilio":"Telnyx"]}),i.jsx("span",{className:"v",children:De(n)})]}),r>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#DF9367"}}),w]}),i.jsx("span",{className:"v",children:De(r)}),a>0&&i.jsxs("span",{className:"saved",children:["−",De(a)," cached"]})]}),l>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#1a1a1a"}}),m]}),i.jsx("span",{className:"v",children:De(l)})]}),s>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#6c6c6c"}}),x]}),i.jsx("span",{className:"v",children:De(s)})]}),u>0&&i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:[i.jsx("span",{className:"swatch",style:{background:"#1a1a1a"}}),"STT / TTS (legacy)"]}),i.jsx("span",{className:"v",children:De(u)})]}),i.jsxs("div",{className:"stack-row",children:[i.jsxs("span",{className:"lbl",children:["Total"," ",e.status==="live"&&i.jsx("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"#aaa",marginLeft:4},children:"(running)"})]}),i.jsx("span",{className:"v",children:De(h)})]})]})}const Ut=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Tt=e=>typeof e=="string"?e:"",Ae=e=>typeof e=="number"&&Number.isFinite(e)?e:0,ae=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,Xe=e=>typeof e=="string"&&e.length>0?e:void 0;function Pr(e){if(Ut(e))return{stt_ms:ae(e.stt_ms),llm_ms:ae(e.llm_ms),tts_ms:ae(e.tts_ms),total_ms:ae(e.total_ms),agent_response_ms:ae(e.agent_response_ms),endpoint_ms:ae(e.endpoint_ms),user_speech_duration_ms:ae(e.user_speech_duration_ms)}}function Qp(e){if(Ut(e))return{stt:ae(e.stt),tts:ae(e.tts),llm:ae(e.llm),telephony:ae(e.telephony),total:ae(e.total),llm_cached_savings:ae(e.llm_cached_savings)}}function Kp(e){if(!Ut(e))return null;const t=e.turns;return{duration_seconds:ae(e.duration_seconds),provider_mode:Xe(e.provider_mode),telephony_provider:Xe(e.telephony_provider),stt_provider:Xe(e.stt_provider),tts_provider:Xe(e.tts_provider),llm_provider:Xe(e.llm_provider),stt_model:Xe(e.stt_model),tts_model:Xe(e.tts_model),llm_model:Xe(e.llm_model),cost:Qp(e.cost),latency_avg:Pr(e.latency_avg),latency_p50:Pr(e.latency_p50),latency_p95:Pr(e.latency_p95),latency_p99:Pr(e.latency_p99),turns:Array.isArray(t)?t:void 0}}function Yp(e){if(!Array.isArray(e))return;const t=[];for(const n of e)Ut(n)&&t.push({role:Tt(n.role),text:Tt(n.text),timestamp:Ae(n.timestamp)});return t}function Pc(e){if(!Ut(e))return null;const t=Tt(e.call_id);if(t.length===0)return null;const n=e.turns;return{call_id:t,caller:Tt(e.caller),callee:Tt(e.callee),direction:Tt(e.direction),started_at:Ae(e.started_at),ended_at:ae(e.ended_at),status:Xe(e.status),transcript:Yp(e.transcript),turns:Array.isArray(n)?n:void 0,metrics:Kp(e.metrics)}}function Tc(e){if(!Array.isArray(e))return[];const t=[];for(const n of e){const r=Pc(n);r&&t.push(r)}return t}function Xp(e){return Ut(e)?{stt:Ae(e.stt),tts:Ae(e.tts),llm:Ae(e.llm),telephony:Ae(e.telephony)}:{stt:0,tts:0,llm:0,telephony:0}}function Gp(e){if(!Ut(e))return{total_calls:0,total_cost:0,avg_duration:0,avg_latency_ms:0,cost_breakdown:{stt:0,tts:0,llm:0,telephony:0},active_calls:0};const t=Tt(e.sdk_version);return{total_calls:Ae(e.total_calls),total_cost:Ae(e.total_cost),avg_duration:Ae(e.avg_duration),avg_latency_ms:Ae(e.avg_latency_ms),cost_breakdown:Xp(e.cost_breakdown),active_calls:Ae(e.active_calls),...t?{sdk_version:t}:{}}}async function Jo(e){const t=await fetch(e,{headers:{Accept:"application/json"}});if(!t.ok)throw new Error(`Request to ${e} failed with status ${t.status}`);return t.json()}async function Zp(e=50,t=0){const n=`/api/dashboard/calls?limit=${encodeURIComponent(e)}&offset=${encodeURIComponent(t)}`,r=await Jo(n);return Tc(r)}async function Jp(){const e=await Jo("/api/dashboard/active");return Tc(e)}async function qp(){const e=await Jo("/api/dashboard/aggregates");return Gp(e)}async function bp(e){const t=`/api/dashboard/calls/${encodeURIComponent(e)}`,n=await fetch(t,{headers:{Accept:"application/json"}});if(n.status===404)return null;if(!n.ok)throw new Error(`Request to ${t} failed with status ${n.status}`);const r=await n.json();return Pc(r)}async function eh(e){if(e.length===0)return[];if(e.length===1){const r=`/api/dashboard/calls/${encodeURIComponent(e[0])}`,l=await fetch(r,{method:"DELETE",headers:{Accept:"application/json"}});if(!l.ok)throw new Error(`DELETE ${r} failed with status ${l.status}`);const s=await l.json();return Array.isArray(s.deleted)?s.deleted.filter(o=>typeof o=="string"):[]}const t=await fetch("/api/dashboard/calls/delete",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({call_ids:e})});if(!t.ok)throw new Error(`POST /api/dashboard/calls/delete failed with status ${t.status}`);const n=await t.json();return Array.isArray(n.deleted)?n.deleted.filter(r=>typeof r=="string"):[]}const th=new Set(["in-progress","initiated"]);function nh(e){if(!e)return"ended";switch(e){case"in-progress":case"initiated":return"live";case"completed":return"ended";case"no-answer":return"no-answer";case"busy":case"failed":case"canceled":case"webhook_error":return"fail";default:return"ended"}}function rh(e){return e==="outbound"?"outbound":"inbound"}function lh(e){return typeof e=="string"&&e.toLowerCase().includes("telnyx")?"telnyx":"twilio"}function sh(e){if(typeof e!="string")return"unknown";const t=e.toLowerCase();return t.includes("realtime")?"realtime":t.includes("convai")?"convai":t.includes("pipeline")?"pipeline":"unknown"}function au(e){return e.length===0?"—":e}function oh(e){const t=e.metrics?.provider_mode;if(!t)return;const n=e.metrics?.llm_provider;return t.startsWith("pipeline")&&n?`${t} · ${n}`:t}function ih(e){const t=e.metrics?.cost;if(!t)return{};const n={};return typeof t.telephony=="number"&&(n.telco=t.telephony),typeof t.llm=="number"&&(n.llm=t.llm),typeof t.stt=="number"&&(n.stt=t.stt),typeof t.tts=="number"&&(n.tts=t.tts),typeof t.llm_cached_savings=="number"&&(n.cached=t.llm_cached_savings),(n.stt!==void 0||n.tts!==void 0)&&(n.sttTts=(n.stt??0)+(n.tts??0)),n.telco===void 0&&n.llm===void 0&&n.sttTts===void 0&&typeof t.total=="number"&&(n.total=t.total),n}function uh(e,t){if(t)return;const n=e.metrics?.duration_seconds;return typeof n=="number"?n:typeof e.ended_at=="number"&&typeof e.started_at=="number"?Math.max(0,e.ended_at-e.started_at):0}function ah(e){if(typeof e.ended_at=="number")return Math.round(Date.now()/1e3-e.ended_at)}function cu(e){const t=nh(e.status),n=t==="live"||e.status!==void 0&&th.has(e.status),r=e.metrics?.latency_avg,l=e.metrics?.latency_p50,s=e.metrics?.latency_p95,o=(Array.isArray(e.metrics?.turns)?e.metrics?.turns?.length:void 0)??(Array.isArray(e.transcript)?e.transcript.length:void 0);return{id:e.call_id,status:t,direction:rh(e.direction),from:au(e.caller),to:au(e.callee),carrier:lh(e.metrics?.telephony_provider),startedAtMs:typeof e.started_at=="number"?e.started_at*1e3:void 0,durationStart:n?e.started_at*1e3:void 0,duration:uh(e,n),latencyP95:s?.agent_response_ms??s?.total_ms??r?.total_ms,latencyP50:l?.agent_response_ms??l?.total_ms??r?.total_ms,sttAvg:r?.stt_ms,ttsAvg:r?.tts_ms,llmAvg:r?.llm_ms,turnCount:o,agentResponseP50:l?.agent_response_ms,agentResponseP95:s?.agent_response_ms,cost:ih(e),agent:oh(e),model:e.metrics?.llm_provider,mode:sh(e.metrics?.provider_mode),sttProvider:e.metrics?.stt_provider,ttsProvider:e.metrics?.tts_provider,sttModel:e.metrics?.stt_model,ttsModel:e.metrics?.tts_model,llmModel:e.metrics?.llm_model,transcriptKey:e.call_id,endedAgo:ah(e)}}function ch(e){const t=e.transcript;if(t&&t.length>0){const l=[];for(const s of t){const o=s.text;switch(s.role){case"user":l.push({who:"user",txt:o});break;case"assistant":l.push({who:"bot",txt:o});break;case"tool":l.push({who:"tool",txt:o});break;default:l.push({who:"bot",txt:o});break}}return l}const n=e.turns;if(!n||n.length===0)return[];const r=[];for(const l of n){if(typeof l!="object"||l===null)continue;const s=l,o=typeof s.user_text=="string"?s.user_text:"",u=typeof s.agent_text=="string"?s.agent_text:"";o.length>0&&r.push({who:"user",txt:o}),u.length>0&&u!=="[interrupted]"&&r.push({who:"bot",txt:u})}return r}const zc=60*1e3,Rc=60*zc,os=24*Rc;function fh(e,t=Date.now()){switch(e){case"1h":{const n=5*zc,r=Math.ceil(t/n)*n,l=r-12*n;return{count:12,bucketSizeMs:n,window:{fromMs:l,toMs:r}}}case"24h":{const n=Rc,r=Math.ceil(t/n)*n,l=r-24*n;return{count:24,bucketSizeMs:n,window:{fromMs:l,toMs:r}}}case"7d":{const n=new Date(t);n.setHours(0,0,0,0);const r=n.getTime()+os,l=r-7*os;return{count:7,bucketSizeMs:os,window:{fromMs:l,toMs:r}}}case"All":default:return{count:9,bucketSizeMs:0,window:{fromMs:0,toMs:t}}}}function dh(e,t){const{fromMs:n,toMs:r}=t;return e.filter(l=>{const s=to(l);return typeof s!="number"?!1:s>=n&&s<=r})}function to(e){if(typeof e.startedAtMs=="number")return e.startedAtMs;if(typeof e.durationStart=="number")return e.durationStart;if(typeof e.endedAgo=="number")return Date.now()-e.endedAgo*1e3}function ph(e){const t=e.cost,n=(t.telco??0)+(t.llm??0)+(t.sttTts??0);return n>0?n:t.total??0}function hh(e){const t=e.reduce((n,r)=>r>n?r:n,0);return t<=0?e.map(()=>0):e.map(n=>Math.round(n/t*100))}function Tr(e,t,n=9,r){const l=typeof n=="object",s=l?n.count:n,o=Math.max(1,Math.floor(s)),u=l?n.window:r,a=l?n.bucketSizeMs:0;let f,h;if(u)f=u.fromMs,h=u.toMs;else{const d=[];for(const c of e){const p=to(c);typeof p=="number"&&d.push(p)}if(d.length===0){const c=Date.now();return{heights:new Array(o).fill(0),buckets:new Array(o).fill(null).map(()=>[]),window:{fromMs:c,toMs:c},bucketSizeMs:0}}f=Math.min(...d),h=Math.max(...d)}const v=Math.max(1,h-f),m=a>0?a:v/o,x=new Array(o).fill(null).map(()=>[]),w=new Array(o).fill(0),S=new Array(o).fill(0);for(const d of e){const c=to(d);if(typeof c!="number"||ch)continue;let p=Math.floor((c-f)/m);p>=o&&(p=o-1),p<0&&(p=0),x[p].push(d),t==="totalCalls"?w[p]+=1:t==="latency"?typeof d.latencyP95=="number"&&(w[p]+=d.latencyP95,S[p]+=1):w[p]+=ph(d)}const T=t==="latency"?w.map((d,c)=>S[c]>0?d/S[c]:0):w;return{heights:hh(T),buckets:x,window:{fromMs:f,toMs:h},bucketSizeMs:m}}const mh=500;function vh(e,t){const n=new Set,r=[];for(const l of e)n.has(l.call_id)||(n.add(l.call_id),r.push(cu(l)));for(const l of t)n.has(l.call_id)||(n.add(l.call_id),r.push(cu(l)));return r}function yh(e,t){const n=new Map(e.map(s=>[s.id,s])),r=new Set(t.map(s=>s.id)),l=t.map(s=>{const o=n.get(s.id);return o?{...o,...s,latencyP95:s.latencyP95??o.latencyP95,latencyP50:s.latencyP50??o.latencyP50,sttAvg:s.sttAvg??o.sttAvg,ttsAvg:s.ttsAvg??o.ttsAvg,llmAvg:s.llmAvg??o.llmAvg,turnCount:s.turnCount??o.turnCount,agentResponseP50:s.agentResponseP50??o.agentResponseP50,agentResponseP95:s.agentResponseP95??o.agentResponseP95,cost:{...o.cost,...s.cost}}:s});for(const s of e)r.has(s.id)||l.push(s);return l.sort((s,o)=>(o.startedAtMs??0)-(s.startedAtMs??0)),l.slice(0,mh)}const gh=1e3,wh=3e4,xh=5,kh=5e3,Sh=["call_start","call_initiated","call_status","call_end","calls_deleted"];function fu(e){return e instanceof Error?e.message:"Unknown error"}function Ch(){const[e,t]=M.useState([]),[n,r]=M.useState(null),[l,s]=M.useState(!1),[o,u]=M.useState(null),a=M.useRef(!0),f=M.useRef(null),h=M.useRef(null),v=M.useRef(null),m=M.useRef(0),x=M.useCallback(()=>{h.current!==null&&(clearTimeout(h.current),h.current=null)},[]),w=M.useCallback(()=>{v.current!==null&&(clearInterval(v.current),v.current=null)},[]),S=M.useCallback(()=>{f.current!==null&&(f.current.close(),f.current=null)},[]),T=M.useCallback(async()=>{try{const[g,j,D]=await Promise.all([Jp(),Zp(50,0),qp()]);if(!a.current)return;t(L=>yh(L,vh(g,j))),r(D),u(null)}catch(g){if(!a.current)return;u(fu(g))}},[]),d=M.useCallback(()=>{v.current===null&&(v.current=setInterval(()=>{T()},kh))},[T]),c=M.useRef(()=>{}),p=M.useCallback(()=>{if(x(),m.current>=xh){d();return}const g=m.current,j=Math.min(wh,gh*Math.pow(2,g));m.current=g+1,h.current=setTimeout(()=>{h.current=null,a.current&&c.current()},j)},[x,d]),y=M.useCallback(()=>{T()},[T]),_=M.useCallback(()=>{S();let g;try{g=new EventSource("/api/dashboard/events")}catch(j){u(fu(j)),p();return}f.current=g,g.onopen=()=>{a.current&&(m.current=0,w(),s(!0))},g.onerror=()=>{a.current&&(s(!1),S(),p())};for(const j of Sh)g.addEventListener(j,y);g.addEventListener("turn_complete",y)},[S,w,y,p]);M.useEffect(()=>{c.current=_},[_]),M.useEffect(()=>(a.current=!0,T(),_(),()=>{a.current=!1,x(),w(),S()}),[]);const C=M.useCallback(g=>{if(g.length===0)return;const j=new Set(g);t(D=>D.filter(L=>!j.has(L.id)))},[]);return{calls:e,aggregates:n,isStreaming:l,error:o,refresh:T,removeCallsLocal:C}}const jh=2e3;function _h(e,t){const[n,r]=M.useState([]),l=M.useRef(!0);return M.useEffect(()=>(l.current=!0,()=>{l.current=!1}),[]),M.useEffect(()=>{if(!e){r([]);return}let s=!1,o=null,u=null;const a=async()=>{try{const h=await bp(e);if(s||!l.current)return;if(h===null){r([]);return}r(ch(h))}catch{}};a();const f=h=>{const v=h;try{return JSON.parse(v.data)?.call_id===e}catch{return!1}};try{u=new EventSource("/api/dashboard/events"),u.addEventListener("turn_complete",h=>{f(h)&&a()}),u.addEventListener("call_end",h=>{f(h)&&a()})}catch{u=null}return t&&(o=setInterval(()=>{a()},jh)),()=>{s=!0,o!==null&&clearInterval(o),u!==null&&u.close()}},[e,t]),n}const du="patter.dashboard.reveal",Dc="patter.dashboard.theme";function Nh(e,t){try{const n=window.localStorage.getItem(e);return n==="1"||n==="true"?!0:n==="0"||n==="false"?!1:t}catch{return t}}function Eh(){try{const e=window.localStorage.getItem(Dc);if(e==="dark")return"dark";if(e==="light")return"light"}catch{}return"light"}function Mh(){const[e,t]=M.useState(()=>Nh(du,!1)),[n,r]=M.useState(()=>Eh());M.useEffect(()=>{try{window.localStorage.setItem(du,e?"1":"0")}catch{}},[e]),M.useEffect(()=>{try{window.localStorage.setItem(Dc,n)}catch{}const o=document.body.classList;n==="dark"?o.add("dark"):o.remove("dark")},[n]);const l=M.useCallback(()=>{t(o=>!o)},[]),s=M.useCallback(()=>{r(o=>o==="dark"?"light":"dark")},[]);return{revealed:e,dark:n==="dark",toggleRevealed:l,toggleDark:s}}const Lh="dev",is={"1h":"1h","24h":"24h","7d":"7d",All:"all-time"};function Ph(e){const t=e.filter(r=>typeof r.latencyP95=="number");if(t.length===0)return 0;const n=t.reduce((r,l)=>r+(l.latencyP95??0),0);return Math.round(n/t.length)}function Th(e){return e.reduce((t,n)=>{if(typeof n.cost.total=="number")return t+n.cost.total;const r=(n.cost.telco??0)+(n.cost.llm??0)+(n.cost.sttTts??0);return t+r},0)}function zh(e){const n=e.find(l=>l.status==="live")??e[0];if(!n)return"";const r=n.direction==="inbound"?n.to:n.from;return r&&r!=="—"?r:""}function Rh(){const{calls:e,aggregates:t,isStreaming:n,error:r,refresh:l,removeCallsLocal:s}=Ch(),{revealed:o,dark:u,toggleRevealed:a,toggleDark:f}=Mh(),[h,v]=M.useState(null),[m,x]=M.useState(""),[w,S]=M.useState("24h"),[T,d]=M.useState(!0),[c,p]=M.useState(!1),y=M.useMemo(()=>fh(w),[w]),_=y.window,C=M.useMemo(()=>{if(w==="All")return e;const I=new Set(dh(e,_).map(H=>H.id));return e.filter(H=>H.status==="live"||I.has(H.id))},[e,w,_]);M.useEffect(()=>{if(h!==null)return;const I=C.find(H=>H.status==="live")??C[0];I&&v(I.id)},[C,h]),M.useEffect(()=>{h!==null&&(C.some(I=>I.id===h)||v(null))},[C,h]),M.useEffect(()=>{const I=H=>{if(!(H.shiftKey&&H.key.toLowerCase()==="k"||H.metaKey&&H.key.toLowerCase()==="k"))return;H.preventDefault(),document.querySelector(".panel-h .search input")?.focus()};return window.addEventListener("keydown",I),()=>window.removeEventListener("keydown",I)},[]);const g=M.useMemo(()=>C.find(I=>I.id===h)??null,[C,h]),j=g?.status==="live",D=_h(g?.id??null,j),L=M.useMemo(()=>e.filter(I=>I.status==="live").length,[e]),pe=M.useMemo(()=>e.filter(I=>I.status==="live"&&I.direction==="inbound").length,[e]),_t=L-pe,Qe=C.length,cr=Ph(C)||t?.avg_latency_ms||0,zl=Th(C)||t?.total_cost||0,xn=zh(e),Ht=typeof t?.sdk_version=="string"&&t.sdk_version||Lh,N=M.useMemo(()=>Tr(C,"totalCalls",y),[C,y]),P=M.useMemo(()=>Tr(C,"latency",y),[C,y]),z=M.useMemo(()=>Tr(C,"spend",y),[C,y]),U=M.useMemo(()=>{const I=e.filter(H=>H.status==="live");return Tr(I,"totalCalls",y)},[e,y]),W=I=>I.heights.map((H,Ye)=>({height:H,calls:I.buckets[Ye],fromMs:I.window.fromMs+Ye*I.bucketSizeMs,toMs:I.window.fromMs+(Ye+1)*I.bucketSizeMs})),Bt=()=>{g&&l().catch(()=>{})},Ke=async I=>{if(I.length!==0){s(I),I.includes(h??"")&&v(null);try{await eh(I)}catch{await l().catch(()=>{})}}};return i.jsxs(i.Fragment,{children:[i.jsx(_p,{liveCount:L,todayCount:Qe,phoneNumber:xn,sdkVersion:Ht,revealed:o,dark:u,onToggleRevealed:a,onToggleDark:f}),i.jsxs("div",{className:"page",children:[i.jsx(Mp,{range:w,setRange:I=>S(I)}),i.jsxs("div",{className:"metrics",children:[i.jsx(Lr,{label:`Calls · ${is[w]}`,value:Qe,spark:N.heights,buckets:W(N),onSelectCall:v,kind:"count"}),i.jsx(Lr,{label:"Avg latency p95",value:cr||0,unit:"ms",spark:P.heights,buckets:W(P),onSelectCall:v,kind:"latency"}),i.jsx(Lr,{label:`Spend · ${is[w]}`,value:De(zl),spark:z.heights,buckets:W(z),onSelectCall:v,kind:"spend"}),i.jsx(Lr,{label:"Active now",value:L,peach:!0,badge:!0,footer:`${pe} inbound · ${_t} outbound`,spark:U.heights,buckets:W(U),onSelectCall:v,kind:"count"})]}),i.jsxs("div",{className:"split",children:[i.jsx(Op,{calls:C,selectedId:h,onSelect:v,newId:null,search:m,setSearch:x,onDeleteCalls:Ke,revealed:o}),i.jsxs("div",{className:"rr",children:[i.jsx($p,{call:g,transcript:D,onEnd:Bt,recording:T,setRecording:d,muted:c,setMuted:p,revealed:o}),i.jsx(Hp,{call:g})]})]}),i.jsxs("div",{className:"statusbar",children:[i.jsxs("div",{className:"group",children:[i.jsx("span",{className:n?"green":"",children:n?"streaming · sse":r?`error · ${r}`:"idle"}),i.jsxs("span",{children:["SDK · ",Ht]})]}),i.jsx("div",{className:"group",children:i.jsxs("span",{children:[L," live · ",Qe," ",is[w]]})})]})]})]})}const Ic=document.getElementById("root");if(!Ic)throw new Error("Patter dashboard: #root element missing");us.createRoot(Ic).render(i.jsx(qc.StrictMode,{children:i.jsx(Rh,{})})); diff --git a/libraries/typescript/src/providers/elevenlabs-tts.ts b/libraries/typescript/src/providers/elevenlabs-tts.ts index 36a0b8bb..2dfd4a0b 100644 --- a/libraries/typescript/src/providers/elevenlabs-tts.ts +++ b/libraries/typescript/src/providers/elevenlabs-tts.ts @@ -179,11 +179,21 @@ export class ElevenLabsTTS { private readonly apiKey: string; private readonly voiceId: string; private readonly modelId: string; - private readonly outputFormat: ElevenLabsOutputFormat; + private _outputFormat: ElevenLabsOutputFormat; + private readonly _outputFormatExplicit: boolean; private readonly voiceSettings: ElevenLabsVoiceSettings | undefined; private readonly languageCode: string | undefined; private readonly chunkSize: number; + /** + * Public view of the (possibly auto-flipped) wire format. Read by the + * stream-handler to decide whether to skip the client-side resample + + * mulaw encode when the bytes are already in the carrier's wire codec. + */ + get outputFormat(): ElevenLabsOutputFormat { + return this._outputFormat; + } + // Overloads: positional form (back-compat, accepts `string` for // outputFormat so existing callers passing arbitrary strings keep // compiling) and options-object form (strongly typed). @@ -205,20 +215,50 @@ export class ElevenLabsTTS { const o = voiceIdOrOptions; this.voiceId = resolveVoiceId(o.voiceId ?? '21m00Tcm4TlvDq8ikWAM'); this.modelId = o.modelId ?? ElevenLabsModel.FLASH_V2_5; - this.outputFormat = o.outputFormat ?? ElevenLabsOutputFormat.PCM_16000; + this._outputFormatExplicit = o.outputFormat !== undefined; + this._outputFormat = o.outputFormat ?? ElevenLabsOutputFormat.PCM_16000; this.voiceSettings = o.voiceSettings; this.languageCode = o.languageCode; this.chunkSize = o.chunkSize ?? 4096; } else { this.voiceId = resolveVoiceId(voiceIdOrOptions); this.modelId = modelId; - this.outputFormat = outputFormat as ElevenLabsOutputFormat; + // Positional 4th-arg form: treat as explicit only when the caller + // passed something different from the default. Mirrors the WS + // variant's _outputFormatExplicit semantics. + this._outputFormatExplicit = + outputFormat !== ElevenLabsOutputFormat.PCM_16000; + this._outputFormat = outputFormat as ElevenLabsOutputFormat; this.voiceSettings = undefined; this.languageCode = undefined; this.chunkSize = 4096; } } + /** + * Hook called by ``StreamHandler.initPipeline`` to advise the carrier + * wire format. When the user did NOT pass an explicit ``outputFormat``, + * auto-flip to the carrier's native codec so the audio bytes ElevenLabs + * returns are already in Twilio/Telnyx wire format — eliminating the + * client-side 16 kHz → 8 kHz resample and PCM → μ-law encode. The + * resample/encode chain was a source of audible artifacts on the + * prewarmed firstMessage (see 0.6.2 acceptance notes — burst delivery + * of resampled audio crackled on the carrier-side jitter buffer). + * + * No-op when the caller passed an explicit ``outputFormat`` (incl. via + * the ``forTwilio`` / ``forTelnyx`` factories) — user wins. + * + * Parity with {@link ElevenLabsWebSocketTTS.setTelephonyCarrier}. + */ + setTelephonyCarrier(carrier: string): void { + if (this._outputFormatExplicit) return; + if (carrier === 'twilio') { + this._outputFormat = ElevenLabsOutputFormat.ULAW_8000; + } else if (carrier === 'telnyx') { + this._outputFormat = ElevenLabsOutputFormat.PCM_16000; + } + } + /** * Construct an instance pre-configured for Twilio Media Streams. * @@ -293,7 +333,7 @@ export class ElevenLabsTTS { * good choice for low-latency telephony. */ async *synthesizeStream(text: string): AsyncGenerator { - const url = `${ELEVENLABS_BASE_URL}/text-to-speech/${encodeURIComponent(this.voiceId)}/stream?output_format=${encodeURIComponent(this.outputFormat)}`; + const url = `${ELEVENLABS_BASE_URL}/text-to-speech/${encodeURIComponent(this.voiceId)}/stream?output_format=${encodeURIComponent(this._outputFormat)}`; const body: Record = { text, diff --git a/libraries/typescript/src/providers/elevenlabs-ws-tts.ts b/libraries/typescript/src/providers/elevenlabs-ws-tts.ts index 30fe67c1..7685831c 100644 --- a/libraries/typescript/src/providers/elevenlabs-ws-tts.ts +++ b/libraries/typescript/src/providers/elevenlabs-ws-tts.ts @@ -160,6 +160,21 @@ export class ElevenLabsWebSocketTTS implements TTSAdapter { */ private adoptedConnection: ElevenLabsParkedWS | null = null; + /** + * Active WS for the in-flight ``synthesizeStream`` call, if any. Set + * when a stream starts, cleared in its ``finally`` block. The + * stream-handler calls ``cancelActiveStream()`` from ``cancelSpeaking`` + * to unblock the generator's inner ``await Promise`` — without + * it, a barge-in on the firstMessage live path leaves the for-await + * stuck waiting for the next frame; ElevenLabs never sends + * ``isFinal=true`` after the consumer breaks, the 30 s frame timeout + * fires post-call, and meanwhile ``initPipeline`` never returns so + * the STT ``onTranscript`` callback never registers and subsequent + * user turns are silently dropped (root cause of the 2026-05-20 + * "first message OK, then no response" symptom). + */ + private activeStreamWs: WebSocket | null = null; + /** * The wire format requested over the ElevenLabs WS. Initially set from * the constructor; ``setTelephonyCarrier`` may auto-flip it to the @@ -219,6 +234,34 @@ export class ElevenLabsWebSocketTTS implements TTSAdapter { this._outputFormat = native; } + /** + * Force-close the WebSocket of any in-flight ``synthesizeStream`` call. + * Called by the stream-handler from ``cancelSpeaking`` (barge-in) so + * the generator's inner ``await Promise`` loop unblocks cleanly + * via the ``onClose`` handler — instead of waiting up to 30 s for the + * ``FRAME_TIMEOUT_MS`` watchdog to fire. No-op when no stream is in + * flight or when the WS is already closing. + * + * Without this, a barge-in during the firstMessage live path left the + * for-await stuck (ElevenLabs never sends ``isFinal=true`` after the + * consumer breaks), ``initPipeline`` never returned, the STT + * ``onTranscript`` callback never registered, and the entire remainder + * of the call was silent for the user. Surfaced during the 2026-05-20 + * acceptance run. + */ + cancelActiveStream(): void { + const ws = this.activeStreamWs; + if (!ws) return; + this.activeStreamWs = null; + try { + if (ws.readyState === WebSocket.OPEN || ws.readyState === WebSocket.CONNECTING) { + ws.close(); + } + } catch { + /* best-effort — finally block in synthesizeStream will also try */ + } + } + /** Pre-configured for Twilio Media Streams (`ulaw_8000`). */ static forTwilio(opts: Omit): ElevenLabsWebSocketTTS { return new ElevenLabsWebSocketTTS({ @@ -311,6 +354,11 @@ export class ElevenLabsWebSocketTTS implements TTSAdapter { headers: { 'xi-api-key': this.apiKey }, }); } + // Expose the in-flight WS so ``cancelActiveStream`` (called from + // the stream-handler's ``cancelSpeaking``) can force a clean exit + // out of the inner ``await Promise`` loop. Cleared in the + // outer finally so a stale reference can't leak across calls. + this.activeStreamWs = ws; const queue: Buffer[] = []; let done = false; @@ -462,6 +510,11 @@ export class ElevenLabsWebSocketTTS implements TTSAdapter { } } finally { if (connectTimer) clearTimeout(connectTimer); + // Clear the active-stream reference BEFORE we close, so a + // concurrent ``cancelActiveStream`` call from the stream-handler + // observes that the stream is already cleaning itself up and + // avoids a double-close. + if (this.activeStreamWs === ws) this.activeStreamWs = null; // Best-effort EOS so the server stops billing for unconsumed audio. try { if (ws.readyState === WebSocket.OPEN) { diff --git a/libraries/typescript/src/providers/openai-realtime-2.ts b/libraries/typescript/src/providers/openai-realtime-2.ts index 61943daf..ac693516 100644 --- a/libraries/typescript/src/providers/openai-realtime-2.ts +++ b/libraries/typescript/src/providers/openai-realtime-2.ts @@ -113,17 +113,33 @@ export class OpenAIRealtime2Adapter extends OpenAIRealtimeAdapter { transcription: { model: opts.inputAudioTranscriptionModel ?? OpenAITranscriptionModel.WHISPER_1, }, - // Lower threshold (0.3 vs the 0.5 default) because the inbound - // audio is telephony-band (8 kHz) linearly upsampled to 24 kHz — - // the upper 4-12 kHz band is interpolation, not real harmonics, - // and the GA server VAD's default tuning was calibrated against - // studio-quality 24 kHz audio. A more permissive threshold - // recovers reliable speech detection on phone-band input. + // VAD threshold raised back to the OpenAI default (0.5) on + // 2026-05-22. The earlier 0.1 tuning (motivated by the + // upsampled telephony-band loss in high frequencies) made the + // server VAD trigger on the carrier-loopback echo of the + // agent's OWN outbound audio in PSTN no-AEC scenarios. + // Combined with the default ``turn_detection.create_response: + // true``, every phantom ``speech_started`` ended a turn early + // and auto-created a new response that the agent immediately + // spoke over, leading to a runaway loop where the first + // message was repeatedly cut and re-generated. turn_detection: { type: opts.vadType ?? OpenAIRealtimeVADType.SERVER_VAD, - threshold: 0.1, + threshold: 0.5, prefix_padding_ms: 300, silence_duration_ms: opts.silenceDurationMs ?? 500, + // Defer ``response.create`` to the application: when OpenAI's + // server VAD commits an ``input_audio_buffer.committed`` segment + // that turns out to be a Whisper hallucination on silence/echo, + // auto-creating a response would generate a phantom turn (the + // model reads the hallucinated text as user input). Patter + // triggers ``response.create`` explicitly in the Realtime + // stream-handler AFTER validating ``transcript_input`` against + // the hallucination filter. Pair with ``interrupt_response: + // false`` so server VAD also leaves in-flight responses alone — + // barge-in is gated client-side. + create_response: false, + interrupt_response: false, }, }, output: { @@ -292,6 +308,152 @@ export class OpenAIRealtime2Adapter extends OpenAIRealtimeAdapter { this.armHeartbeatAndListener(); } + /** + * GA-API variant of {@link OpenAIRealtimeAdapter.openParkedConnection}. + * Opens a fresh Realtime WS against the GA endpoint, exchanges + * `session.created` → GA-shape `session.update` → `session.updated` + * so the upstream session is fully primed, and returns the OPEN + * socket WITHOUT taking it on `this.ws` or arming the heartbeat / + * message listener. + * + * Used by `Patter.parkProviderConnections` during the carrier + * ringing window so the per-call `StreamHandler` can adopt the + * primed socket at carrier `start` — eliminating the TCP + TLS + + * HTTP-101 + `session.update` ack round-trip from the critical path. + * Saves ~300-600 ms of first-audible-word latency. + * + * Bounded by 8 s. Throws on timeout / handshake failure / GA-side + * rejection. Callers treat any error as a cache miss and fall + * through to the cold {@link connect} path. + * + * Billing safety: confirmed by OpenAI's Managing Realtime Costs + * guide — `session.update` does NOT invoke the model and bills no + * tokens. An idle parked socket costs $0. + */ + override async openParkedConnection(): Promise { + const url = `wss://api.openai.com/v1/realtime?model=${encodeURIComponent(this.model)}`; + const ws = new WebSocket(url, { + headers: { Authorization: `Bearer ${this.apiKey}` }, + }); + await new Promise((resolve, reject) => { + let sessionCreated = false; + let settled = false; + const onMessage = (raw: Buffer | string): void => { + let msg: { type?: string; error?: { message?: string } }; + try { + msg = JSON.parse(raw.toString()) as { type?: string; error?: { message?: string } }; + } catch { + return; + } + if (msg.type === 'session.created' && !sessionCreated) { + sessionCreated = true; + try { + ws.send(JSON.stringify({ type: 'session.update', session: this.buildGASessionConfig() })); + } catch (err) { + cleanup(); + reject(err instanceof Error ? err : new Error(String(err))); + } + } else if (msg.type === 'session.updated') { + cleanup(); + resolve(); + } else if (msg.type === 'error') { + cleanup(); + reject(new Error(`OpenAI Realtime 2 parked-setup error: ${msg.error?.message ?? JSON.stringify(msg)}`)); + } + }; + const onError = (err: Error): void => { + cleanup(); + reject(err); + }; + const cleanup = (): void => { + if (settled) return; + settled = true; + clearTimeout(timer); + ws.off('message', onMessage); + ws.off('error', onError); + }; + const timer = setTimeout(() => { + cleanup(); + reject(new Error('OpenAI Realtime 2 park connect timeout')); + }, 8000); + ws.on('message', onMessage); + ws.on('error', onError); + }); + // Application-level keepalive. Empirically, OpenAI's GA Realtime + // edge closes idle parked sockets within ~6-7 s — WS-level PINGs + // alone are not counted as activity. Re-sending the (idempotent) + // `session.update` every 3 s keeps the session alive across the + // 3-15 s ringing window. Cancelled in `adoptWebSocket` when the + // live adapter takes over. Billing safety: `session.update` bills + // no tokens (no model invocation). + const keepalive = setInterval(() => { + if (ws.readyState !== ws.OPEN) { + clearInterval(keepalive); + return; + } + try { + ws.send(JSON.stringify({ type: 'session.update', session: this.buildGASessionConfig() })); + } catch { + clearInterval(keepalive); + } + }, 3000); + (ws as unknown as { _parkedKeepalive?: NodeJS.Timeout })._parkedKeepalive = keepalive; + return ws; + } + + /** + * GA-API variant of {@link OpenAIRealtimeAdapter.adoptWebSocket}. Takes + * over a WS that {@link openParkedConnection} produced (already through + * `session.created` + `session.update` + `session.updated`) and arms + * the heartbeat + message listener so the GA event-translation shim + * is wired up. Skips the cold-connect path — saves ~300-600 ms on + * first audible word. + * + * Caller MUST verify `ws.readyState === OPEN` before calling. If the + * parked WS died between park and adopt, fall back to {@link connect}. + */ + override adoptWebSocket(ws: WebSocket): void { + // Cancel the parked keepalive before the live adapter starts + // sending its own frames — otherwise the interval would race + // input_audio_buffer.append writes on the same socket. + const wsAny = ws as unknown as { _parkedKeepalive?: NodeJS.Timeout }; + if (wsAny._parkedKeepalive) { + clearInterval(wsAny._parkedKeepalive); + delete wsAny._parkedKeepalive; + } + this.ws = ws; + // Re-attach the GA event-translation `ws.on` shim BEFORE + // `armHeartbeatAndListener` registers the persistent message + // listener — otherwise GA event names fall through to the v1 + // dispatcher's no-op branch and audio is silently dropped. This + // mirrors the patch the parent `connect` installs on its + // freshly-opened socket; we apply it to the adopted one too. + const wsRef = ws as unknown as { + on: (event: string, handler: (...args: unknown[]) => void) => unknown; + }; + const originalOn = wsRef.on.bind(ws); + wsRef.on = (event: string, handler: (...args: unknown[]) => void): unknown => { + if (event !== 'message') return originalOn(event, handler); + const wrapped = (raw: unknown, ...rest: unknown[]): void => { + try { + const text = typeof raw === 'string' ? raw : (raw as Buffer).toString(); + const parsed = JSON.parse(text) as { type?: string }; + const t = parsed.type; + if (t && Object.prototype.hasOwnProperty.call(GA_TO_V1_EVENT_NAMES, t)) { + (parsed as { type?: string }).type = GA_TO_V1_EVENT_NAMES[t]; + handler(JSON.stringify(parsed), ...rest); + return; + } + } catch { + /* fall through */ + } + handler(raw, ...rest); + }; + return originalOn(event, wrapped); + }; + this.armHeartbeatAndListener(); + } + /** * GA-API variant of {@link OpenAIRealtimeAdapter.sendFirstMessage}. Two * differences from the v1 path: @@ -398,21 +560,21 @@ export class OpenAIRealtime2Adapter extends OpenAIRealtimeAdapter { } async sendFirstMessage(text: string): Promise { - // Bypass reasoning for the first message: this is a literal "say - // exactly X" instruction, not an open question, so the reasoning - // tier inherited from the session (`reasoningEffort` — typically - // "low" for production voice) only adds time-to-first-audio without - // changing the output. Forcing `minimal` here lets the first message - // start streaming as fast as possible; subsequent VAD-triggered - // `response.create`s continue to use the session's reasoning tier. - this.ws?.send(JSON.stringify({ - type: 'response.create', - response: { - output_modalities: ['audio'], - audio: { output: { voice: this.voice } }, - reasoning: { effort: 'minimal' }, - instructions: `Say exactly the following sentence as your first turn and nothing else: "${text}"`, - }, - })); + // ``reasoning.effort`` is only accepted by the flagship GA variants + // (``gpt-realtime``, ``gpt-realtime-2``). The cost-tier + // ``gpt-realtime-mini`` rejects it with "Unsupported option for + // this model" and the first message never reaches the carrier. + // Forward the field only when the caller explicitly opted into a + // tier — the session.update already configured the inherited tier + // for subsequent VAD-driven turns. + const responseBody: Record = { + output_modalities: ['audio'], + audio: { output: { voice: this.voice } }, + instructions: `Say exactly the following sentence as your first turn and nothing else: "${text}"`, + }; + if (this.options.reasoningEffort !== undefined) { + responseBody.reasoning = { effort: this.options.reasoningEffort }; + } + this.ws?.send(JSON.stringify({ type: 'response.create', response: responseBody })); } } diff --git a/libraries/typescript/src/providers/openai-realtime.ts b/libraries/typescript/src/providers/openai-realtime.ts index 97dd20b6..57a539bb 100644 --- a/libraries/typescript/src/providers/openai-realtime.ts +++ b/libraries/typescript/src/providers/openai-realtime.ts @@ -247,7 +247,6 @@ export class OpenAIRealtimeAdapter { const sock = new WebSocket(url, { headers: { Authorization: `Bearer ${this.apiKey}`, - 'OpenAI-Beta': 'realtime=v1', }, }); const timer = setTimeout(() => { @@ -335,7 +334,6 @@ export class OpenAIRealtimeAdapter { this.ws = new WebSocket(url, { headers: { Authorization: `Bearer ${this.apiKey}`, - 'OpenAI-Beta': 'realtime=v1', }, }); @@ -437,7 +435,6 @@ export class OpenAIRealtimeAdapter { const ws = new WebSocket(url, { headers: { Authorization: `Bearer ${this.apiKey}`, - 'OpenAI-Beta': 'realtime=v1', }, }); await new Promise((resolve, reject) => { @@ -610,22 +607,29 @@ export class OpenAIRealtimeAdapter { */ cancelResponse(): void { if (!this.ws) return; - if (this.currentResponseItemId) { - let audioEndMs = this.currentResponseAudioMs; - if (this.currentResponseFirstAudioAt !== null) { - const elapsedMs = Date.now() - this.currentResponseFirstAudioAt; - audioEndMs = Math.min(audioEndMs, Math.max(elapsedMs, 0)); - } - try { - this.ws.send(JSON.stringify({ - type: 'conversation.item.truncate', - item_id: this.currentResponseItemId, - content_index: 0, - audio_end_ms: audioEndMs, - })); - } catch (err) { - getLogger().debug?.(`conversation.item.truncate failed: ${String(err)}`); - } + if (!this.currentResponseItemId) { + // No response in flight — nothing to cancel. OpenAI Realtime GA + // rejects an unconditional ``response.cancel`` with + // ``response_cancel_not_active``, which surfaces as ERROR-level + // log spam on every phantom VAD ``speech_started`` (echo of + // agent audio, voicemail beep, line noise). Silent no-op here + // keeps the cancel idempotent across stale callers. + return; + } + let audioEndMs = this.currentResponseAudioMs; + if (this.currentResponseFirstAudioAt !== null) { + const elapsedMs = Date.now() - this.currentResponseFirstAudioAt; + audioEndMs = Math.min(audioEndMs, Math.max(elapsedMs, 0)); + } + try { + this.ws.send(JSON.stringify({ + type: 'conversation.item.truncate', + item_id: this.currentResponseItemId, + content_index: 0, + audio_end_ms: audioEndMs, + })); + } catch (err) { + getLogger().debug?.(`conversation.item.truncate failed: ${String(err)}`); } this.ws.send(JSON.stringify({ type: 'response.cancel' })); // Reset per-response tracking so any post-cancel late frames and the @@ -644,6 +648,20 @@ export class OpenAIRealtimeAdapter { this.ws?.send(JSON.stringify({ type: 'response.create' })); } + /** + * Trigger `response.create` with no new user item. + * + * Used by the Realtime stream-handler to drive a response after the + * client-side hallucination filter accepts an + * `input_audio_transcription.completed` event. The server VAD config + * sets `create_response: false` so OpenAI no longer auto-creates a + * response on every `input_audio_buffer.committed`; Patter is now + * responsible for triggering it explicitly when a real user turn lands. + */ + async requestResponse(): Promise { + this.ws?.send(JSON.stringify({ type: 'response.create' })); + } + /** * Make the AI speak ``text`` as its opening line. * diff --git a/libraries/typescript/src/providers/silero-vad.ts b/libraries/typescript/src/providers/silero-vad.ts index e4a1261b..3ec5c63e 100644 --- a/libraries/typescript/src/providers/silero-vad.ts +++ b/libraries/typescript/src/providers/silero-vad.ts @@ -416,6 +416,19 @@ export class SileroVAD implements VADProvider { static forPhoneCall(options: SileroVADOptions = {}): Promise { return SileroVAD.load({ sampleRate: 16000, + // Telephony bumps the activation threshold from the upstream + // 0.5 → 0.8 (with deactivation 0.65) so background voices and + // low-volume audio in the caller's room don't trip barge-in. + // Near-mic speech typically scores 0.85-0.98 on Silero — above + // 0.8 — while a distant second speaker through a phone's noise- + // suppression pipeline lands around 0.4-0.6 and is now correctly + // ignored. Bumped twice during 2026-05-20 acceptance: first 0.5 + // → 0.7 (still triggered on quiet voices), then 0.7 → 0.8. + // Trade-off: a whispered legitimate input may not trigger; + // typical phone-call speakers are unaffected. Pass an explicit + // ``activationThreshold`` to override per call site. + activationThreshold: 0.8, + deactivationThreshold: 0.65, ...options, }); } diff --git a/libraries/typescript/src/providers/twilio-adapter.ts b/libraries/typescript/src/providers/twilio-adapter.ts index 209fbb58..1a3d62e2 100644 --- a/libraries/typescript/src/providers/twilio-adapter.ts +++ b/libraries/typescript/src/providers/twilio-adapter.ts @@ -203,17 +203,37 @@ export class TwilioAdapter { } /** - * Build a minimal ```` - * TwiML document. Mirrors the Python adapter's ``generate_stream_twiml``. + * Build a ```` TwiML document. + * + * ``parameters`` is forwarded as ```` + * children of ````. Twilio Media Streams strips query-string params + * from the ```` before the WS handshake, so + * ```` tags are the supported way to pre-populate + * ``start.customParameters`` on the WS ``start`` frame. Used by the + * inbound path to carry caller / callee through to the bridge. + * + * Mirrors the Python adapter's ``generate_stream_twiml``. */ - static generateStreamTwiml(streamUrl: string): string { - const escaped = streamUrl - .replace(/&/g, '&') - .replace(//g, '>') - .replace(/"/g, '"') - .replace(/'/g, '''); - return ``; + static generateStreamTwiml( + streamUrl: string, + parameters?: Record, + ): string { + const esc = (s: string): string => + s + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, '''); + const escapedUrl = esc(streamUrl); + let paramTags = ''; + if (parameters) { + for (const [name, value] of Object.entries(parameters)) { + if (value == null) continue; + paramTags += ``; + } + } + return `${paramTags}`; } /** Force-complete an in-progress call. */ diff --git a/libraries/typescript/src/server.ts b/libraries/typescript/src/server.ts index 2a409323..c3b71e85 100644 --- a/libraries/typescript/src/server.ts +++ b/libraries/typescript/src/server.ts @@ -1488,10 +1488,15 @@ export class EmbeddedServer { const resolvedCaller = dataCaller || active?.caller || ''; const resolvedCallee = dataCallee || active?.callee || ''; // Fire-and-forget: call logging must never block the voice flow. + const resolvedDirection = + (typeof data.direction === 'string' ? data.direction : '') || + active?.direction || + 'inbound'; void logger .logCallStart(callId, { caller: resolvedCaller, callee: resolvedCallee, + direction: resolvedDirection, telephonyProvider: bridge.telephonyProvider, providerMode: agent.provider ?? '', agent: agentSnapshot(), diff --git a/libraries/typescript/src/services/call-log.ts b/libraries/typescript/src/services/call-log.ts index 83f82f04..a08f5ed0 100644 --- a/libraries/typescript/src/services/call-log.ts +++ b/libraries/typescript/src/services/call-log.ts @@ -89,9 +89,16 @@ function retentionDays(): number { } function redactMode(): RedactMode { - const raw = (process.env.PATTER_LOG_REDACT_PHONE || 'mask').trim().toLowerCase(); + // Default ``full`` (changed from ``mask`` on 2026-05-21): the dashboard + // UI's reveal toggle (``revealed=true`` in ``format.ts:fmtPhone``) cannot + // reconstruct a raw number once the persisted record has already been + // masked, so storing raw on disk is required for the toggle to actually + // work. The on-disk path (platform user data dir) is user-private. + // Override with ``PATTER_LOG_REDACT_PHONE=mask`` for setups that ship + // logs off-host. + const raw = (process.env.PATTER_LOG_REDACT_PHONE || 'full').trim().toLowerCase(); if (raw === 'full' || raw === 'mask' || raw === 'hash_only') return raw; - return 'mask'; + return 'full'; } function redactPhone(raw: string): string { @@ -146,6 +153,7 @@ async function appendJsonl(filePath: string, record: unknown): Promise { export interface CallStartInput { readonly caller?: string; readonly callee?: string; + readonly direction?: string; readonly telephonyProvider?: string; readonly providerMode?: string; readonly agent?: Record; @@ -230,6 +238,7 @@ export class CallLogger { status: 'in_progress', caller: redactPhone(input.caller ?? ''), callee: redactPhone(input.callee ?? ''), + direction: input.direction || 'inbound', telephony_provider: input.telephonyProvider ?? '', provider_mode: input.providerMode ?? '', agent: input.agent ?? {}, diff --git a/libraries/typescript/src/stream-handler.ts b/libraries/typescript/src/stream-handler.ts index 52817b03..0dfd21b3 100644 --- a/libraries/typescript/src/stream-handler.ts +++ b/libraries/typescript/src/stream-handler.ts @@ -121,12 +121,35 @@ function isValidE164(number: string): boolean { * Short words / phrases that Whisper (and, less often, Deepgram) routinely * emit when fed silence or TTS echo on mulaw 8 kHz. Dropping them as turns * prevents the caller from entering a feedback loop where every silent frame - * triggers a new LLM+TTS turn. + * triggers a new LLM+TTS turn. Parity with Python `_STT_HALLUCINATIONS`. + * + * Whisper-specific full-phrase hallucinations: the model's training set was + * dominated by YouTube captions — on silence / echo it falls back to the most + * common training-set closers. These fire hard on PSTN echo loopback when the + * agent's outbound audio bleeds into the input buffer and the upstream VAD + * commits a "non-empty" segment to transcription. + * Comparison happens against the lower-cased + stripped form. */ const HALLUCINATIONS = new Set([ 'you', 'thank you', 'thanks', 'yeah', 'yes', 'no', 'okay', 'ok', 'uh', 'um', 'mmm', 'hmm', '.', 'bye', 'right', 'cool', + // Whisper YouTube-caption hallucinations + 'thank you for watching', + 'thanks for watching', + 'thank you for watching!', + 'thanks for watching!', + 'thank you so much for watching', + 'thanks for listening', + 'please subscribe', + 'subscribe', + 'music', + '[music]', + '♪', + '[no audio]', + '[silence]', + '[blank_audio]', + '(silence)', ]); // --------------------------------------------------------------------------- @@ -316,13 +339,17 @@ export class StreamHandler { * Same as the AEC variant but for deployments where AEC is OFF * (default on PSTN — Twilio/Telnyx). Without an adaptive filter to * converge, the only justification for a gate is anti-flicker on - * micro-events (cough, click). 100 ms covers the first PSTN echo - * round-trip (~40-100 ms) while allowing barge-in from 100 ms into - * the agent's turn — covering nearly all of any response. - * Previously 250 ms, which blocked barge-in entirely on short (<500 ms) - * agent responses. + * micro-events (cough, click). Raised 100 → 500 ms on 2026-05-19 + * after the 0.6.2 acceptance run showed a phantom VAD speech_start + * firing on the very first inbound frame (~500 ms into the call, + * which is past a 100 ms gate). The phantom barge-in cancelled the + * prewarmed firstMessage, the user heard a clipped (graffiante) + * audio fragment, and the SDK left ``_turnAlreadyClosed=true`` so + * subsequent ``recordTurnComplete`` calls were no-ops. 500 ms + * filters those phantoms while still letting a real interruption + * land within half a second of agent onset. */ - private static readonly MIN_AGENT_SPEAKING_MS_BEFORE_BARGE_IN_NO_AEC = 100; + private static readonly MIN_AGENT_SPEAKING_MS_BEFORE_BARGE_IN_NO_AEC = 500; /** Handle for the pending grace-period timer, so it can be cleared on cleanup. */ private graceTimer: ReturnType | null = null; /** @@ -367,30 +394,12 @@ export class StreamHandler { * coexist without name collisions even when firstMessage finishes while * a Realtime turn is still streaming. */ - private firstMessageMarkCounter = 0; - /** - * Maximum unconfirmed Twilio marks while streaming firstMessage. Each - * chunk is 40 ms of audio at 16 kHz PCM16, so a window of 3 caps - * the in-flight queue at ~120 ms. This means a barge-in's - * ``sendClear`` has at most 120 ms of already-buffered audio to flush - * — vs. ~2-5 s with the previous burst-send code, which was the - * root cause of "firstMessage non interrompibile". Higher values - * smooth playback under jittery RTT (each mark echo adds ~150-250 ms - * RTT on PSTN) at the cost of longer barge-in latency; lower values - * risk under-buffering. 3 hit the smallest barge-in cap without - * audible gaps in 2026-05 acceptance. - */ - private static readonly FIRST_MESSAGE_MARK_WINDOW = 3; - /** - * Per-chunk soft timeout (ms) while awaiting a mark echo. Twilio's - * mark echoes typically arrive within 100-250 ms of audio playback. - * Capping at 500 ms guards against carriers (or test doubles) that - * never echo — without it a stalled echo would deadlock the loop and - * the agent would freeze mid-utterance. On timeout we drop the - * waiter from the queue and continue: playout may glitch by one - * chunk but the call stays alive. - */ - private static readonly MARK_AWAIT_TIMEOUT_MS = 500; + // firstMessageMarkCounter / FIRST_MESSAGE_MARK_WINDOW / + // MARK_AWAIT_TIMEOUT_MS were retired with the move to the Twilio-FIFO- + // trusts model (sendPacedFirstMessageBytes no longer emits marks). + // Marks are still consumed via ``onMark`` for any adapter that wants + // to round-trip one, but the firstMessage path no longer back-pressures + // on them. /** * Minimum drain window (ms) between a ``cancelSpeaking`` and the next * ``beginSpeaking``. 150 ms covers a typical PSTN jitter buffer drain @@ -490,6 +499,24 @@ export class StreamHandler { // No-op — abort() throws nothing in modern runtimes, but be defensive. } } + // Force-close any in-flight TTS streaming socket. Without this, the + // firstMessage live ``synthesizeStream`` path (used when the prewarm + // accumulator hadn't completed before pickup) would block on its + // inner ``await Promise`` for 30 s — ``initPipeline`` would + // never return, the STT ``onTranscript`` callback would never + // register, and every subsequent user turn would be silently + // dropped. Provider-duck-typed: adapters that don't expose + // ``cancelActiveStream`` are no-ops here. + const ttsCancelable = this.tts as + | { cancelActiveStream?: () => void } + | undefined; + if (typeof ttsCancelable?.cancelActiveStream === 'function') { + try { + ttsCancelable.cancelActiveStream(); + } catch (err) { + getLogger().debug(`TTS cancelActiveStream raised: ${String(err)}`); + } + } } /** @@ -509,61 +536,22 @@ export class StreamHandler { this.pendingMarks.length = 0; } - /** - * Push a Twilio ``mark`` event AFTER the corresponding audio chunk and - * return a promise that resolves when the mark is echoed back via - * ``onMark`` (or when ``cancelSpeaking`` drains the queue, or after - * ``MARK_AWAIT_TIMEOUT_MS``). Returns null on non-Twilio carriers — the - * caller is expected to fall back to time-based pacing in that case. - */ - private sendMarkAwaitable(): Promise | null { - if (this.deps.bridge.telephonyProvider !== 'twilio') return null; - this.firstMessageMarkCounter += 1; - const markName = `fm_${this.firstMessageMarkCounter}`; - let resolve!: () => void; - const promise = new Promise((r) => { - resolve = r; - }); - this.pendingMarks.push({ name: markName, resolve, promise }); - try { - this.deps.bridge.sendMark(this.ws, markName, this.streamSid); - } catch (err) { - getLogger().debug(`sendMark failed (${markName}): ${String(err)}`); - // Drop the waiter immediately so the queue doesn't fill with - // never-resolving entries that block the window. - const idx = this.pendingMarks.findIndex((m) => m.name === markName); - if (idx >= 0) this.pendingMarks.splice(idx, 1); - return Promise.resolve(); - } - return promise; - } + // Mark-based back-pressure (sendMarkAwaitable / waitForMarkWindow) + // was removed when sendPacedFirstMessageBytes switched to the + // Twilio-FIFO-trusts model — see that method's doc comment for + // rationale. ``pendingMarks`` and ``onMark`` are still kept so an + // adapter that wants to round-trip a mark for some other purpose can + // still do so without breaking the firstMessage path. /** - * If the in-flight mark queue is at or above ``FIRST_MESSAGE_MARK_WINDOW`` - * entries, wait for the oldest entry to clear (mark echoed, agent - * cancelled, or per-mark timeout). Repeats until the queue depth is - * within the window — under high RTT the carrier may have several - * marks queued and we want every loop iteration to be naturally back- - * pressured by playback. + * Bytes-per-millisecond for a 16 kHz PCM16 mono stream. Used by + * ``sendPacedFirstMessageBytes`` to translate chunk size into a + * playout-duration sleep so we never deliver faster than the carrier + * can decode + play out (which manifested as severe crackling on the + * HTTP-TTS path with client-side resampling). 16000 samples/sec × 2 + * bytes/sample = 32 bytes/ms. */ - private async waitForMarkWindow(): Promise { - while ( - this.isSpeaking && - this.pendingMarks.length >= StreamHandler.FIRST_MESSAGE_MARK_WINDOW - ) { - const oldest = this.pendingMarks[0]; - const timeout = new Promise((resolve) => - setTimeout(resolve, StreamHandler.MARK_AWAIT_TIMEOUT_MS), - ); - await Promise.race([oldest.promise, timeout]); - // Drop the head if it's still the same entry — onMark would - // have already removed it on echo; only a timeout leaves it - // in place. - if (this.pendingMarks[0] === oldest) { - this.pendingMarks.shift(); - } - } - } + private static readonly PCM16_16K_BYTES_PER_MS = 32; /** Cancel and clear the pending grace timer, if any. */ private clearGraceTimer(): void { @@ -1375,6 +1363,23 @@ export class StreamHandler { /** Handle call stop / stream end. */ /** Handle a carrier-emitted `stop` event signalling the call has ended. */ async handleStop(): Promise { + // Abort any in-flight LLM stream and close any in-flight TTS WS so + // the runPipelineLlm / synthesizeStream awaits unblock immediately + // instead of waiting up to 30 s for their own watchdog timers. + // Without this, the carrier's ``stop`` event ends the call but a + // pending TTS WS frame-wait fires a stale ``LLM loop error`` / + // ``TTS streaming error`` log line tens of seconds later, and in + // rapid-conversation scenarios where the user hangs up mid-response + // the in-flight call kept billing tokens after the carrier was gone. + if (this.llmAbort !== null) { + try { this.llmAbort.abort(); } catch { /* defensive */ } + } + const ttsCancelable = this.tts as + | { cancelActiveStream?: () => void } + | undefined; + if (typeof ttsCancelable?.cancelActiveStream === 'function') { + try { ttsCancelable.cancelActiveStream(); } catch { /* defensive */ } + } // Drop any pending barge-in timer BEFORE we tear down metrics / // adapters. Without this, a call that ends while a barge-in is // pending leaves a setTimeout scheduled to fire ``bargeInConfirmMs`` @@ -1391,7 +1396,6 @@ export class StreamHandler { // ``fm_`` numbering at 1 on the next call. See // ``sendPacedFirstMessageBytes`` for the per-send reset that // protects the within-call path. - this.firstMessageMarkCounter = 0; this.clearGraceTimer(); this.flushResamplers(); await this.closeSttOnce(); @@ -1402,6 +1406,17 @@ export class StreamHandler { /** Handle WebSocket close event. */ /** Tear down adapter, STT/TTS, and per-call state when the carrier WebSocket closes. */ async handleWsClose(): Promise { + // Mirror handleStop's in-flight cleanup so a carrier WebSocket drop + // unblocks LLM / TTS awaits immediately — see comment there. + if (this.llmAbort !== null) { + try { this.llmAbort.abort(); } catch { /* defensive */ } + } + const ttsCancelable = this.tts as + | { cancelActiveStream?: () => void } + | undefined; + if (typeof ttsCancelable?.cancelActiveStream === 'function') { + try { ttsCancelable.cancelActiveStream(); } catch { /* defensive */ } + } // See handleStop — drop pending barge-in timer before cleanup so a // dead handler can never fire a stale recordOverlapEnd callback. this.clearPendingBargeIn(); @@ -1409,7 +1424,6 @@ export class StreamHandler { // carrier WS drop during the paced sender cannot leak unresolved // promises owned by the send loop, and reset the counter. this.drainPendingMarks(); - this.firstMessageMarkCounter = 0; this.clearGraceTimer(); this.flushResamplers(); // Drain STT first so in-flight transcripts fire before onCallEnd. @@ -1444,14 +1458,50 @@ export class StreamHandler { * Maintains a 1-byte carry across calls so unaligned HTTP chunks from * streaming TTS providers never byte-swap the PCM16 samples downstream. */ - private encodePipelineAudio(pcm16k: Buffer): string { - const aligned = this.alignPcm16(pcm16k); + private encodePipelineAudio(audioChunk: Buffer): string { + // Carrier-native fast path: when the TTS adapter is configured to + // emit ``ulaw_8000`` (Twilio wire codec) the bytes coming in are + // already in the format Twilio expects. Skip the 16 kHz → 8 kHz + // resample and the PCM → μ-law encode entirely — base64 the raw + // bytes and hand them to the carrier. This eliminates the client- + // side DSP chain that produced audible artifacts on the prewarmed + // firstMessage during 0.6.2 acceptance (the resampler-bursting + // crackle the user reported). + if (this.ttsOutputFormatNativeForCarrier === true) { + return audioChunk.toString('base64'); + } + const aligned = this.alignPcm16(audioChunk); if (aligned.length === 0) return ''; const pcm8k = this.outboundResampler.process(aligned); const mulaw = pcm16ToMulaw(pcm8k); return mulaw.toString('base64'); } + /** + * Cached result of ``isTtsOutputFormatNativeForCarrier()`` — settled + * once at ``initPipeline`` time after ``setTelephonyCarrier`` has run + * on the TTS adapter. Stable for the call lifetime: changes to the + * adapter's output format mid-call would NOT flip this. ``true`` means + * ``encodePipelineAudio`` can take the bypass path. + */ + private ttsOutputFormatNativeForCarrier: boolean = false; + + /** + * Probe whether the TTS adapter is configured to emit bytes already in + * the carrier's wire codec. Currently: Twilio expects ``ulaw_8000``, + * Telnyx expects ``pcm_16000`` (no client transcode in either case if + * matched). Anything else takes the resample-and-encode path. + */ + private isTtsOutputFormatNativeForCarrier(): boolean { + if (!this.tts) return false; + const fmt = (this.tts as { outputFormat?: string }).outputFormat; + if (typeof fmt !== 'string') return false; + const carrier = this.deps.bridge.telephonyProvider; + if (carrier === 'twilio') return fmt === 'ulaw_8000'; + if (carrier === 'telnyx') return fmt === 'pcm_16000'; + return false; + } + /** * Prepend any carry byte from the previous chunk, return the even-length * portion, and stash the final odd byte (if any) for the next call. @@ -1466,18 +1516,11 @@ export class StreamHandler { return combined.subarray(0, alignedLen); } - /** - * 40 ms @ 16 kHz mono PCM16 = 1280 bytes. Sized to mirror the smallest - * live-TTS chunk boundary so cancel granularity (mark/clear bookkeeping) - * is identical regardless of whether the firstMessage came from the - * prewarm cache or a live ``tts.synthesizeStream`` stream. - */ - private static readonly PREWARM_CHUNK_BYTES = 1280; - /** * Stream a cached firstMessage buffer in pacing-friendly chunks. * - * Splits ``prewarmBytes`` into ``PREWARM_CHUNK_BYTES`` slices and + * Splits ``prewarmBytes`` into 20 ms slices (matching Twilio's PSTN + * frame quantum) and * forwards each through ``deps.bridge.sendAudio`` exactly like the * live TTS path does — preserving Twilio mark/clear granularity. A * single multi-second sendAudio call would push the whole intro into @@ -1494,7 +1537,7 @@ export class StreamHandler { } /** - * Iterate ``bytes`` as ``PREWARM_CHUNK_BYTES``-sized PCM16 slices and + * Iterate ``bytes`` in 20 ms slices (Twilio PSTN frame quantum) and * forward each via ``deps.bridge.sendAudio`` with mark-gated pacing * (Twilio) or playout-time-based pacing (Telnyx). Caps the carrier- * side buffer at ``FIRST_MESSAGE_MARK_WINDOW`` chunks so a barge-in's @@ -1510,41 +1553,52 @@ export class StreamHandler { * metrics. See BUG #128 for the regression this fix targets. */ private async sendPacedFirstMessageBytes(bytes: Buffer): Promise { - // Reset the per-send mark counter so each invocation produces a - // fresh ``fm_1, fm_2, ...`` sequence. Without this the counter - // grows monotonically across turns on a re-used handler and a - // stale ``fm_N`` echo from an earlier turn could match a mark - // name issued later, corrupting the FIFO matching in ``onMark``. - // The queue is also expected empty here by ``cancelSpeaking`` / - // ``handleStop`` / ``handleWsClose``; drain defensively if not. + // Reset any stale mark state defensively — we don't emit marks on + // this path but ``onMark`` and the rest of the handler rely on the + // counter being monotonic across the call lifetime. if (this.pendingMarks.length > 0) this.drainPendingMarks(); - this.firstMessageMarkCounter = 0; let firstChunkSent = false; - // Burst delivery: send all chunks back-to-back, exactly like the live - // TTS path (synthesizeSentence / firstMessage live fallback). Twilio - // explicitly accepts "media messages of any size" — frames are - // "buffered and played in the order received" by the carrier-side - // media server, which is the source of truth for the 8 kHz playout - // clock. Earlier revisions paced each chunk by ``playoutMs`` via - // setTimeout to "throttle to the playout rate", but JavaScript - // setTimeout drift + the cumulative ``waitForMarkWindow`` wait - // pushed effective delivery BELOW Twilio's playout rate on long - // intros (the prewarm cache is typically 2-4 s of audio), producing - // periodic carrier-side buffer underruns audible to the caller as - // slow, gravelly, intermittent playback. Marks are still emitted - // per chunk so a barge-in's ``sendClear`` still has fine-grained - // granularity to cut. - for (let i = 0; i < bytes.length; i += StreamHandler.PREWARM_CHUNK_BYTES) { + // Slice on the PSTN/G.711 packet quantum (20 ms). Twilio Media + // Streams emits and consumes 20 ms μ-law frames natively, so each + // ``sendAudio`` corresponds to exactly one carrier-side frame. + const PSTN_FRAME_MS = 20; + const bytesPerMs = this.ttsOutputFormatNativeForCarrier + ? 8 // μ-law 8 kHz native (one byte per sample, 8000 sps) + : StreamHandler.PCM16_16K_BYTES_PER_MS; // 32 bytes/ms for PCM16 16 kHz + const sliceBytes = bytesPerMs * PSTN_FRAME_MS; + // No pacing, no mark gating. Twilio's media-stream protocol + // explicitly buffers and plays frames in order received — its FIFO + // owns the 8 kHz playout clock, not our send loop. Every attempt + // we've made to "help" Twilio (per-chunk sleep, mark back-pressure, + // initial-fill burst, absolute-clock scheduling) introduced its own + // jitter source: setTimeout drift, mark-echo RTT > playout window, + // or burst-then-stall patterns. The result the user heard as + // "scatti" / "differenza di frequenza" was the side effect of our + // pacing fighting the carrier clock, not the carrier itself. + // + // Mirror the pattern used by Twilio's own call-gpt reference sample + // and Pipecat's TwilioFrameSerializer: dump every 20 ms slice into + // the WebSocket back-to-back, return, let Twilio drain. For prewarm + // this is ~250 sendAudio calls in <50 ms for a 5 s greeting; the + // WebSocket buffer absorbs them and the carrier plays at exactly + // 50 frames/s with no further intervention from us. Barge-in still + // works via ``sendClear`` which flushes whatever Twilio has queued + // regardless of marks. + for (let i = 0; i < bytes.length; i += sliceBytes) { if (!this.isSpeaking) break; // barge-in mid-buffer — stop now - await this.waitForMarkWindow(); - if (!this.isSpeaking) break; - const chunk = bytes.subarray(i, i + StreamHandler.PREWARM_CHUNK_BYTES); + const chunk = bytes.subarray(i, i + sliceBytes); if (!firstChunkSent) firstChunkSent = true; - if (this.aec) this.aec.pushFarEnd(chunk); + // Far-end tap is only valid when the bytes are PCM16 — the AEC's + // ``int16BufferToFloat32`` ingest assumes int16 LE. On the mulaw + // native fast path we MUST NOT push the wire bytes or AEC's + // reference signal becomes garbage. AEC is opt-in (off by default + // on PSTN), so this guard only matters when the caller opted in. + if (this.aec && !this.ttsOutputFormatNativeForCarrier) { + this.aec.pushFarEnd(chunk); + } const encoded = this.encodePipelineAudio(chunk); this.deps.bridge.sendAudio(this.ws, encoded, this.streamSid); this.markFirstAudioSent(); - this.sendMarkAwaitable(); } return firstChunkSent; } @@ -1578,6 +1632,15 @@ export class StreamHandler { getLogger().debug(`TTS setTelephonyCarrier failed (${label}): ${String(e)}`); } } + // Re-evaluate after setTelephonyCarrier so the encodePipelineAudio + // fast path is enabled for the current carrier when the adapter + // auto-flipped (or the user constructed with a native format). + this.ttsOutputFormatNativeForCarrier = this.isTtsOutputFormatNativeForCarrier(); + if (this.ttsOutputFormatNativeForCarrier) { + getLogger().debug( + `TTS outputFormat matches ${this.deps.bridge.telephonyProvider} wire codec — bypassing client-side transcode`, + ); + } } if (!this.stt) { @@ -2513,14 +2576,52 @@ export class StreamHandler { const label = this.deps.bridge.label; this.adapter = this.deps.buildAIAdapter(resolvedPrompt); - try { - await this.adapter.connect(); - getLogger().debug(`AI adapter connected (${label})`); - } catch (e) { - getLogger().error(`AI adapter connect FAILED (${label}):`, e); - // Hang up the telephony call so it doesn't stay connected billing - try { await this.deps.bridge.endCall(this.callId, this.ws); } catch { /* best effort */ } - return; + // Try to adopt a Realtime WS parked during the ringing window. + // When present we skip the cold ``adapter.connect()`` — the + // parked socket has already paid the TCP + TLS + HTTP-101 + + // ``session.update`` ack round-trip (~300-600 ms saved on first + // audible word). Falls back transparently on cache miss / dead + // socket / adapter missing ``adoptWebSocket``. + let parked: import('./client').ParkedProviderConnections | undefined; + if (typeof this.deps.popPrewarmedConnections === 'function') { + try { + parked = this.deps.popPrewarmedConnections(this.callId); + } catch (err) { + getLogger().debug(`popPrewarmedConnections raised: ${String(err)}`); + } + } + const parkedRealtimeWs = parked?.openaiRealtime; + let adoptOk = false; + if (parkedRealtimeWs !== undefined) { + const adapterAny = this.adapter as + | { adoptWebSocket?: (ws: import('ws').WebSocket) => void } + | undefined; + const wsAlive = parkedRealtimeWs.readyState === 1 /* OPEN */; + if (typeof adapterAny?.adoptWebSocket === 'function' && wsAlive) { + try { + adapterAny.adoptWebSocket(parkedRealtimeWs); + getLogger().info( + `[CONNECT] callId=${this.callId} provider=openai_realtime source=adopted ms=0`, + ); + adoptOk = true; + } catch (err) { + getLogger().debug(`Realtime adoptWebSocket failed: ${String(err)}; falling back`); + } + } + if (!adoptOk) { + try { parkedRealtimeWs.close(); } catch { /* ignore */ } + } + } + if (!adoptOk) { + try { + await this.adapter.connect(); + getLogger().debug(`AI adapter connected (${label})`); + } catch (e) { + getLogger().error(`AI adapter connect FAILED (${label}):`, e); + // Hang up the telephony call so it doesn't stay connected billing + try { await this.deps.bridge.endCall(this.callId, this.ws); } catch { /* best effort */ } + return; + } } if (this.deps.agent.firstMessage) { @@ -2694,8 +2795,32 @@ export class StreamHandler { } private async onAdapterTranscriptInput(inputText: string): Promise { + // Hallucination filter: drop Realtime transcript_input events whose text + // matches a known Whisper hallucination phrase (empty, common filler, or + // YouTube-caption closer). These fire on PSTN echo loopback — committing + // them to the LLM would create phantom user turns the caller never spoke. + // Parity with Python stream_handler.py `transcript_input` branch. + const stripped = inputText.trim().toLowerCase(); + if (HALLUCINATIONS.has(stripped) || stripped === '') { + getLogger().debug( + `Realtime transcript_input dropped (likely Whisper hallucination on silence/echo): ${sanitizeLogValue(inputText.slice(0, 60))}`, + ); + this.userTranscriptPending = false; + return; + } getLogger().debug(`User (${this.deps.bridge.label}): ${sanitizeLogValue(inputText)}`); this.history.push({ role: 'user', text: inputText, timestamp: Date.now() }); + // Hallucination filter accepted — drive response.create explicitly now + // that server VAD is configured with create_response: false. Without + // this call the model never generates a reply (the server no longer + // auto-creates a response on input_audio_buffer.committed). Parity with + // Python stream_handler.py which calls + // ``await self._adapter.request_response()`` at this point. + if (this.adapter instanceof OpenAIRealtimeAdapter) { + void this.adapter.requestResponse().catch((err) => + getLogger().debug(`Realtime requestResponse failed: ${String(err)}`), + ); + } // Fallback: if speech_stopped was missed (server VAD disabled, custom // config, ...) still start the turn here so latency is non-zero. if (!this.metricsAcc.turnActive) { @@ -2887,6 +3012,29 @@ export class StreamHandler { } private async onAdapterSpeechInterrupt(): Promise { + // Gate the cancel/flush path with an anti-flicker window similar to + // the pipeline mode. OpenAI's server VAD fires ``speech_started`` on + // echo of the agent's own audio in PSTN no-AEC scenarios (carrier + // loopback feeds our outbound mulaw back into the input buffer). + // Without this gate every phantom ``speech_started`` cancels the + // response — most visibly, the firstMessage gets truncated + // mid-sentence. The Realtime adapter manages its own TTS span so + // ``isSpeaking`` (a pipeline-only flag) stays false; consult the + // adapter's own response-tracking timestamp as a proxy. + if (this.adapter instanceof OpenAIRealtimeAdapter) { + const startedAt = ( + this.adapter as unknown as { currentResponseFirstAudioAt: number | null } + ).currentResponseFirstAudioAt; + if (startedAt !== null) { + const elapsedMs = Date.now() - startedAt; + if (elapsedMs < StreamHandler.MIN_AGENT_SPEAKING_MS_BEFORE_BARGE_IN_NO_AEC) { + getLogger().info( + `Realtime barge-in suppressed (response < gate, ${elapsedMs}ms)`, + ); + return; + } + } + } this.deps.bridge.sendClear(this.ws, this.streamSid); if (this.adapter instanceof OpenAIRealtimeAdapter) this.adapter.cancelResponse(); this.metricsAcc.recordTurnInterrupted(); diff --git a/libraries/typescript/src/tts/elevenlabs-ws.ts b/libraries/typescript/src/tts/elevenlabs-ws.ts index 48bed9c9..4a6f1b70 100644 --- a/libraries/typescript/src/tts/elevenlabs-ws.ts +++ b/libraries/typescript/src/tts/elevenlabs-ws.ts @@ -41,12 +41,18 @@ function resolveApiKey(apiKey: string | undefined): string { function buildOpts(opts: ElevenLabsWebSocketOptions): ElevenLabsWebSocketTTSOptions { // Voice ID default is owned by the provider class — passing ``undefined`` // here lets it apply its own default (parity Python ↔ TS). + // + // CRITICAL: only forward ``outputFormat`` when the caller actually + // passed one. Forwarding a fallback ("pcm_16000") flips the parent's + // ``_outputFormatExplicit`` flag and disables the carrier-aware + // auto-flip in ``setTelephonyCarrier`` — on Twilio the WS would keep + // negotiating PCM16 16 kHz and pay the client-side resample/encode. const out: ElevenLabsWebSocketTTSOptions = { apiKey: resolveApiKey(opts.apiKey), modelId: opts.modelId ?? 'eleven_flash_v2_5', - outputFormat: opts.outputFormat ?? 'pcm_16000', autoMode: opts.autoMode ?? true, }; + if (opts.outputFormat !== undefined) out.outputFormat = opts.outputFormat; if (opts.voiceId !== undefined) out.voiceId = opts.voiceId; if (opts.voiceSettings !== undefined) out.voiceSettings = opts.voiceSettings; if (opts.languageCode !== undefined) out.languageCode = opts.languageCode; diff --git a/libraries/typescript/src/tts/elevenlabs.ts b/libraries/typescript/src/tts/elevenlabs.ts index f8f4c293..92746301 100644 --- a/libraries/typescript/src/tts/elevenlabs.ts +++ b/libraries/typescript/src/tts/elevenlabs.ts @@ -63,10 +63,22 @@ export class TTS extends _ElevenLabsTTS { // Use the parent's options-object overload so optional fields // (languageCode, voiceSettings) reach the underlying provider — // the legacy positional signature drops them silently. + // + // CRITICAL: only forward ``outputFormat`` when the caller actually + // passed one. Forwarding a fallback ("pcm_16000") would flip the + // parent's ``_outputFormatExplicit`` flag to true and disable the + // carrier-aware auto-flip in ``setTelephonyCarrier`` — the prewarm + // path on Twilio would keep emitting PCM16 16 kHz and pay the + // client-side resample/encode that produced the "audio a scatti" + // user report. Leaving the field out lets the parent default to + // PCM_16000 with the explicit-flag cleared so the carrier hook can + // flip to ulaw_8000 at call time. super(resolveApiKey(opts.apiKey), { voiceId: opts.voiceId ?? "EXAVITQu4vr4xnSDxMaL", modelId: opts.modelId ?? "eleven_flash_v2_5", - outputFormat: (opts.outputFormat ?? "pcm_16000") as ElevenLabsOutputFormat, + ...(opts.outputFormat !== undefined + ? { outputFormat: opts.outputFormat as ElevenLabsOutputFormat } + : {}), languageCode: opts.languageCode, voiceSettings: opts.voiceSettings as never, }); diff --git a/libraries/typescript/src/version.ts b/libraries/typescript/src/version.ts index 5b6ec49d..81d74d2d 100644 --- a/libraries/typescript/src/version.ts +++ b/libraries/typescript/src/version.ts @@ -1,8 +1,24 @@ /** - * SDK version constant — kept in sync with ``package.json``. + * SDK version constant — auto-derived from ``package.json`` at runtime. * - * Hard-coded (rather than imported from ``package.json``) so the SDK works in - * both bundled (no JSON loader) and ESM/CJS dual-export environments without - * platform-specific JSON-import flags. + * tsup builds with ``shims: true`` so ``__dirname`` resolves to the + * dist directory in both CJS and ESM. Reading ``../package.json`` + * from there always lands on the installed package's manifest. The + * fallback covers the (unlikely) case where the file is missing. + * + * Source of truth: ``libraries/typescript/package.json#version``. */ -export const VERSION = '0.5.5'; +import * as fs from 'node:fs'; +import * as path from 'node:path'; + +function readVersion(): string { + try { + const pkgPath = path.resolve(__dirname, '..', 'package.json'); + const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8')) as { version?: string }; + return typeof pkg.version === 'string' && pkg.version.length > 0 ? pkg.version : ''; + } catch { + return ''; + } +} + +export const VERSION: string = readVersion(); From f16bda0196b840c8315f9a55ea8c363b5c7d3bf5 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 25 May 2026 10:48:05 +0200 Subject: [PATCH 08/11] chore(release): 0.6.2 - Bump Python (``__init__.py`` + ``pyproject.toml``) and TypeScript (``package.json``) to ``0.6.2``. - Promote ``## Unreleased`` to ``## 0.6.2 (2026-05-25)`` in CHANGELOG. - Refresh ``docs/github-banner.png`` with the new branded artwork (Agent / Patter stack) used by the README and the GitHub social preview. Bundles the 14-bug fix wave validated live in 0fc4615 (GA Realtime adapter, prewarm + adoption hardening, dashboard persistence, inbound caller/callee via ````, Whisper hallucination filter, deferred ``response.create`` + ``request_response()``, version auto-derive, persist default ON, phone-redact default ``full``, direction in ``metadata.json``, ring-buffer turns preservation, JSONL transcript backfill, standalone-dashboard ``call_initiated`` relay). --- CHANGELOG.md | 2 ++ docs/github-banner.png | Bin 769576 -> 1036687 bytes libraries/python/getpatter/__init__.py | 2 +- libraries/python/pyproject.toml | 2 +- libraries/typescript/package.json | 2 +- 5 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f27e633b..1239b4cb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ ## Unreleased +## 0.6.2 (2026-05-25) + ### Added - **`OpenAIRealtime2` / `OpenAIRealtime2Adapter` — Python GA Realtime API diff --git a/docs/github-banner.png b/docs/github-banner.png index 866f3f6dd42c0c17a2faeee08d0cbe300be7bd5d..75fe96ac512f304948bb5ebf301b21f55f1edb24 100644 GIT binary patch literal 1036687 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

Sdkkv0!V!XS@y=)nvHRyE}b!a@*3y4)fZ7s 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�^aLhL`weaPKL9B8pwqb?=IElz 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

VN9IKp>NtJ91qZW{-xYn+G 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
z
z(M}|cn2c5&5Tzg%_(%+D^cJYCm$o6oSj&zw`o>zrzuglgNR$q!!3ovW)358j`1ttw
z*b`;N8cIq^(u1Q)X3o=u_s}q02Yy>%_|IJ7BG4rd+UzqkoXqdqvJg=mkoi3hwo9!5
z%{PJP1HwI7mQ*zw{dwcNQJ02==j3mdRaKkBBQIabO
zYp`FoRST`LPYHt;<%wVyp^BUwqvQ3E+O}l02&6VkKG=C0#|H6&JKl9;+LpgixA`i{
z2kSTZN>qIy=%9+8vyG@CbkjxX8R96W_`UrFx;^I-z%trSl$%=(zbPv#lSZ5<^p4ug
zv>-BoI^~HwP6u_j$*WlyL_84?rXe`EyWOjy(#7WPc!QhloQ0p!QNYrfuI~n*7S&z4
zxgyW8m?SbyXpnNBiRuE5iUc!ZhEvF#{+t4f0vb+E1zMXQjKoDrb$pd$fQZpJvN*#P
ze*PBv9diY+u#6DTj_iMuKl#Fg^(zQaGfn2WHt{F5ZniJF-BGQ$N=AP6*b1k_pdE3{
zTOv$;d!pPIgE~|z#c{m0ID7(wxIm7;X!x~7r*=4@k`^#4BR~(J@BM1-$j1G;yB$;q
zzoX07k{sv6-%!u)TNaYd33R7N(DTwpM3xA>rO|P8MCo(zg<&G$)v!X&DKiK#vTppk
z8MOEcsVoAjc6(-z>aQp7ITz75sAosW@{C@`_P*_+-{_#jBSB%jb%3%~KQi1WLOw&8
zot-WA;xC1E1b^$)=BK2bsl1Muu%W(n`2cEf_qJT?ZgOe6Tw%6#c5x|j`oae9aI9C-ImPwov)h$X9>U7BeCEOYG&}ED>mk!B@aB+0OOhqKIt$BNzbT;6Oh!z5E&5
zrxv_NI=S{M=$uXeH)Z(lBUFY-v&?8n8nJPR70w^f?nmBvf2`xoNQ2
z{3REkl_mIE5cJ%UlcOKYnB$2$**zXZVp62n;zElfk&7Ml24*;$Ft_9Mv+NU>&|s{~
zD$9FZ^h5|bsOWFeZ%}cFAD#%o03T=)I38sLpZBqVrh`+~3pYDO^y8HljRm$SgN*OrWr3BS
zvSmipa(}E9OTS;~^{1Dku{}T{#hGyifcy4CIZy+;e|wLeEuEYq$uBoj05x(?Xq_Bh
ztsr7W?P+06JDl!kE`p#(|U(SWO`O&^iZ;3=AwL)fAKCQSr#
zTr8}TgeN%rbB8g3-=jed(~j+(HEnsSduW5}a#LaJZGKRx;D
zyWN|x%L~bMVPVYHT}0pB#SqUqQq2p@`*=PcH_T|>
zE_FOFeHOLj%y9bN`fpL?AMm$Cai~12n)i3EO{^oZ)EP?cz_a-{Q=zZu531kA(5wg!
z)-iWbA~{}G6binvQ4zgDr^=N1#|M6noVo9DsqIWe~$Y{J}OVfff(dV-w*K!TO&
zzjLZSV)e4C^1rcW%ppz-12|scp;IsKu^k^L;KUZwUJ;Ry@&H-$VY3HqD(Fep(%iP7
zAu21sWbV+y?z3vf{h#Fqzd*}!_4p~E<;Z-ld?gGX9Up&V@{(OgXLjKwtOVlRE;X`K
z@}Dw^fs2v8=OEvM}gV*byA3f`6o&~sXNegI@+jJp@!+C;UO_H-?5`zGa0M0CUSD2w#gv9qnKBm!2WcMwSGB}y$YS5-JmlKi*K>Vy)9N{8YBeV_^yR!8
znTZCcAsm;9j#2_t=$Wlt<~Lb1i?hl#9MJGDO#W$T;t|r(`>dySchML
zkO<>MPXlL^Y3F=#p)COb0OAMpT91yb0Sw2yiU8R4z8kl_vo{kLhh;p|gUfw{S)z=8
zY(fr06+~y_vQn26AY-lC#V$1ZsjND`jxYHUgB=HAD&)@Ra?+|iF^j?6qYby@QmA+`
zUnLUDi~;V8jZaPeW!%kCUD?KlY@#d>@l_1Og5n1;koe)v#1>1>$tiJd7BkC`Xb0?$
zn~f*Vj+`B9u|S^FGc)wNF#zU7ovN`A`=cQY(*08u`cRU*Fw~_N43@;<0b!$pGtYkc
z?=?6F{#j-&gG*6RGY&MEsaqE?A=*9*GQsoGfqFb-UolDR4?O}N{V?!pK9UZN9)
z{UxsW2e&;Ol+f*A&*I;W4uB=FBU~01w64y2&`Ms+KYQDMxuozFz#!gQ_qjN`UdU`tYw0Q8~SrHJ8x?d|Sh$TG&!qJa>-D&2E_9nxjGN8u-DE%&8I$MW=
ztXKjSS{W*j2{0EluQog1>On;uw6w9=FPT7ma3yqY_>N1tzDWp$c1VkuONSGksHvdb
zN=Y9*(a3m{CX=}Nn9`g_S)c1c1VS=eig4x20!WE$y!wjz{XbQ#tr>8zx9ERRsQzSr
zE0j;n>s@6lcIKRLXrQF46;FY?)1D~Qb3eJt3Cl&C9=P;UXy*G&67d>X;0(I4^=H@@%5BiPOZz%%McDRUW!IC(60?*
zKR9MoybOb-pkRtS2+HXkD_d;DAMa^LA0_Ya?*}H2ZwH452}}||6V_sj7(Vb!k<*N4
zb-M}DadV{FYsNY_D1Cs1yGzSKQil8YxNHDsE&xU?6&(*wwKZ$yEr;Cate|-S)O>TI
zkA!-bgHM&;;Bu{;-BGbPhlYqkJ{$MW+4eh!HX|q^g@+T_xZ|1m$KAZ-0Vzp7Fr^n4
zTm3{8;N1Vj+4;hyGDM0i&{Vl=7p0{L6^j+la~U3ivRj{g$)ah4!FPD8-ty_;hgn_8
z^gkL>(nEcpGtEXB0+(gbH7O9bc5#`jxKoHfGSU7(BkyjO@yDXaL@-rnjk_k6cd8#e
zIEs=(UP?OtGW_6z9(T5`_}t)g*`TVc`y+j~?E0fs%1XX28JDouL%-llmHqIv7@aem
zfL&!Ug`2G{M+whQFVPc+Uu_!h(SXTod!X5Dt^x=DiM%9oU)H<=P2f(5nCj(ecdXEW
zAU~f_bK_WvinN!Zq}ijO8Zg__EB63xR4FKK>e~|w3)dKf*Ya~bm%P)PHCfM$&Yu;w
zg%G<&TkCYzkd4U(TFKFVLIf?jyy~tm
z5dHK@o6qaS?xvIS`zZnff<dBE+f(
z3_aST^jtK_;cEeSJ7hOCt$$w!5V=rqu%vV}-R@&01ZA{J6sarc~ni)@GI1;bpnq9pw$5pY9!6Nhk6%bPHi5OCmM(^yCr}62hjf60a`+JRVMy
zCT;3vb6L90yZ2({Pvce4uMH>9ov5`hWoZau_KmDL6{ia|NdbIXdz=-m(z`>WHCQKk
z_2lo&p^mPoGhO}lT{kp_yuH@_M4pIjbAip6o#L=+OQwV>)EGBNu=50d;s%hWcA#Lr
z=(xZaGYROQH-Yi4;0+;%9T`|DbvCeN;qrXDP5~WWG9o;D+bmn7Ov)+24M+rK1t>in
zXmkhzmQ>}#=bqq>yxF;OB+r79lkd_0nI`zJKV^nM-P8@o>*|qg2?FRtKM2z}kYC)(
zaEU6c<9y<^qcV_dvKWjX=)IIUS(4DQkcv;m7J>F`r~Ah@#c)6;cx=C)Np)f&OuKn@
zTzHBAgsfwQ#(q^DMyTpm6DXgwmd$wRK*Puq)qb_#M$}6c(wYLrIQSJ@pSV*)?*2C6
z?T(_G9B~FyMNS+pJ(uepP>p%C)p_yk*{(5W=IusA#2?zX(EdX0)9pQ>bwqg3?7*p$
zHh10ru+B$D<&Qo=d>U*2kBYyukHA5EV!=pv&B6{+H1hkiS|H$5VIS5qR4m#i+ipjx
zWR>r$h3l4iBGhWLq%J1?x5cP9q&h~|0!{11#ZEEUQrlh`v+klK6EXQ@{8ovLuK{R#
z(Rjan4~?5x(d6Lm=Lw1DaXqsQ`%M0svLvEwV(Gz}hdPOO4K~aa4<_3lfgD8S0c5q}
zjXlK0e|95oA#yGF*P?aP4a78jSyP_#6ZP}x(0ot}&vz5a#MAVmyg#%@Edfeh+nipmcqkZ`H5&sNf~Kituyv#6&DN
zCYxYOz+W^1z=|{dVHog0I96AJb+!UP{cM&SrDz>~EJsmY`9#8*6Fa~&0NdS2?=xkPjdu?DG9B>t($@Dpq;t>ecF2ZUF-xy
z2?J|ixyd0b|HN5!s``dPH{5z8Ybq{w_X8q0LMlPQEI>CF5IYm|a-xy0$O{HJ(4W-T
z_e+=8-EvlnU_c?z9q}NJ-XzYs6I+ip&b!+7KkoBXe8I32GrOOVuY|9f^EW%3uQCR@
zT?&t$(uveF{&f1zuK|Z|^`9?%(Ursia8{riH#k^g`ZB1~ShFUVxY8E>o(P&Q=K&>6
z*^E>SA1L$!0_l3kOIj>RE)XaLgSNz8$fpSxCqV~1To%)$q@K`l#QmNg>`|+|#(6HJ
z9kVx^`2G*D@HJS(x5i)?kxD$>;AfTyCxoZOFuuwd
zd;2|^nVJ@rmB}5$0I1CG<$5JQQx6DM2`v>p6z<+U(KF<9sV1jLFL7ck0v
zr%i0s|1DUcQu8$SDdGjg1acDZj?DVyY1&VqXD7ACeKT$g9I1v^K&ZUWuI6E2ocD~uUa;sQKnXd1?
zPkCSpuaOZ|SIGN|4!wWFHA+KEYa#eJwJ6=x4?~hFHa7Mk#UF-o5x-Z$+NcY^9k`zn
zs{?@ONfUMZEQ<6)6}hyvATo2RuZm#wIG5u^+JoIo=!dgcz`|(RgOLY&7_@~c$iC8V
zZXA;VB%`@3&FX*u4sH*6v$UJ#BhQ^FBDS1>h0MrlBfS52~&xd%@cJ$9O0anU=FU1jU6n#=BysI|FTOCWxwAk)S-M|r#1kP
zbHdjc>FH%)p}Sl+1_!(A$t4vmifHM~BjnQ|cmh7{5dhh-aEC|X*MhZ^$a?Hb%dK5y
zJPFX=@zdIF#pGL=PYsZvt8^Y5<`V)ZLYIPs!M%H(%$Hf5YmG8OW!?9>CH;Z>
z$y14Y)L^BY*Dwo;sdUco9djQ6xSn+=n4R~g^Ncf7!c!0z-AMPEzjOg2K)OywrCH+w
z6jnI3oVd^L1Yhd{bBnU0f~goBu=QmG?U4e}jp@#=iONqoY=$-=?3%>%K?Yf+txt4<
zR$cLl-=$+GScXVIU3_$O%E#&{hgGmoqDgE`6&Dfg{J&0CV8+2NFE|AP5LX3jcR^u9yq2Ju@tN74IB!y1T#2mvVY9sk??VB^1TSw~(bu$rZvNsJKGxg5v@Dd`LbT{}r=@shpib%)BipxmWO3!_Q&?Rcj+hvMG^BqWR`^esrKBkR#sO2kxoS7b*1!h;?hwfIsSn@
zh8Q0n4)!AR6AAy*fSD>YZ0V9-3iEB$d8VTjrUba=ZilmD
z@UZDKBEjwus>x(4z(?mYn1|D^$Z)Wz1oP2*9rezQjp~$@9V2IQ(|gXEAziMDpn0VN
zjY?V=EBrT-Wlk~wL9YCt4>KP$^x*^04$2~;ML>{RSeKvR{q*|Gt5$X3CJ0Y`ba?!{
zCyQ?OP3r5!)fvBs`RS}tSmie**0}L!Pd?tg3jBxQc*y@sDt2JMa5X2#w)PYr-WCgM
zqsdqu?qltF0R-FCg((@Q(xA+=MA2361}RBK`G924yJhy+062ctMzHsBkukHKD9P
z?FE?IwTgI=s*TCn*&X{}JFdDGV~`Y1*t}wzzer17KE~O_#g1Gb8LEFw(RB5O;_(OC
zFtz?_2YW48enl}wC#NQs`gLD#VE-WPb_R?m(nW7R(@T{|K)I4%&}D8up0q@Fr#S8(
z39;gN^mH>=e(2PMHsQ?(>n@S#Ytn!+9_Cjp3%u9@D!7tWCr+1Tw`{FI(DTSZ9+e1k
zAEbW4{R<4n4l_|ZGta~tFW~2gxYgw4CF}bkI^c4L+!Q&yO%X
zqGlN19aaJh8|Zkl%uQ9(G%F5YH7ZRv7vS%)>(B8Glihz6NOu;SUuqtf;SgeMU7}O1
z|83Z|%!1Qwv{Ln&e*kjp#_WZ5*9?FnRJ?9eew0&Af(9^9AH;xjE+H|ocpcmcgxr`(
zp-Zo;)L%~MxTnIfU3gj?_HG^UNdCiN^{+LcD;>zeiiz-TXo0$8;C1)I
z-vt<8Fq>`~L3|tQ3nlC(M(K2WRrp-$)M|!rf@l(Wsko?Jor#&^+ul~|JNf+&Epunq
z)3fK`rGl@;e=t5P
zr5n-=qbVumzsS|%*V;OJz7R@kY?T927l{rJ{c|}_#^b^5zu4kY)LgE$;7M^*6Cxyv
zMU}_@#XE4>saSs4x2XO3g~%
zG>I=15tWLv^4>-;=?}meUyZ56eeF1Av)-cpW*%l;PYI_I{p$Q&$q!0MJ0Pwmx`L~^
z9Dxts8~lgl?WQ6WiJ968J{J9<(G>C+Kqg>?M2<2bZVkb}-%J6!Hzm5-mDYW>KBR!}
z>cLQpoc#P5fBEmgZQ<+muaKD)gUDwBjuJjlztML7Og~gp-f*4NUeKG&RTJcs$UEN
zU_x5_E&lF;s(9MS97a&lGny{IhqOR-JPqih@o4s^E$`Bw0-|wTlFH0&HxGv&d02md
z&h`ny<)Hnsko
zMHV+abO`GGy_?EkI2GlvvXVNc*f-e8ksVY5g0$?LDEV#V#eU)Ut}`<;6F|2p{L9E^
z!wjK%#I}Vw-fysm3`63*+!5s;*Ysyo8p?U31^)Lx@poiuL|erjjL
z@%lhb%!rMiE@TI3JKfEvX>L(y{cYS>f4}(taLSY;@Yt3m0QAqHpFNM-Qtyti
z)s>ZnEr_fO>dMp(39#g?{u*VAfws||>fAZuM_gRoOXzAQet>vKr#Yit$aa8-k3VSj
zcv_je^*Xld;XCN0cHb^@knS+5MLcb}O~eS#O&DXt2Zy!{O#*|0;$mvh-GaqrcyjyZ
z3>w$e^>lS(gqV4Lo@;6TSE7m5_n9H}5}mS9?%id}w(GUyY8{(Ebr+2cm6_K!{c6SK
zJRYZO0*~p$vp!{W+fBQf4v&_nD=l-Pm(PnD9aPuX*Ujf^2RBa5O0Z#0Kuyc7E!HuC
zzlY1)?A-F?n%%O2q`wHtL_iWuvp<-YN?Hy7(z`_bLPAVjcIdQ!kNVIVDL1W-+91C^m$$kcGjhmEX;
zFbwSMeUp*Q8nd`=8~A%AfBFGn2E}mTd2-1QLlLgU>G`~|2C#-k+C44wu+!$BKO;L#
zAAbiBxGhX!9i#(=4IJ$XSpvrxGj9+PCz|#gKYDO2?<;+|bSCu}!{s~C!0YdVXaW~$
zFf8m~2+%BfKE-+u#m{~!%;};*|ZEgOR=+49EySWk!
z&7W40-rg^m1wjhQk1D?2?9xvWU`gNqcqL*&TlK0rQ$;vEPE07_i_=ryMFMy
z4cz2^4)BK(e%KwdA`$#>Py;$|723k(kd~5=lJ0Inx*J5gk?v0E25IT;
z?gr`3yFBOB_k8!>G5lkzLxH`2Yt1>I`9vj?Z>>Iwt`|Xiu)y+l*V{>2`#cc^?(a!o
z9$u9!rI-8oKuLYu01_P;#g&iQB7Ngw{1(S7k2mg6KtaWvn>2oGGCMa%nWe8^V+hT}
zEL@3`fP)LkJ{h~&$wJM+A#BA<2vU7PpnO)>DX-5?x#U|)t0(BIe&C}u2pJhvDPM=c
z2|aPV)_ixQ+z~P^ch>S$TUl9ke=i;gFIU{22GD$*wpXO2jFGKwaIA&IH(==t+VGOd
za@Z}~Am^v&`jjEOahXnZ?^^i3CTGd1I*%GcolESAZK~`tom|*Hx;rmneT98unT7kT|?tW(>y-p2fH$g{3^MUVf_FWVKH~pU4a@@cI!IfdI8G0)|
zH5b>1%U|R=Jk=ui@u
z9WRDXBA>VT?`4XK?&WsBQU9Uf^QV|;q-NUMqnX#Hy(bk~WWjd@boBT?XQS17MiO&{zd@>(<{Lx=KdGb6+jemE-pE33i7m~rZ@*+3c(@p4!=Fq@~Q
z{yDC#a!{|*)q~O!qFZBN1cih`M=k(EIjre?tly={0P{%`qu{V_%xS9yMfQbkc+2BO
zX~AozapBD`y5Mq!Z*5!!x&lQvEt&wz7YzL@STGvuiACFf`Mq^YI_E?MtM11)G1J
zf@GdP6W2SvKw4Sl?{(7+{!qJ(9nuA
z7YQn!+8)qw(P#kOjlMq($C(iFJmw4RGP_okrfMUwnq9XlOi$;Bg8rhBP)&ELR!%DO
zbvycWLSCl6m`A>$V`_A?pvxR_Pi3
LP_JfNRu=Q)n<%kvlpPw}<&H3K;UD2+O+ zHnNm?9r|#tC5L^jn{)j%rEWP7ixDnc2GW--R>I@w|p1 z@rj8vv`WPh@9s*qf_zVFAYfl_xb+MYZY7=BZPMcAN3oHmw|uc zu8UsWT;#pNRa#N#aZ^UdYS53w;}IQI&3LM`nOb?E+N0niRmfyxrY2RB6V~@H3N-xh znNcZ(p_kH(?TTeDurP`2)^?LmoaZvIauU8;Ys|^XlMz(pNzQ>(y)=Ilxkz*D_r)wA z$e2AiI(H zx?1%^F_*2Gc_h7a)kUiesm|r-zs-dg9o$DRi(n%i5;2`bh)(%{u&Pgr<$=CPC#v@L z)jC36dSf@*6!9P1t?=~Nu-{^VFzLO?B1Hv^Pu#mV8!j(Y^$WExZH*Zx+ zPjutn8zj?G2N>v_za(i$dB!ph)%H=p>IeXwU9-JvKSg%;_G$>m>nj|)uFAZ2^FAjg zC!6EHSRwS$ynrNG3TAC0%TkWO`-*aYfsjEP^*uW&MtLZgZxfb`jT_ZM=dGDjQ@}P#1moIS? zi#WYX*G|KF`tVQZ`nQEmeZNv+tZ2McU0-Y_9XFWlk&cJk0jY{z zk1zKbAs?I3@?9s&KQ%_jMUwt>R*g!;zC&G|YYJ{B`rBSFutJ8Iv&uFvj2e0p5(-}ec)j7`Ssj>lJdP$z&#p~O%^C|ZIB03x zI_x@o{9DKBFd+*|O5XdWMSH!6VY~rqVFugh-q#_>iddW^8iD%IEcpr9S0{hp9h% zTL*`sWK|=$p56Q&XFGO>xR0t7UV&^CishTjcm06F+byT&BI(ET8i9+wfcW64zvZ5G z7Pt;0U{@~O@9Ca=Cx>V|J3da=XmS!*a^4=nkY&@5Ey;|beby}}RiyM?0aYp9f?c$* zZPpi+ry=OQv2kA0{b_%N#UfWNj(lTKDDCOV$wjp5(GQua(q-bO&C0aM#6&ey^G`PK zr|5g3N3)}&qc_x-AHys@ZHog3P>IuOQuGj0CdbE`scO(5KHio-srB{uhqmQoY^sLv z$mRj3pnkG&H@QpCHFTf-$#L`$`rqB*?(VKlH-TdhR?GE!)6bs`$#((=P znc>sx6n_rM;(2J-dBBW;*qX3Hy9|^$h||7b!|J*j%`|F_{&#x%bJNX)wc2gix&{nu zZbDqTgfiwt$^oLIRQ4HFnwuOFzSDTIK%0Ys(al(tUJfz$`@?#}IP#zGC1kbyh;MUf z{7M{M9z*}O4!tn+`;|=sWGO_v_F7Av&eCCVn%^K1b(rTJ%-!5HtQ3?K`(-An?-^2E zr7kU0sX$WW>4|#n2NSVl*t<7hXLr|19r#;3R@rbInRo5D%S*Pcz?AMR_*=6y|2%ulcFoVA!RYLO)FBi(_$niwV<`Mo2`FV?fF2pSNtG z8|J$!E~lHXFbozETF$+@^ybQDC6h45yhz-32yy=Ys-3&fOHfTU%uH~N=-+l;hY;p9 ze;O?7qc4ocdx)-r--0s*14UAQWTIH(ROc??dEi!VtBAV5MIt+5iY2Ww#4b!i~Jz{a7&YD&&zcr`e7wtTonZcH4ciOa#+W^GiPAt!3SWjYFWz62I z$4%FI$h zFBv@i{riffb)X`J08W_*oO%U1RaifmzEP+HR^^TGE6?MS33RYb8p8 z#+jqg$!VA;glns$NewXAwj};3O_wBI#y1-qbqXfgXSP`To11ULKghf0+1WYtdx>N= zj}nf>i{u`r9z-iI^U?T!c-Xj^UXJbNtC0b{j?}BukPVg4phL1E8ES4pD-}cKxvviJ1I-|u2N7dfi32(bH#z2 zQPz5Id7wKvM`<)#Y1t0 z@N3TiaHS;>CodB6Hdk$Q_@14cTS&}n&X=b?vAm)MRr($9y1|6|$#>3#Dr9(}I@Idu z<;3eVt0ga2BY-BY;0y{wy&&=88yy)j;jvl&L5qG%?d!o2`w0q~M}8!2e{WACNLNo! zgJ80%e`O>+BqVHaX5dF^H~rVm>;XojFK`5By4Zx^3`oe!2dnDWMP~R!2UVqyueta^ z#{)*wx>ZqKol5r|ss)>|IvfN~wDl_t3>^J2%1{%}!v)tZ-YwSv8=Yxin{_qed5l7R z#t@bj{LaO$-Qc!qrYXQGs-7rdycB%@^`+Te=$<>;uQ~;^u9P}a-GjgrcR!KuT3PxJ zChkU!(PXVTV_Js_G8*r2aCWy6fxa@<=!f#!Bgbahv2|WwS@GWo;O~pK#5xSHyKi3? z%Rh#=V-2`6!CEMHp8&&R8o_rYAaT)X5yh;K10|AG;WGuXFs*7N9Zo?Y?oBczPx2UG z{QiSmF2H!Bx`zQz^beleEfZ{2AKojbB$wom=5K#7Ix?Zp^O1TTb~!|Nb^-hXW)@E<+TpgD)XV`R0VFlXtNIMMQ8wI^G$Pt%w3vqIl_27$h zsJwF=Y37@2h98Zzp}vpm6!Gf~WZ5L;f=O#?l5}yo%h4{CpJ7=8J`iko9ztJ)Dhlg_ z38*B+K3b*2$FJl}!wl83M(Yn%DD1bes;5*_{xdd<(h|H z*DLSs<89QoxQk?EG^hKmOEs8|Y+7GvntUZzQU_6bOh%6Y8K!~9JwX)NdzHrU?O^SR zkB#lU59=wGFG^Mx+1Plc(-OwEx|$`1IhLuxwhzV)8Y=2;>~E3cb8D)UD0?)VKgt%V5QoagaTv^6B`eV2WE@;3J;*~g|2STER4 zoo_(Wri;2}lg73KB^-8*`K+Gvw}bka%dF-0Y6QrKtnf$g1=}ml({ay-x8vaw5)z91 z>@~0PAc+PiJ<_ttsl){UMe66XX&n{N>K#t&c(&!QjoHFe*}16fwzmrI;lOO^bF_S9l4 zkMK$pt{gN!g+t798$Yg=Y*in+x~V3_rHb%*Z%ZsVka|E|p=Rt`mfHx3u2)v(Sh%<} zKn>@(0sHRS8f}oJFm5oBu}2)lm1eOwH$IdI}ny zB>+7+|EiuI;6Rmr@e9nGbx@zLfclwjT>);WJr)RetrgR?bMuUQJa4jwdwFpoSMHXd zytz^e8Gr3uhvl{CB?tCw2Y7jL0>)y4Z(+3H&@Atd%@pmH&HmLHVwIz}+8|^W7YKIv zET=~9CY-_p|1?g2YfS4Ryv7u-oa;mz{ZKyOz5q?0jq_s~kekDv0KUw<@i5UO4eR)Hk{w0xm@NuT#Om2RGo`Hyme(*EFSi$hg zqj%dgtb-FQk5Y$vfm7izrrF98{$}8ixy<#@w%A#!!5Dh%C!594qQf(AvwINgy{xF!E5CHGReq;vm2A5)QYinyV@6v3Bbg=4k>^wm`q*bg; zyb|?VX%ul9*{|EW~e!rtKa8F$&=q zKlXZ;SW-s#L(uYv#A`miqo>y@SR2&?mJEucIQZf-mbX5qBBI^-9bdkW6@@9#YZZUP z(sC2;HhSP<$4fG^RlnrbFwXBNRQzf5rrPt#gY3DWoirty%4#hGLG*JKZN@B6lK{RcD=9!gC-Va_Lv!KQMO* zfu8VIgDzH-&{_D-AoO=a)ZR*o)(Uz1A^b2ooZ{85Mj;SaqtK&~?#|u$z1#VPVVDQv z^8oU&D^*oh8xUEuuKGBzJHBV#JT1(oV#0U!z&mAHMu`sM^13##r`r-xl7)38Yrp;6 zM#|NBh5w3N>jd5=EvRfC4|jr7+b5yY(atV@J8!))^&B@FDZIU-!*IJqvunoyNTIrV zU!_jJN^_NyP}j!dp!TL&ZF@lOYx@HG8#qqMLZrtrwwS7gkodEn`dfoiC02w^0@&<* z-DlE8VtG6to07Tg<)l-2a)ykDaT=L~(>nRQ-epF9>Kwl)LZA@HO0jq|6gRU2_wdq{ za>>H%g+8M7)*t8~SXAc&^bfm>OYu@JD~3iDGXJo&=&dk|dX;(dFG3y6%v=qx_h+EF zl(1!!az+E;BLh(b!3sn1MwJp-n9l$Eh+8-7HQi;}>O!v5``A~TMq=??XjfCi`9+#d zW)3NMs(p+`(CeKshP zwtjmdJE{)woWPy^zJQSF_La@e?@;H080p&@`?MBkoW8h>w=GYPccJ-Z3Zb9zCi8!k z7l?nQB%|b7a>GLV1*2Q9C92g>_6*WcEz#xI)Q(Fy?`3>okQii+tvZ4`)&uqd33FBd zh41?h9Ga~xZGF%Bf2Oxcex+`ni>v)SZ3%bm1xpA(^6fNbA67mcl*7Fil3V6x>OC>dn@ z{FW7zoaf#d83Oi<6Q8??7+q`(eIN*IeTaXhNi3ow9)5Rrt{3qNs~;a3iRe$AjZbQa zqZfN0D>;RBe1*&ynFsV5Y`4xytUFB*(@aat5p`mW-TQ#yeyYimns@ykI3mX?$3Z-*Yzb9tiVrFr!)N%?0j z0VBk{!;(?1ma}hmdjq4e@jeR+61hcM{;fb7A0YG-sCh+1x^qejq&_97fw={_@5B}> zr`FSCw4a%skDkL%;bq8=RelVlqR2G6^Yf$!T>q3QH|8!&-7g=%#Zm7EDT_I{oVrPO zEZ31h9>D20;o#+jg`TU#q(3`M~wvahP%W82pE z8D43CM?{=lhS^I!wc(wYd*!3Q?7`I&kEaFohWSs?X+@*thrC6za8p|R0q^UpgNFI$ zH&_nd$NMr>^6SY`4+`U<Q_{8of0?@z*T<(FVrb`Ny;) z0eFnEhBnAh$IUPE5KJ1ud)784cvrw==WEeL67<=~C^yGY^~j(W zf`^9AM7Fyhh}xY3kVtw?vR}KPOp5NV{R;QE7BZC+MPq0=4Qjd{lNg(sc`Y?4MMFG3 zDgIUpg;LM^CRY72-jy+RKOkb)LXd)o8ztky`00`bUG=gSR}*tcvCCe*+X5a>uufYL z|1zf3?LF~jcu){%d@K+*w>H}rvWtrcgxBot-|^ciawxU#%gH!l`hESHBvy%Xk~+21 zgVa`DIm^FdfA0jM@Ipgg?wWat@+PGW4&!V)7E`!A-7Qbwv`WZj_-q0Pxb3|+nWE2j zF9ZF;>TyU7m!DdpaW`GR9z1n=V4!vF`LS=`DmT(IJ_iJeT5GlQh!RwRRt-f(3Rook z5k98{4#tCn1G_{x-Vfcc0(!I*s^q4MRrQeuP#L>AG>Clca`(~sVXTCMh9{U9=l0^l zpFRM(ojtH!V|sEhCNn!X6lR?P4c`xu+CH$bB4>BtYHzzJI4&hGV}uI3@cwP!X0x5* z*asBY?mylt^#g-ZOb5Nk#Q$&0MgenBL8#|%17L|l`B4$)y@I^Wk&N2GW;ZjlBoRTP z`*b=%h5Jex28qk%dUe1vqTr<#A+@t?73Q3Ti}`mWIECUh^Gfj8FBa+MLIQSUW)=Y> z1zAj8G!AvYAya`&fBp2%@dFzz0eb$A5kaVw*2h-uXTQ{yu=*NeoJ(Hwot2S5hS0m) zhu_B1nGM*FEG{yX67rP{VW@3hbWja)VCc`#*e5@Zr`;FL-VH0_vCW*c*1Jec#~QMK zV(GqmVck_0VN_r7k^{Ya|HW$W@?VsjBMsu&&XDl{zE~?Y3}aw7DqtQD9R)POcW?z% zqOM|(nv~Bn76)U+7r!wWZKaN>>x~vPK`3Y5OD>H3aohku?@GYvd&H`SWLckKDIC zx^vV5O}qV0lrD0Di%m^Xl6F>3=wI{m@*33vWVG276w+|POZt*5v4ERgcveI~J|K1V z4Mb^?a_Q(}Q~N#Mm0l61^L9UAAx$rsMcXIKeN@R0gG>zVLH{*2IZ2(Br7w-{F<3pY zQ(Nb_<_s%9l+3o`g-wvg64|PU=4Da>s!W!RhRtqu_#H);P2IaSz7BGuLpVs{8_O0c=m*Q!!d=%80$Aq$P>;~S^|PvGR%rZbPw5Vp=h_B)v?Pq z2f$s#6B6hrHx#Q?e;_b5#5pOf_XM8wweDh1xreVcHc|+|2)&kz)BZK?(coP4l5r&Lsf45?oX$IH zbhzSx5SDG_uJfHrVEJzBh-s@V_`u ze9LzFJh@?2%XE`#qy1Bt_P-mr{{qxrRA^TIipbN}-M2HHoxUZdGQ;{sMMa_O`@oPG z846K{mzI%{pDfj1%uYD}l^OXM2+jN5f9>Qmp2+&A_S-E6{++T~t6>-m6UKhj>0)>w zBZi8F2HET<&1Yxk3M9^R8#);%h+J5fe3*F>N*%8;)_PH~>@}!npc3Hg|6HOhOej8< z9+Cx9abEUlQwuHqj>%cI0N1=rMvcoQTlz}(`NbR&AtB4qarwJn7tIgvF01o$=@T9d zXXs#Htd>8P%s|#yjl1k>4Ha|#Ek1~F9}AqJ`ERPM`u=zU+_S*fK|{ioTf5!#Yfnk} z(W4XW0@$D{fEW0i7-k|#<6$&fw6)_b0M^H#?^#LXVJs}sf+cAd*xli+8yjzQ+cx+? zU{(hqyfCmz*M9bMlt$+>3n|6)hKC`2IZaQmvNgMK1PX_%8q_|B1FhdLX&fM3(+_v= z6L#l1za(+KS8idx3IXhad1XA(=K&NTw2u$H{)#?SZ?m-PmmR;Z)VP3Gv;971Wv@H% zpEpBbB2)fmyxtWWl?kOIBZZ><^CwjgG%o5ZSYLOB=IhKrtH9TB+rw$K2YfCp13Kyx^nC2MpbO{{g{8y;lV+kQV_B%VwI{Bf+z z=WC=Wsk%Z<>eYVqzh!6N8O`@A+#V2l7oyb2#eIIX{>hHHSo)$WF7H|$z5nq}S(wT6a*im^`T zxt!5I1=OKWo(D17Pq*;ScPj#%nZpxXxkd>J-SiGJ@!=Dtt4Yq!e-DIZ*SdWy!Ph;f51wmGXaAT{97&ezBXs!VHAL6oi1vjEMM1CL+p8 zD{Q?Bd_CG*L8@Y3AUYN6htEYo=sATQ(@{4gZF+NRn0tTx$uEEA=cn|bE5HJ*AZ3ur zn(+M~W)dGb0 z@NjTZQb{!?2Gx_N1)@YTE}&P)n5dVN$Nho)Ed3yPYUG zIcM+j^tm`N)x=ZkOdiUjw6yLca*QaMgg;sEb+}|5stGxV>gZP#Z4{x+SHvII8 zP5)WQsFluwmvYGb2)omTd^coW7$%D@-3v42k|468?-OyBO#&I0TQ^b_%Az)0=mRt(_){E3?5gvn84@<7VYjP0@MXE(%kNwIuW;t1W0uF z8E>%ZuHv~K5vs6U=Gz^qKLr=qM8dp!7iTw)`w}7|a^u00J}luI=s$(x&#G2M24Y`s zDh`Swo{q1)Pyr4XBCllmamrKK*jH+7YAM4(n*f)>-i3%znhf=`-EeGmg}uGE`I{km z?n0DMhr{n{w(kyuRVJ+l;{Iu3m#98!eMibr=h|3Kb(7_4bjj8xsJS}7?59}#a^~x6 zEoQAnnU&@$sLz#wB(OKrL`FUMRTL&sy@zyL(dSS)0QO z@e?qJjuIujfvya9PkQdsM#yRh1NdgPP(=sW1cqfao<%b(+JAWnuIMTn`~0rcF*#)3 z6ao+;l^kFX#Fx)N>ff=0-nAAVuY=~_vR>WTsQz{5ff8zIXD2|UE0Gm7mvVv_N2L4u zQBO2E(X{MM0TT-=3pGEBElMdl&?e+{CS#Pej0}sQJhpVBZQsBE>u9%5 zK4OQZab65ftH1`eRjqA18w9kWc`{;Ac^*aq*shS(=Fl~qG-22$fTNqvPt=K8d3KmJyVRWr z$l)>ox?!)15#d=OayCj=6#n^)r_2W{sa2~tKJ^X0PGOQSQpn3qN8U4wgh;KQ77X&dY;FItK$kO$oE@^wWJxd6qw7HeFV1lrpS_zmXr#&%yi0 z;9y8cDd-WHEM|aIGJXuo_Om4>=TU+-Yq`{n;8S0R~RYB1BRiW zJQhc4xohISEyC44AYyzj-DR)L)RLEv8*qXzEfK3*!uN4e-grCB^N}8ZCmMU51ot7n zWL`IA;GFFxeF&%VRe${!@0sgs=v$T&l5_oY&4nVS%kDdsAC6s} zU1Ao}CCy!lCwR%?3j^2|Mjk^>N7!Tyr;iXBEOQnm?!!12%~PD!;?=;PZ?1?o;nglS zB2Tf~6xS4^mHYEO+tQX6ndcMN$itZsKT2FD3WT)NMAk+gzcg>e3vs8~PwTm`q^-Mj zdONdB{X)fnc?kL2_5Rr{#3Df^y&n1ugMTJ7AT&SEJxOg6JTWze3w!+Q(>oRpMjccDZSDH_qBBS=Wl!|AmSqq9HD4%3?K2*Up0NrN%}U zDBT~%Yt+_*b@WZK3itR-=4uvH*k*GS-uP?6y^%kuJF>B?=7y8K`wr17CLW9L}v%6OIV(h1Ax>BpFLf_?9m%Im*3IiL$%Eq(8FJebNo`#tmuOi53)0_ z_IPkXw+QOQDR&YdizUwIL~7rd#PlB?MCi0F@#8O`h3cNxKQDtW=*k>*#&ulmZ&95DF%3(PeWpvuIp`edK&^ z=BX>pD17|~5ZlW#1sas^LyMEGs@-=K6lQh@pDp2efx5*k8Cb)_0D3xZ9z<{yq>SKi#ziIE@0bgR zUvq|hizP^RfEkjby1er4UzP_L5{u^~n$_rj$;Ia88fgxj#sR+>LE!L7wmlrDsT&OG zZ-I)sTJZt;qnmkc$sl>x2WgQYCkAKPp-Huvw12uzFE*H!*G^U@Dvzsq;r$7xp9+c# zwaPSe*x2elO5n?7ZLa9%H_GoUW2&;R_dOFlDIh5r`S@~ctiGI1n2Bx}%)aN8SEU`~ zdbEcbXw#y@hwZqz1C3vyYed3tRBEp|FpW#CV#;EM56O46E;$bU-(EpQwDob-xmdp= zS-f=}zV#UIxh0AdX<`2X+zvX|Zbv2@r3d3{e+UGTEtHDYR!be7rJ_jP2%U(ae7a-4 z=iZ!|dAfQ#+uN3>-fvkvpZLjmMC};iGL9WZ&&h?Q+bsd(*)G%I$Yhbw)4I%u{Fu)> zJDVJx69?7O8kv7tw58j%Nidm@ot?g;!HFyP>ZKETa##t^CmxsfBC6ZQ@bFp@Q6U8? zZ8Bj211({pIn6lyE0zjSqDsC2x(+aQ+#+Xoj4QPNdB?pT;8$+Kji>w& z@nBMKm@Yf8iH2!H9**|{5Q3+zLz6>&Lsf_fSg!YGAdgBhAPI)qDAD4jbi}%I8LNI4 z(V~%(lF6}6@5#%&!4uCm@GS?`FFrLQ+ilCK=XSP{X=8&f+w-$X@4QL5LN-|777FCY4P zgT17`^t>C%=rMP=IWlq;d1<{q5PE-g2akh6i^;f)7N1>*Fo2W!7OxXJULq@;>F?HXP4~B42-4BJbUf9u0VyRfCO;Tae!QzNYm( z-koyjf zx#ss}aU%U9yI199HVz1U|y+J6vl#0c^;LG1Z$AelNZf zsB=h76?{BAS=qiiRQT46XPrgp=y4ORm{4{^WEyQhAg`d|Mh4wUImCXxZWj5*e0P6e z>x$Ca@;uYavxWU82e|nwTZah#d;?>3-GG9so)m@1{e36=Jq0jn`r`Y|* zUEp_ot2MKC&Bci~#Nsse*gDS9Ixn3t*n?oUTs_;Vtk`;2D%7gW8kL;vHfh<0iZTZY zbq*qZ#zmYi&d%6;o(Dj#*1={HFJzIZctNE6X(2FU0PlO{4UJ${-12K(4=;NdQJ>#` zYY_`EmBGmOvkul4QJH*zf>EifX>xI_Dmq}dx~?dOfYc*k&-(+^kLqV|?G(=&Q0@3iSb%6a7NtxI*|&h+wrVlnW=Lw>>JQ?kr!y-Tc7!QtpE#miNRC}y7$kgYN7t_ zyCo6;t|3u>q3VcM2MLKCSGdj;sFYRLa}_#B5KQEh;=H1Obfm?ieWLYL>hH4jGYMyz zj27`sA#2tgo&DnvSi?8rmxiKgDK~pgM}CU6_K_rW z9jNK;L>$T^QxOFP$XL;(4l>pDUsX8%+rEWUc`-r0-zHohkp52Gm0|Te9P$mo2;WMh zrX;T3QTgkqgGe_FE&oPR?zk;T|M%YB-ZUNEC<7WzA)l;3fTuOpBu9&JA39bH3C_Ypmzrb z=4b=z|ADGo7vN!@UH3oKevS?;Ldb5eSJd)oRKQi6+uSK&Mu!`qUyrJv-s!L;4d~t3 ziEjdl0=sy)k)nrlXRAavVK5f_t^NI?K0fXnw#bWQ&|f-iGHL_}Jr5lzac^h)T+oZ3 zwVj3$(#8b!eQ;iTE7KE3z->xYgQ$b-N^U@3| z{6L|v$ybz+&YwREn4El3Kd2~TIu1;adJ>c#s=&(7pGkT{`Rk`Hj1~X)5^a?u^@3Xl ze*Ki0s4pc_Qcy-Q7-a?edwf;rJ;nsZJwfuLBRLr` z=`F!bU(H>Ukz=UzgLO^i=5F`eK{eeVhq6zzvG#+lXk4doO5E8bA|=i3%1DHWFp-?V ztuH>OjWDA{NpW!mAjB=gOazC8u|qmGH5J?5bJIcPK`e~z2PXVodDMk~15Gb981nZS z6>F`8YsI^(x80WXZI6sZ?We&)K_RZM-@D;umP1+ne-X$IBq5;e{K@iGS4r})Fi^{w zq{D)OFat(^#p8F;h=vo!0ORq7ssNPqyxd$D0~otF9|NPmPs#sz!T1Ft(>XZ)Y2ey! zx9O(~R_8VuSr(wYX0)G)+zeW#GRqDF7T`OG)$eO(BV{P?i14v&U+XJuh04t}<;mLw zylJ>@r=OxiPNOFN83ty2hgGtXF_`H$o8SXUo{PJj#wbX3yc_BuG4YJ#u>U8-SeHF|LlR z&4;VyqTry>*w`=sety57+Exv?mj&II6%|(-+wY!`^{u$#mfvh}x3#qa4T{F$k1MTp z3=fiRn<-0O9U6WGZUwgu`WcF zUep81Saxl#%;T`CAw1lF4wdxg!##mDCPW;xAR{Cl?yHC@#M*Ndr@`ma8*$TfW z{KzmhpY}w*Hx=1GY}I~v7}#e$eo+`vvDjn;i|#h}KVF=!waJ-&+W!VZ2W!zXxOHkA zulmp#eo$lK&QZ`&3q0<4FQQ@MXJ_hYcPn3ifO<<_ra^!y?Ekgz7mcvC`Zp>d$UdE0 zUAJjyQd=r2jyXIeL`NhDOL;sYdg|rC7#<#ugC%t02OM!jU`o*i*^bC!(~e~{#992x zo4Zff5GUCyE|2`5?+>jE6%t|O^91%Agn#S%OiJrSjzq)GA_?rWhq`o;V=v&nuh%aI z+32^uk;Ed3jzTkBoU;cC2fg=9@l^l*L+}ADyn^)f^aK!B1PD_Gio1q_<)Q8V---ng zdazzbO+q37Si2;QR@D;i_*n-FoX%&hkftUktbX++H0r>VjhvG516W(Zz`!)nsBa1V z!{Yxxr-vVkP^gu};W!?FE}aw|9lc@eEj`eqx+wI2eSvX$x7?zenRa!4ZUWOSfS$p` z%q)1yB2Ph2qft}J5T)omi&hdTMAp%v;M6RM&0+@`+M4#yD&9*9zO`P`t2B-L6YDt; zU&6mUjsrHnrlv=+wM)Fz1iTMpMY3b7J#(69q;-yka1WBR&rHVxCQ$|WxVpq652}O% z$9E@1wH#H8cHGHaMt~*`Cg;mN9Qq|}Zr~~CHNF}s9x8tiEFM3yc;)6yT z6+`$;E@x%ee0`k&zyf+l^F_~L)|zaI*~syM`h>)(PkP8O&nW*K8Sk&?=@9O#FP)$N z`4dPq73SaB$=M|((!kRqZ$ohN{jQz2&X$@L34eHSXbcbm^!E3oTN2#`n3O0Qc}V}C zcU3^ZJ1R|^I3t6kYvnu&p)4gq=i24+Kvi5yYP8(8f}D!VY$+qw*{3D51Q*GSe;b=h zCgmHb$(_4i3HjJ(zV$fm*wDJ# zrGPg#H#c8Jh+bhYk2 zaE*Tb19-H`gB$O#fUe)=-$DXaD-rRva18U#{2aTIzWnf@{YFl?BPx5K~ z$JHXk&!0cnvIzD55BE^4l>koXjGK;5lNW3tR~po5XlXU|gl$wpwN@o*UcVLt5>dm4 zTg2FPTpWTJOZWZx-xN|#=hJK^Y%9YIU=l+PCsc87eSZE&et$)|f}*UV z`J(X~bmSl{4SkR2{r&Rh@95w5PqC>>TA@ySI-T2(j~=+ItiqSSRH$~vPbzFXXad7t zqI+U=^Xqi9`YLIQ52XF`92Apyz25O?<~!{U=Oa#`5w@%mL&RXzDZqna@z&+}O_+sHtyLl1gEc@6(j zwt;qfVid>O(e%tHSjmOu(Da|_-Sv#su!)G2W%e=9@bTZQuC8v?B|KYbXi%%S z%8&!Nq#-bzjjmnh%h&qAtw|bIkIE?g?l(O&l@_>>bq+JEh`d`}{uj3d*IBC)j0eyS z_V148ZGx1dK#8BzUJ(%y#K4^~!tIxtr=IVzw|5)8J_{!&_2A&(Z?l5l-%D#wn~i`# zn9T|(6A|FF;^)`19{wZ;=n%!WxuzY@lw-Y}|GgZ%X#WDJ6~FV=OD>u>g3J?O{}fp- zShTX>zzoekNYP_9+|9FIs8Zr5qc>dDXVCBlmwB~^54cz3Hes}RM| zOCxx7>5xJuhTQa0mExZ_4m4i!H2e95W>FP=YBxWFEyX27<0kSKQ@L}~(}@Frn`<~) z0*@G&di#D{cqIYG%iVY}9X=phUx{BG?4a7LhwjeK$kE)}!z(E>{>jIIAF=GX>>d>v zNy6=L5YgHS(ciuLR=<{;i2dyu9(T;9QQzRvU(%b3s27>j{tS!pzn72|jW;m;ycw!( zp(DUmMOm8G*UPle;{Nz^&I1baEvD`22`W6^#SHn;(Gfb_wEqO2=@Wm;`Nc&N+zw!h z-8LTu{p8BSe0)wNS|#=d4Ma2-c7JHWb4vnxhkw5aG2|WUYiiY;bz4uMoblK?Z3oys z&WYpa&))-mnt@dmH9dW7Pft&hg9ck%I~nQ3%1U|@@F%21m;l=8qR8c<9Kbp|eydCc zexJ%q(B&EAM1?fgwx=Xr2 zTDlwQ&WEnEd|y%b{(gIZ=lr)WE_fEt9dnKuV@!GZvTxnp*x)>(TPPW~S66U+VWfaC z500=TFkd7zEUZ6+K_wzAtPem(2k~zX%gdR5!WRHns<+_F{I}NX6&)x*nlCJdN>s!* ziiXs$k*0k|>FrxGJ_RXFv!V>TL_9=9#KcOj6cxQC?~|IfM6+uqtag0JG9#T#JD}MY z=_M_1UdI{DOL}^CyI8u9MoaIL3fCY$oXV{XE|EURx%){;B#xg`$?bWRFhwsC zQsLXSzW|dQT8`_72i&%nVm{CDBw$UG(DhLA;w%54rlX4mis|U61PY^_ot+d)S#+YJ zqCq7=3WbEv!#03Ql)6cO*(6N)%D(J$vQSj~b1Wo`ZK@sYb zh{5nb`I>)SN1F6Xn-65A*)+r3W`J8hKwH+dUZ8B){5xfU>En&D$IeMpGim7S*F}O+ zgU{#uCLEueR3f6q44;nl3za{;r1j^t*hFF{b8RvlDVxd<4nF>72Ho$p&CbSp)BZFh zlQZc;B;+v+e9Ms;8yO=Z*oE7=<_zy83H!JNOt^uV2bZ~+-_*p~AHTjfZA$_3nr(6o zC}#K`<3Q^mZz~ob94N4ScIqUP0Je#MlEPW-AZ_?MtI2k|4$#Puey#s$hiIlYFe|_J zBOK7<6FUg>_W?S@fUwC+z(iX<7_m3cax_iF!Criu+89dt?dbMjdmpkNEDF#OJh>b& zcsg8gx;ph{;ntCUA?zys9wc>u;~JvxOD&*F{pR8CXu6FB0>ulqNF=9m^23C!730qK zK3jKjDSnmyI05XJGLaYI)N+P~hCp{O1u!cxQX~iop7iUjS!_T?#=EuW0zzT0R!9hw z&#}`x;Vz?bTYz|QkNLyH;@Ft!P(c2cb!b5E?!mzUZj|1_mZBo zL?nyHu@w~c{`U4ZBt3mtLcpmO`3>iUjpJ#o*^6n)($QHv0c_kX?Tv{>=@nT5Lm8w+Iu$SUTh#mf4M?2PLy z3+M4f)wm~|TU$*s@@n@X38)RWxOx#62bPa(Ucw~oEXDTooqO5I4A_@$H!jSJzCuO< zC1}q#y=g8= zL;qTC*Eo;+O!mo(3PAwv6{P5|$bTxS^bHQiZD7*h(7(PZX8&{Cf0FEpSFg04mdUhn z=>d%#t->O+Q15vhm&NTAru=pVU0tj2+2zZ#GuFT=fF?x~?v1@TE$Y;f%P+bOR924g z>OzZFnjQxQ(D857B1~jr?L*Lp0`-r zW{QWi4u9x!!yX0|{b1SU=DjYunnVXGWsDKpVs`*XkB~&@^2$sp)$6pYEEs8xjs6l-SxQjluXHOx0E6}?np zLBg0S)DYrapaEMShpFub8;YirMx~&*i5id`LswK#$lPlhMoXv}!#eS7^^WvGr7Tok$I%tI@cT30di`bF9$4MPx$t86N(eh9}G zh{MqncrrF3qV(9qCC{@g*(SGfdiEDKV1*g`eFHw1jQdv)OY zrf?#6?oEKu_wwDmMC;Moh6VoA)ixpKgJ<&zKos|0`S>Y3@@qEN&kW5{yTS*HqgaM8 zpt*Y1f>b!G)KMPgVw&yi=e2M3(m-Eq44`rna#^{7hKf_DFy=v_)}tXy&ZG*_J_l=) zP1!94ka2BHMg-Xy2o{^?BzUrGt%PpuL%o0|$O0v*{c_>1dtzQ*&9QOT?DBGdvjw;?v~RU2`7o?w`Rp* zzAvVatR7q|RpsWmYi0f19rrM^ShFk@EsL`OyMof?#$9e<@SD3*nTL=+2Su{2 z3ku=cGsCmZ!AiR=x!~|{N1Ma%;eY*tHxy<%7+(PuIeD)|?P4h&OXjJQ*QFEX&DHAG z*JD(A&9M#;U-n5UDyflQF4#qU>!G5Xb8#X4 z8#DiTwswMWR3E5lz}Ke{H8VSi1$sBMy0+qMi$RIvd{)r_BZ5pI$WO#eQ1_*Jl%795 z@{&hUHbr+)qHI>m4e4iqkp9!T|13W&!m+WL`CEix>ZmAFSu&9_z^(h_Co>xe4Ksiq#a@74 zPgk_}y*`rQ+j98nOeS4CI|A$PxCEG02)#{|v4Zz!or%GD(Y&dtfMIe|rP^dpOZCH| z^xusC!VUn~T7idp=MUry>Gq~dVt|o&1Asyj6;LRuDZwQb$(M1SkGFDcFMmmhfkT4F zVHwM7*($<6CxNSFMa6YG(&S&{f1 zkIPYbe_Vd+iWp|1B!>}m`5aM7LbdEcGt1BELekEx5p)3*XgxXdSI?NkOa)ljNY@e= z2K>c^2-C5rx0=&LvUKEtfrCv9;xA5Y_&G1YP;nOXoOlp;x?j+@415<*wtiEjm0y}b z92WgBRA5IViX7K_%p|4w!(7rjL!1{G5NXLH)8FpCk45?<@TzzbFy- zC5^@(UNc7l-TWEL?MbdCk{_L2ZhHZy*y`RIh4T5}oS;3C&Jnb=yY~Yy5A7wu$U5Dx z8kPp6hrXJ91v%_Z;oeS^k1*M#<#^5tf0RSL2`lCKT`1xE$p}kZ?k)zp9iF0%I(l$A zopy9{pqf*x+p2T1KTH4c0B)&CgqiYRY(S|vF$04fpet$E8Tfo`dO9z8{-C>U!*qGW z*pABk8Y)FKCm$HkJXK=*2#JhMmQtVYv;33-`}_F)e72?pmoVTr-n6N<(+#YXjc9Kd z22%R*WD?<$%F1zkk9TJ@0#=++@)b1z^*mc)_@11EL_A>Yy3*pcPqD6YhTD{9<((3BqJ0@&S(~}_S+lRmmlw!rF51MwBI3ROLP@QuLk{IIN;$>4y>Evr`8x-h)*qWigEy% zDs-Fn#XUpAYk-sn6i&n+cC8+|MH7R1mnUH$RHo8h{zTwU=ji8w0)$5yiokaI<%_Qp zMBeC$E%n+-llg~-z3v5C<=02%tp<35mZEm&aDlm79780i=P%48fwaQuacUzuExRy6 z6)PLfhmZaNP{HX48Pw1fh3AQkzfS5$#E8(|ww1^xoAuBpk4jk{w_7Dq9y$>kaiWQ> z>qtTrort2D7pQ{=DNGE$YRy3Y2;hcoOaz#cxjsjLV_KaB%4kxbK1Bk8X3??!TzyjV z50VZU3g;K+(UMN{7Lc)Aa$Xz8~nuVKWzGf|Vz*D+;QBHr&bl@(1!O zFqiAF&eN4Q+P{A{(!Qj2GFT0EWZ?RQV$%1^XRQ3yT^Z)GdoN~t>4 zzT`;x)(Vi56tz7RzGQvLuB#IjxbBme)^Kg`4+v0uU&Uj$WRQcs$gokqciv_DD;5SC zVE~G=qKV;D)Sr8}5DLZty1#R$5cCQ#Ff^3X(D>{R42Z6b+%no$)B5|GaZ-3QTgO@& z85?i)0>WGd2KE!qT0|=PIJwDGD@B2A!NI{idA%{Ap|Yv+qHo+i&# zgX`;C&usDWs470;R{nH z+_KRKfoE1mbap#qvB3ZH={xHA-9*8-ZA+7u>E13If@^{eOg*BRJq?ra*U``kgTB}D zQJ{4$AiW$77Up`mcQ(pGS8jUuho9#FCnO}0^ZwK)iaBXSato4%!Rlx?Dy;>aTUDJN zu%Tn~g88?mWGtm#MAP}pTnjIS7vS6ZkVNf>a0paU@AE;(VUpgZ4xxKj6au-@JdJ=_ zO6s;h6zn$ku*55+?8Ce=K*z2-cSvH3?g#F{?DT-lBYhf-o#29 zbcKiY_3WBGZyr2s3@;)^m!nrr?* z*q!RFGf%H7BG`!m&1rE#+!7C)X>sFWdhOan*OK!DGY`vFjt0-*(rN}fR=cIWt#>E7 zqnD+X93hJIhwP@>{ACXGuKhRsQ_f{I96TOj8a*DPwk_T4{nevlWcwg=`pI)QReq}Y zoovGk>b9M*e#E~$dy0HUL4nj^^Oj|m-qPaY+8rVma}Z#rq^5eemah+;49<7iX@unS z)C^FsPnG^QI~Noq^YcY`^Mj{hR_-GF#i}yu>Pa5Y%*LZ#3iMuUX%+K$6K4V!+`i(!#CE6H_d>pBJHU{2O zHf&#?VP$^>B?38D=Ice;GLzT|k~41HVTrDdkFG6-4w>0h-F>Nz9Eqx47-_7(^X6(I z@9gbm1A548Yrbe`@HXUtv~rre5933f7Na~vf@txe6DK1V>4)&vs6{2z`o-o7`S&eOKm+=Ra_W+B{&M!=-i-(&Kpn!q-7@DVRTXGB zodg7_NPq%UDP&K|-#aVW_6p*78@V&$^pvF_KR@#Ey!AmloJf!XC6{$EQRtO>6FCqO zOh15%6af-HS-)|S#0`qLP#rUmr{9ysYJ>b)rt}Hxr+Kn!&*8LiLb@C3*c?&WNlbSE zYVc37LmKLWc+Tak=C9SYX5Y>%cMcCR?+D=CCUE-TPge-$$g2Wb!oRrVif_3qpp(!4ckg16tccr%;<;(dtrYZ||{Gt*f%IN*3>r z!)2hY;InQaV-%tJO_gY;dMvVYGv78U@lVqX@d$-$7N$-nAd%O}sU0;f z!?(?b{_0BXedEvY{#ncgj)Xp(*Z>`;JB7~<_3?f&VuO|PJxD16nhx_*iW`GiL5i29 zrDcciuVnrU{6KoyuC)tvqNcghu@LZ4BulZIH#*R)e&MVZf5LIdcbyQ`d} zV7=U0VPE`2ZP#}9#DCIM%*6%A)XX$=EqH895t!kbzymK34lF3}roUbaJQhRxOau&# zL(8A31b@SSUy+Ea^Gx#1!R8<)&T$2XYMG7*7n(31VM0if5m~ljmAZnqif`bq?Y?=b zSX7T8)bO~W%M9|rU#v|WB{5lsn55QPt7duhgY4^ok*Qg#xZy^dtSnePcz@Fst=b=W z)jME<4MePDe(HNJ6{rA}?o_|K)roDAc$vVDb~@O6wze;_+%b0n-;oy}%q>?HCovg+ zwmEd=-89tgW7OaOmTMepy1hfVISt-)&aoON3`Z$)eB+CjOC;oOgam!4#hqu$4za89 ztc-Ob|0rUE&Z&l8W{FXqy4PudS*R3IaYN$6DErl&u;|*jEgiGI`vp)Re$TSfV^0?n z9xk_LmtS7~W=LdSFZwd6?`xE<)29eQ_2(YkWg-GW|1MxTCX^bu2YoTcMbz&Vr4xBq zqAcXps6Er@#`&=J_&@}RV#v)Lgd5Var@#8M%|brsRL4N_T8SaNnPzh2Q9)b}83#+P zxHZT9E5)fZ-%PC)(L<-#)pF=aOHWKs;Z}rrzwz6jR{_|$a-^RxCMXtVfcSSC-vvX| ze$rxSx$+8@*J=;Sk(oRLrXiVZ-z_>V3#%Gac>+Y&?ZX{*2+f8%T)t_aQ8P2MilPEs zx7vx->rS^Qi&~%RA=P8(b}5B_UqSflUGH9JouIdqAor*EQUQC=bNvim7?TGPild;! zi9ok}6``TwVLvKPSl(pQlm4@yH(D#g9?G+vbZEgYh@q}FC*r&ey$4mFrkP((rZ+F0 zSn)a1-;qp5h4E|RouqCdeX0BkC%?bYgxN4CkXz8!ajS1_k581=;2pD7`c8=^OI{8p z%m){(Jc{+}_?kn~a7g z?AMcV&gTK0ip=BCwd3H8lO4y`JRa%R7605?Vh?B|qg6P`tLwQEou zCl)hHYV?<>1!WFvt&~2c8M^fTXf7nNDLoiBV_xYqw{_~Zr(x~ zIK^tC8A!<-NV&1Bgf$ZtiogQh|A_Z_E^UYs)XY*R{P+>8)p-k@%)j*LdGpRm_th0w zsdl4LO7a7sVd!^%dpRJ4a^2fs**j*0eN=0}c+tVEPUE-zDMI0#H7M-YUGh06X#=~t zQH#(*c(Rw&wl{k-&%(FbuJwvZ4ZHgL+rsv%< zl!Lgz&Q7N~foZWI%&@MNb7-cQdLY2szSyj1BAbG~KI@G(J7r-VRK)Inzo4batW7Jh z*IM@V{QZdeD{B0Bk0S1Gh8oZGrZ�xraX|%d|22VQ*V35P7q+Lh^EO5|fcZGSs49 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 z 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


+q)>8yKR31v` zJ|H7Y!P|jQAfs<%^Xl~+8f=FTvJXbr%EQu1mN;brD-+YI%+t9HnXIM(yn~qjr(%w< zL+_|$-)VCyjICi6m*cdCBCnJ+ynJ#}l(tiU;!=lWt~8XwnJ2gP|E&u7zW^5cCZJfW zYC2Z^E2IBESroV;_(Lv%HEjskx#;{O=jrR%qqmzOu&;?9b?&+Frl zfc6fem)5XN#_iOwC?|%A9!}-AWW}i4ySr-!N{#ydsu6xH2Yq`lwCB@XsqA*#uEQdM zxDC!vBpoj5(kwsnl8v3Fm!8eXxK(y9lX7NvCF@(MN%2rB9@%d~i#6YWPZcG`k|2)x z&L?^a#Gr7(l~+9iy8A100qSmX_rZg#FIp{^XK1G_mi(FfK zre;|2)qch*sc81ojpUxe*m{nK^jWHtg3H;c>|sYbCEa2JezX3^6k9pz5{y2vPl@~- zxs47@*2py6T|hHI4H?)$1iKA8^odC!7=sHxKpr3ND$Qr4_ZRAjB*1PwRT*y0HFFjp z=;&Bk%LDpTtd|6$kl*H5qKUrbCX9NI9t{IhQ_t&kZckm{y=oXCA-M|)Y9T*qe-;+_Pt@Dlnsl-7hOk(EVx>3>w8b%r}r~pl$-4P258UOMe`N2%w z9C1|}&w_ixX{r(?z?$m<97_R=!k5vQCt!rtgfhz9{jI_T@zR70uRleGhumQX3yeeY z)NL<+Q^H)7k z7Vn%wc;h&if`rhK1$dx^kTPtz)@tvjL32vTr07_uZc*FfK;%di$69-@vv=FU<;&eN z70G$qgElXue1$ivCmFHXW1krHa4ymVESkaYoNUcq&T=R0i$awNEsBgd|$6 zKG-XN+C|HhiCkeEF^LdRbHcyJ@F#94;v=Y+tz_T3PMJ)@FJRX@0!j ztN-BNyV&e1504(w*ACaUb$_G%IPgT~-|S+0eY~Fk&Rt3>;=I@djBMIwU1qiphL@WW z0B6jc@(7j@eLLCq-=(fbZ5CD){aXHa(|$n$=o;V7qVB)=tJV7#5Y1oLxiY z_;^)Vb+W?|xd9LQdhR*KlL5o!%ZL17bUu|f_`b3~zjNZF0(fk%s|5TOn+so2I#HaD z^Cxi$i9EfArNJunIB@8;Tl(?Dn@$LQ#hKD^CN1pK#+8hNCGaOlG%^ z_t#bAq(@Ezt2A=l4;?#ShR?uzi3kg+H&t3ldG6dyXP#Hw3GfX0=NWhDX=lOJ)23zu zw95(J--4*Zcf2oudh191Tj+##~qXU zQ^~^Pwy>>dn*7UFEEa4gJWQRdj&kfvGrVY7$9OmvjBS82w~?^Q6P|U*)&U8q%y$^; z$*#sQTNA`y1Q8-r)7?3C;b-tyr80BKU5^RG%1UH#Sx^KO7=|3~zv5m*fQ#?Qjg0n3X?F9XBYUqrv+F#*$oKPj}A8%kD>j zQ*d%o!`o-h9BF|5ta=y*g;pmpVLSebA!3YD$lW}-=_-6TIyo5taCKB4r56F*>EVHA zvDH)kmLn)DOZPfRWG%KE3j?5i427ZT~3#J zqlt3}Gl&*vSZVN;!(oew=}DgRNs`CPU2p~L)y~#-%o0TO3}zCmswUaY zTB3h;$^j4hmvh%VuOYkHs;@`XT=WS0CVy044PC+oj-fwc0X+|u*;(VWh<-sbX6YhzNCDF zd*r^HXLK@^SGq1HI&VhQp3Z!0!O_!5`u5DfO-6DzFji~9GDuA6s^el}ieY3)rc!st zsrb>-Vd6>CD9{_KSwr9zIg+XRNPdev?3C(y?9ybmHPD8fzk+G^l1r`RFA_Z!ldl$~PzJtvX+zq?#y@!1y;Kv=szS>a#Y1YZfrQx?8*56N(z0{Rf z$_GYAk0C_f;lJtl+lPlNS%)@k9(9zvxeBH=+4+s|-q#{4pEWhp6nMS+6&$8^OO=W( zg^P>tY#R04@%{au*V}DU0uc z3G=DFOjh$}${9|AFzpX3Ks_=@X>-zJd43&qJm5T%rP|pIgDYxa;IMyqar;JtmQ@@n z70|{+xdcWfF&+s0NNK$Zdrpk6ASI=zeK&CEr>u$Eo^I-qp8OhsEraq?Chphw(KxKu zRlSwgKr7*LIS1I|jSxZ7x!onF?CUtKrJl%RC8YrY84cKNpwqBQXurX{2S(||se-{9 zEGD;Q9XE2|SuGl0$I{8)D^j4*qfP+57~FFsNFbS^62m>$sTI?f&>R?iY)p5C@?7n@ zL%kepv535^+R+2AS9WB|b^5(ptQ|7D>o&pgG=4!=lV@c-is$K;%7xVkx ziEBsA12tD=7M%A@gZGfK_$lr5Y1X@yql+V0x3ce+^ZSsop;oVyO|DN1HQ|Tl_Y2z= z8S~w|5X9{;)^*N*HxlCsw|l5M#KH|h1y-oFVUx`t&L#L#Tz~O2p41&0Jt3QY&sPuL}Zqi%LqWZ(N|mbD042au2T3K3DNBB>?D~LO4Dzz z*SgRJ7X17B5gQc6KP=IbRBa;Z(o909u3)09*AjixW(vME3;Y7ti_OmXPzqP@AQ29fJE8O{Y zY5dSSx)UKT(yE$$F^I3u=|V@x(9V!8;=*7)vVHq z{B?*{7{940h)E+OWly8ClGD*Jw$a<=VascC%@yh?jK>f$w4%40Y*kxZ+j-QSlyc8j zk?x)G-7-Uc-~K+$xl(V>+Uqc9&pL%VU&P2~EYQ1DTQYXfYIz8NNiHuI5N8<78&FhX zJeLT5%#!?R68?*8)}8|zEb;N$pZ(N)v(+bJ{_W@=)Wv$L%&gp+u2H^8GnvNTK&mK- z7w2Lio}@=^HKL29Gi8Ac)S$d|`XOerweCWYX8Qb15ma!QaN z5)zW+#Y9&y5d=ucCrd|tKJ*N@H~bjYy3*TTKO2V;Ejkha4JEp_khy?gH>O zqaFBGi-&x53QJzl93+>g*f1PG-jHL*2jA`N%|=dk;j;_FK$n9Mco$NKbZ7;wo@pvG zStg|1#sl^>C?lh3B1*>UYTaVb2icCnr5v$7=tr6~f>}}V$tH$2OV(Mr=RvUzTkg1r zlXMZ-(YbsN>m}Ui*qARs7544|%O54vyIEVWEcx7?Uq}E}-wmkOTdZxmoqK91n$IsL z;)kJVuHLoda&sQ(>&>-#YHolFQNAzoP9m-2qnD|2_3e$B%o%Qpl6F38*F8`16gKVO z{4D45blC(R(ZmYp)-dz?x zs1HAL6QJBOdv!sr;v{(-q61mnsa8dAdHC0Ss_ZGZ$xX6b9`jQo`3!3N`;!1f6#(0SD-@O zKUp!}q>vU;r{#uKgPAAyWhP;3oDJ_qZMsjoGdcPf54Q`JVGXmM9iRuKoEo|Fc>c8; zgF&<}mw!%GIbvLZwY9n&aZ?LB^vr&(Ry~>~Yk8;Qc)H3xj(NI6`#u`y5wI>_Jh>U0 zV14OLAFe}c)(Lf^?TaVA#MX9!K|sZCAE0ZqfSqq>Xh0Wr9>%Npiu0m@x;w7m%8=&n z-V|zJJM?AJcwR5GJ#YfHr+o?nQILYDC8c6aMMcc~&O6`d2q)OyC)h@rZ&PTN^siuH z9K?hMtSD=yu|p$AsxD6-C1a^)T(?kF%BT1^%!znrEa{_&{&8q;L?wK@nZ?6G82`vE z{x^Uj0ELb7Ay<<`X1@5D-#YUw3LX}kZV;rUkm7TCluHZc6Q=roqocNFjFflCfWBPf#%$PpgjL=2RmAw2?oIv1g4rqaFne z`QNdFyxD@jD)1b=eJg0b@^um6)7zIMUaZI3Dk>)M#^8hwrpu!hYj^<8M%;Eoo$6p= z>Cc6Vg#`?76QVI}R0Drg@aL-Wjjc}?$0By5)6nXw4$;i zHvI!R{Fm3kivehHSw>xU@leWRO>{V^9|H}QhYt^;7if3eZM1&Hy^VbW%WEe zjH=Q1Jeutl4QE!r!P<3Jw=5LAx%w!#|@cBG=Ss~YxFE- zQR9wFaRplLQx-qqSQ0=cbt+t%o^JJAy%P3zURhgvJYh5Cuk_vC2&{s5YFc4A{T8tP zfAO*Y`Z(}`3I`woBw9h7|LiF6`JMyP#2Hg&5wP3qa)ym9Ed<6qT>cXUDu>;>#WrYGOngr$= zp96j!NAR((Ju8ptPWP3NE>m zWiibah)_InNuK0JTEZ9nhf^udL6jeP-% z^w%lsP$62RQ$3Z|U(^r(_09jzOh+dS(IoynBn0kVbm8JVxt3}aRx1riUKsWmRfjnW ztr@dTups4zk+H-q7dEH!;m^kh1e@bkegmk=7FesX@=KaD_PLURf(0_uD*zo(mH)(y zgDjp&8!pR4TZbdCE-%N=hU5fFS5DmMvaD;T)isfD%0IcGmaMCkQfj=~-H4++b)&MA zCXv4!X|1Gh6cOnCjw7PcSzT!hW}#LbgZSyfy|*Y>&KE!;q{~t%?u*Ubz4M?TfxW-R_5oo-FA0?}+QchV*?0B1Pry<_Uhdalh#U#=i@G^JLkWG!uu{;F>Yu`egdq~4DKtIasq$(E^6KtD9LLEpzh# zSW39m9jITRpM9mMMwfU^1fXqRSMO7srv28&K3&5H4^^rwt3|CS<`FU}V6EQ}7=9QY z5R!Mz@-Sj3ph{;nZrt`1EKbj8Sqe5^$}u^-ST{3Igc~s=M#udrR6xy67@wH97N+e1 z6JbYteQU1Gia7#sUeD&UvFrI)=skzS2O3VXfNJ6-O#2=kFhwMX^=&tXN>);S{K!J` zke_dP-NV}Idwa{V9-jprWG7#;WMpxDabAO8ZA6pE4Izh4{Ph6pbp1Ak30euz_&*Tz ze=q#rykK%D@1QRYcfZ)hJO{eME;Qbs@l?vdl63gk*cX4Dc*OCy3@cT}XsGzJQO4=) zMn&<{Gc(o=#|?fag`-AQc>aJ+kGN>r>%c(5R9^wCOZS4%u0Wg@@J|yDP8H`dH zjcOhHszBiMtFq@E_-p!m%(0puR0R$%m?o`jHokwmS#H!*z-j`98lBw>+&ISwQk!co zdW!+P3r%hYc%MfnR?ymbeNJQE;mk?1q>|Fui>=lm>wXFt|kEQ6;%kLbU3YJX~@_I&K`0&Ms!n8VEH7sH%wtWzT^ zUVAj))wj&L^eFBPWG(Aaof?mm z4F5a=O>>iC*zO%1{&^WHVDjqRM(|^^G}1f*X$2eT`uS_PyxZf^iQ_Fz{ot z@-V@S*qCHmY@`8)3F-+7UPg{HanwhwF?<4kP!O&K2{Gim7AWoMunXzB`-tbK3Vi_J zND14fYNvBjPhi7gx7O$UYwG>NmmSB>z2PO%;zrtAj=+!X!!jg1w1?|r=Qr=Kua$U* z7k9hj6IfiWI?v?=r-2sdxS##37egj9E9=5^}t}$J5@Y0cyj@0uqTc-F2G$QAtHvC!_Tvq zHa{DQqOu+&`!l<)V1B`{5rxZ_hFFHcFkQUNL9rW-?eLWJ zP1Z!A^A3ux$~4V%z&-x|b~N6|E%YOh)jMLd)8xz+Iu2@t3gd&!NLgi9XClOx0< zDZ%Ho3j(v@$3EL0D$~{2#_4RBhFLV(W4Wuc!eFkOEBWw|va|J|rZDc+Em7+^zIaPu zg=*a;AEGI)eZC_Z{YOZ0iZh2zLjy{i>k~e_@cs7wVe~WWS>*mq$h-0x{Z6Ph=eQ4L zIbL3%bR6)PIjQ{pX{mM1$#XfbRM;XXSUJYH-~0?l=OMa8pvQWd6uLBT;N--@0}QRR zDl13ZDms8-k2tt0SW!*FmmNxsyC z)~S_}+h}QPNB#K0!1ZuG0W<&uTa`+{YLp?PfkBK2dcr}De@bpsn!~f?snlu8m#sKA5-mJjA83s8ePy0FWU~Bs=;RUEhEZm}&vY_is^2-iGLC!0tX5?5YnHbGSei z9i>Ma;i*N)6MFF>fw)l!USssxM+(Fe5g2Z-;La}r20meD$|<&`c?2`o&Y2A@%8~Cs z1-$>FLd{;$Ka_IRxt4Dihuv6Fm;dqxK+i7m?JZoZ;||^8R2z79d}ugqB!CSsf8Vdj z7HeHYs6@bC405min95@F;l-Qm>>ubgHI6PjKS3Cg%K*27i?AH``rVT3S$}EYt%d4H z5>{BZ!sp+~3#fJnZ_dW^2I@U-erOa_6TgET0z3SGt0mJ6?V1hFi3`4>qT=svA~ZDA zFr$uGJ@ToTIj?L<$=ubvCbjfOy7}h7=ARy=qUMFt(XOL8r~SeIEN%y3j@m>SAR3BK zk!dF>j!iQ+<3z7!D?z6zbAFpE9eG`GYBV_=Xm#5cOnlU3#}gM1wcQAzki?uhdVn4Q zYn1Qg1*THRF-Cp7@&aC8IGt~Q0sEu`Z*8T#48IwhS)uc7{NUF?+-RVFj(lTlOdtL} z!jP@86uALCeYi$7pDLTzOlao3vB`9+AN@)Xl)h)_?h1pLhUGySKT5%X0Kl7M{7<%w z&)O})=%ovV1FXpAwa8eq>bhP|O{q3p^U-7@+;U_~Qt$gQRncI#u4()gKd-MJqugz> zglj)udM?&agw$HCw9p#$wPU)Lacwl&Rp!*bp~Ei}iid>22FGKL907eR@yCuc1G&Y` z`msgsaHR~QHa2$=fl)8qLA}NAyE^ZI$Zgb~@LnXn9mB5qslT|qebbJF6B6^-S$mv1 zLE=!1JS|5D^Z3zXr4@z9%LQJmT)9l@*LHM=?WBi|Y~;F~xus<{AX^E_g!Z3synl~j zRfh*~BEUN74Zl>q59s{o)Lnu%i~i;;7^3%n;~g*E*M?05=ls9dPX3O}|2vQSp2IO^ z+5-Wc@$5g=izeLPL;nUS->6i#n+5zZ-kVhOc#xlQG&8fSJ@mLt9VAs{OFOB8Vx5?H z04seXF!w;WZoJs&h@@Pu75!|c0^~@B4w{Hj^71-tfJ$y2^4@Q;%F3%73plvSp`_^+ z3+aq76f0RwQI;(&Ex7PDyi)~{yc;Zn#U&`S&_0m0E`Yf$8R zJ15F!cgcCEordFEq>|K(x}#&BMwLZk|BmAIp>r$M)F`)2zpH~-EZo45h|nQ4Wt!5b z73*$NjoO~az4dQdGnUxjy-t2)^CRV<#t| zp_b4-D6ccMi?YxpnDtA82&E)-^r*vsDqzL@&@8K7`1J9~ zb*Z7(c~g>6AEqK0OcE_r9;(JOy#^ zPjVVck0S!Vc=v)F$^UD~~m# z5n$dR!~4MW+#$58GZy}dlVkp5E5-U3@8h~M0GXx+j0zgb`Xq%to<SL9;5`e@BrrxAP;9Q2vR&q&TcT;x;S(17E>P2hd@Ual*!_q z?7uafcb}%cQHk?O_x8)8zl9e$z6^$*TqYrr2Q04~HI);{=#q$sabNojP8D7@9;@ij zd6u6AcY{a)rUrWG+Mp#7kI7-zrn=_W&-x6qLO+>uAqaH~fu47lDLUuc4^!GncjM#Z z-85hA>BMyaON|QGH%IAi*mc$`J#9~SbT$vS7w#PnmXZkY$8OxC=HHDoJh32AL?T{V z>7eX_7J5)?73^(w0xE2K$Y1|dSsgkM%IBN zgN-EgM30ZhL|>+ivC$+f<}P3vL|oou8Qm@I>Jl_+Vp_52;cR>2UIq|j2S>-GgWNE> zxLv4KFaf5}3l}31OiD6?TNn8xa8Rq?(n7VAOz7QbJ9K}3P<#($j1|AVt<{;}09|;d z1J_}k@=UsbK-$*2u&hVFDMeQPiys}g{j7rENKEK%>W2z+*w}Fs>nGy*rn}>?6>sE~ z;}0C0Cq9dibr7k6?CU0lK&ScA>%~K}{SsPX`9OqjSEpI~ADgZN;tuBabsr%C8yjzU zn&%?Y*NAyqCafcop6iodRw1-j6)tM?|2I&uS>DzDQBntyS4> z9p~)JMMkCP;0P^5hF?9qSf2!6ZM-c&;eFVV$)&ulU^m{{*vOQHH#~OX0&Gz6YXGiS z&5Tx8nI`Avd{2uFHZEU=E)xNtF{&p#i0Ds|#OG^>)vL92Ig9@{$Ll{eKL4nE|1U3R z^;)Plm_@PWWm(l`gxSpyiE+P^lFxvwvn}D)m>CdD(*b%}*mP|N8#OT4i z9KPtFByxjizCbC=W`U(*&!F4a&*W=LPnIx!Ib+kH6kYzoMn_JdfG`-dCNEHwbn{@{ z_UDFu%=hn~iE*O)A*c3wa;a6XLb@xPDurv~@sx^zZW$#>RgOlv=+G{^JqK|c%8`zf zIO2h?iOy$jdepI*Qi}7IfKf5sarIU2C#~mOfmR5J8V$2riU9=igiHz8fDY^v7d*8a zBWX`8ppa-!%n_-Sp$(sXysicz7KkpyCH_p6zDL8$OXOI?JX=``isF4_qonE|I^l%q zX`VCO1m%IYE0z2=<QR$D^(VqMK}9jr_(MS7w@Koax z(>~6hOOPVYmputy9H1;yE~31qq#dUgFLujk28C`IlKBHZH*%C55R6Yi^-DnHah$ct z(+-N$2M|UnR(DnvEZ*$ZG~dcAMGclmoitP?oIvgcIP#*l9G06TY{L3~{rqdYDfSyA~BfPqlgQ?$1@WHthT#@ zt`6rYnZ`DsDbpcR6-v?PfUoQ9arZ+FTWcMB-i`Dd4$ByJW47}zPTBT#ccaYsog;MT zTn;5bTTN)bw}*FJ`gBgyeElmdKeQHgy3^G2<#s!AOH0f3&4_noLIT$P?Mz$e@i9H1 zZN8(Uq=bdfusxjK;$G=~MGN@hYG;%M(LQe-dl%2p6rRC6PjhB|<_Pe-x zjQ%1-(&Eqdpl#PL)JQ8zW{QFJ@GDB6-8&{Wb$NOHqBQR#_Z2~4rgVCGn(Jp0;%Zs* zT%ov26mRUm+WnRM&iXPjh9JB|)_t%?8yu!{I zXb=8^FT(?0#fopAoY+>isg`27M8f5E+}~t7A-D9r z?D@4#2wG2sa*T~nzW|2qBsYTvk>w3efc8Rih5Lxr@2&V~c4Z|crJRb)XR3C{qq2+z z7bKZbL4rbEKnM_MKM4p30QVMF(yx!^7?MPZBhjd*>o#nIrG>p=`Xl&^GyK{QyUJ^J z?7EdIJnFa)TvAdQA{Xm5qvvxUStF9L%`9G*mwOR&`6pt9&GMwi|8?-WRNvAL!+&ev z{QrBFe<#=Sy)eox2AwAP=tg_zKN+V-i7Hy4D8GP((P*>9m?_tW066jM*l$0SUQEfx zFQ1;Bjm^$}P~>%91CX>2-(IB!jkA~X`XY-p8xE8B;yCKnWtGAc8;;yNDSqk9c z8ucNTY8AWu3wB~YH$0u#5oWTxzItTZ*NHX_K_h}4uhg2{#-@0`0z)0cwzonb-mqW} zRgtY)#6M8TT#A$~Yp81Y5MXLeVm8SVkJzd;^Nj~QQbd2V*U!MG;)I8-AOG}qcv;t; zYl^RY$cPczqX+uP%EY2`wCw3}e*zg|pVZ5``!%KfNB}-i0&r!&Ei$t1?cH4I#0Pz>;V%r zJl7u2^M94Ka!c%2<)J&Onu4#Jz9`ClU6KMWH$sU(4m=t9Yr20!GN zk~>=2qM6W9J3UXm4Tk0t_b7BdB!InjuX4_;Cc9|TKd2wr+RH)K!bQ$%WJ5#6)eyJ> z^ff0D)RG_;Mol1#Slas-Momrac%A48V9qlKl*!jBRMz#ca$TTY%(mEL|IWRDv>xUQ z29>C;o$rT@9$1dDF%INOiad$M>Hv|cM(J)-jfOSNvcvW7Oe~B6bSDwD-Lu;NCWr1n zm0n7k#F!;o7ca`!U?;SVLFqC^-@h$>wu1%O=E$h1zZU1JuD91^HlSVrM4DnY+sHwi zh@=LpE-OPFk=WLtGCf+T!ww`YS8%E+QPnX;0khs`*HBvP>XJAeEnC)Rj6emYq-ww} z-h0#M?azTFC1la>r}w4E)fbW3)@%Wuj$|L~IAyhCqDrX2`^j1fR$cBi1BjvtvSz(q zv{@_Tun3nk*g5&6BLRcf&JCa5hW`@ISW(E45f$1a!6hcfLXpT+q&x`10M_c(_G=bQ zib_9cag|Y0@uyQ^tIZ{^wHVF`?A5*|=r<5Awv3X9KNCfU!NtjK$kC=ujas`cUD)2m z^WnuwxZ`)_Hj6xHklO?VGCET-!g3-EKhWCr=~KK7UF@wf>@pmP_C;pMeWd6888&w; zhFfn)|BAm2nb5Yj1}*KmmjhaO2P;?5^>sicUGE4ZbSOuLCvY7Sl`?uG4I>47lu;cCCxv>M=Vew&39?n4I=rPTQE6%ERx@tM=U4H*nr;TqUUGZgZ6u2$ z_!brw{fw0%41{RV84eUkS&=LAJVB)qFp|rXX){J|j5QGiqLu@9_GU^e%c9DvACHxo{&G7-FQGSja)7+xsF>3Y^~S{!~A#k+W3c z!(RpoTot7O+>Rf-Dr-*cvb%jQ(p2T&N+E4~sicnW$n+OiZK9gc&V&6bP9QAX!z-m8L^wPM$f{>)1|Es;8~2 z90iyi_0>dU8yl_?wrRtg?Cd4l8zJX-@d^uzNX0u4%;tf?eS?Y7(Ju(zbZ*-9v&$o( zsJbYgpN*{FbV{fG!?$VG%NM!f8`C=O(i4;SKfuO+o#}OQ5K}oE`#nCY-g*BApEjbA za-a3DB%)&PdvVM>P_x^W3x_$8vh6 z)N%s>b|x;H@rik%#>~J5k<@jnZ=pjR>oiy6$gU3@;I{_|Bte>v(is#r+nyedR@7fF z9l8!{fYU966kS1=N|<`y5eOo=jX#tGq17(FJMZd%jwPLmf1S?&-(O$%Tmt98nbpm< zshH@1`}x(|Y2RlS==XJM_OePE;k&;C-iR`v=O8%eWaYy;#*^7>aFD)C5pF!uD)y)# zd~t44wzj2Ss(F3hFLjOAzYRrSsk1+<@HkIAl)^Q#mLa^IoPo6ZOq;xY@`AXQ3&qoZDx0kDHfRdiU zc4El&bdSAZ%T7sE49I7pfFcP`D${^omSz-VM$|@Uei3BqNPn(j8)b05BZz# z9|0_jk@@=HWO4iz9sYL?Sj3oZWcI?Mw9eK2h(c*5WZtH*-R!Uvx=1T_ai%WUP$km| zu_cWaV@pE?uNL`&5%Jk7w2SmudrJukqY$j>?$VivENEd+Qsyk2s?ti)zc197Cn~rP zbpRS5fcX^-rdJLQ9-bg6Ph@>S9wR*DTMAj$OgJf*E9%Ck+G>SS7j1k!V_s@$lp(roZ@x#0Xyx2a-HGo z;iX0ELC_HKSwNnMw7T_zICY;eYDdC%{Fa{c;cpw!ga;2`zQ{@mtPdpdX17fsCw z04Ng++*e~ya2q<4P+?g40RwlAU$CG#5_{`%wA^Cklb)5u51>c`e6&3F%i-dR4yBQY zHp`!8bf5<987f?%etxiwCj7t<^PB}>OgeKpj8OcX`N#1Y{cfivQF#7AfB%<{y9Mm; z`VI~+y7!&UA;P(gqAmN{;H8KFW&;( z`>-F)%_h6q(b_LC8Nb;@scWqCSq8*C@5#o3+7>Xf(l{H+;|-_m<_9!A@gr893Z3b5 zjfy;NZ@(^5@y`NF6Olv~0-BEOsZMy!459#AK`6+API^y<7%S{OwLjP5;dWR1S0Zey z#hy8Hnr%EB7XIlZ?&*r6Ag!~rv(;}M0!1yZE=KN^pj6&z6&8CX9xpiGTm=?@iphUv zg45PE7aTTpaE#D-HJtL6gO>6%8Ai?Na4`@tAZ`;jH3c_tck10tqfoz!f*kJ@80R70 zT1%0gCnTsl7v~}jsqGlg95}6QCTjD`%VTJ{ZW@BJ3Rvr-v;g7mYA64`Z9W$B${r2! zzoO~vHIR?3?=5?o|K&OTqZePK0QP1*@$dgOQ>Iqa;c#xPT{{beT@BL$3pMLzJ-c;3 zN)t9Wr_%C%5J49pY6lbxf`WskOf?$8UbCwf(Au5HexA%8DpRS3Xh^&^Ie{abOYESf$E7odCb0VIlvemYrJCfa8 zk7wOt?oUmdy2+th#i9p94Cp*t@B8=}Lk#ZSr-p~8{T75cE#-J<6OH0<(T8|Bu^&GS z#1cvj25M7n^zjySSar5L+TBsk1Dpy}tFWX-+>VBlRfp)8_?{Ec>*$;KgW!{$o>9z+ zCzMc2C=FA_Q$nd*9u_v`A9v;B71$4R9379G_m=HPZZhmI#qQdibDAAj!!3B-`1{S? zmPoxvFd4y#`5L%gNH{7#$;k2Z{QR6rmCZbP!_cs|hzyu7N+)b=*93Qn_}H15ntgj; zfMmFmC4bsq+hQh}sk9sCqot^+-}8d9s3;c<7E+sHs$Zv&i~+x&hYry>JwgpO z;$Oogh4A=MWu`8~O{i&U6S&=-27q1rO+aFCx1&+~i1j;yW;2s z%=LacFE0=GhKoU|jWFdUU(mqdAh3UI5b~vbKq8SgIyaY;48oE`VfA$fUx9yfx~~!` zZ+vq8-OZe7Ol-o35Zg~N$vDPvECt^#no%R<1#aq3X2b@sUEa6mlWQcrA;T-6fDEMG zOPX3Vl)#<4v153r#Z0Q_f;VF(KZ+4#TevDlOq!@eBs^Um)6nCD#QUk@QhB7wH;p8$ zrs2fILY2pVpijrwBZbRLbjg@ddlfeK)bEU+G!ak7$#@x62P~RnM)eK3%KX^5&JkheC30$08uN`lQkKU~qC zP$`$i2nH`#IcX~?kzY7Evhd{e5%PHayqzs6kz{=A`X2siw%&G~lWB*37%ycAAG~{N z$yD=ZB<%g_OE%a@AK(izHS8gbr_Ra6EWv;KuK4ncv~y>oacn#SFMi*{-@gGz=;dmJ zLt&R}KFkk21Au`M<7Q?V53H#T02RY#0k5a@<-r04Ku6~+4hrWTi&v{`{c0alUK8Zy6S4+qDf-3P_7ecbAmZ zzyN}DcZX6U-CY6#GIU9Imvom34Beed4@l0?@txlHbKTeV*7v+GKVaL~h?(PD$BKRJ zYhR@mcCnE}GcJBgQ3P}OU1`b5tb~cX&8~;o149Fe6_8h{AZ~+*-*P+*Vk)NyV+jdg zxXpbV8OAu(`b2w0t-d^4+1BO)mU>~=*s~;PPeQ17m-J}1uoar7?A`=TeKrXpF9Ro7 z&C-%#pjOW-zK|Y1oESobkS5QZoj6WE{V?GVH&-hp7t&!ATk@Cq+_3!8kQo*WhSV#j zy^^E!IY_AWy>ixT_l%35Ob`~?5F-zIkETDpjKl9n@FcMKs1bu z(p-=0eHYaAT0SII=y%9t?w60OzsA;H?FAC6KUJnp5ZSEEOQ#);oP>o0g${4jq_ zEiyGrBU(gXhVF`Rrz9iGU#&MAG4O7`SJtNWc2@t$o+>6|`QgfxLH37&5YNVJMHuj({z5; zZXLcyGk4nd#5l}V_FP8@Xe~X$JG%dDX|6g2{jf`=NI8@BDxp~R!-ulCPyK3?l;lC> z)TWPd6GMQqvw(8Ed~3O-?iA3s7@}dw2Q-hSHjz#R85kD&%m^9H2kn|x7(G=2E`NqK zWHFQ>r!>~+?F!T6;kgm}@?4{TPCceD*=k+J9!uWwb7vk0WxApwze*d?o@<0D1 zu_xN6PmZF;SFi;l>MTi-(BuvFxWQ~@h&3P2!Q764Q4M0FMct1H*<8%SI5 zdRlBgvJ4rD#}_dEm82-_PaaZ>Cu?CwxonKWrR+2;tGs*6@0_c(g~~(A#~?R4S3h{E z%^*29r%?AaJNTePYe7xRz^W@a?g_1gF+IzIZ^pgNq*X1?B!f~{Tv?VkVPgHL-{)u^ z@@jhPNhFrZ(Q5(dq_+(7uYLGY?DH@mITQ8am%$5L3X^4M{&$6Q>lntB-iB7E$u?hS z#Fpwj1vxpY6H#T9p{ZC5&Q&Fvqio0&SCJQHvV+M1z0}HJ(qK7fUqxYe?$1lp%dV+~ zXmF{i6W1*2Dd#CrV)4VS7+T5ANM*{jYOr@vRYelkhn%+$rIG6D#teWoptf-$3H{k} zhHWapT^hSy?Hl{{6X}7mv6T7d%XPALp zX3c|xtUm<CQof|807viPZS*KXAhiur2govT>_l z#r{UdYt_=?lNMZSv`YsBZjK5I3N)3oMeTm{AFu!Fjf`Tx-BSsW-yX?i;XNImF84f?jS+?TFY{3f2Ik)i#$;i?Rq`^ZetSt5QdHUeAxl)-k zMi#d6*!acA*5g*?Gx^*F6O0}9YR)XWlKL|Ige5nok8{P8Fh{T$3(IN(bq7?(7KN-M zc(^5_K5iB^dS&ZO`a^1``uBwKufW*YC`k=b&b0;l{&o8W708|zSw@1=9M+DX;HnQmGu`=p zt4t8SDHNBWe`19lqQ}77c1IvnZ*;=uv#O-`BxGhGLxSM`eQwIhws_W!cT4Rh37NVb z0UUV@Xz$GFkgK;4I8l=YT_>RB9P?8~uz(F^*@yJ$DX%(1d%KC-85nrPKqKMl@QkoX zfipwe9Lov$(bl?V^;`p~PMzpf-qG9)8~-(Vt)S-=;H!r>rptwXOn8Ew)!#9&F{m+? z2%Oy>U=QhJG{&?~d&+74@^6nH(Rli+LS%9TAC+>m&JQUe zubRpBETR;x)CpwR3pYYKWRF$1;&GEIy*lj|>|Y%27-~m?>Bc!R-V68V3!OSmRE8KBDpPdQiyi!wI>Ndf$T$3s)-nqzTSAzQ+uI|y zg}}Vl?Ow_%@`|y~7)*mtKT~=Gyk3NOYS0C(#%d+l(FQtAd>?-RhG3 zH4xm#+9rltoWjw@u_^A92`&st+N*Y}+x>E7q_zVCqwy>WOha^3K5w4XAN|;GL6AbI*88)!gbFw3E>Q2vi#x;v`q&E{K23Ys6e6DDJiK*D^{emA zgv0mcSRKYyB$a8)``(3T(AB@@;&&pBv^er||Bqb+RS`5Rqsv+L*Y3;QasrhZ*He5z zojDPxo63`FK@H9G=5o=Iktx9VkzTW7E=N{Wh_5Ht8S>Pp@j>-mnrymzZ@nnDBX6y2V z(7m9H?>9f^GlhO!j4X}+Q<1=h#&0`M4b1Je8C4rJDFY-ODVe^1c<~_asBTBKBy!xn z?k`RlzzliP+0NJyUcjX!5Hz??*rS@PA(keS9Zc=@%GxLt#wAB>N1_7*1KfE}Da%$c zoW&=`P@|B3e*$@3!&z9^*b*uY){+5op*9X<2A3J;Ek&Mg(bM>ZM9++r1O^XwXiBMG zX|3hzW{`4L|JoyzN_pz0S`Au{1WFEk4>E&7X}Kj&1x_6lPUpuClf_Bh2Gs?tW!H=> zWw!CGh|k9A8l1hoz0w&62ZTMbVsLSc1pGl7CDI`EvDnsrqwNa3-GJ)^tox}4gvnCj z-Qj_l5~-%=4dISLS{NSm#Jdu&ek%suE82VUg9EkIm4P{R)Gi?d>lIke;=R9RJbl^4 zIV9wSheKE?{+Ag8n5CyZW1|K9Nad)E^J)IoXDYnc6#b7j=(REP%#z4SBX)9(ZS)#< zoiuTn$wdrU9Vl9%N0g{vIJl8cPv%S3ywGusRe(FP1mNkapu~zT&u8na4 zAHL@JT64z@qcwL4-+}A_!^2)exmn|Do*Qm_f|{iw!Ios-w>HfcyuE?^&^H*U9`&`W z^f}J9M`~)QFlZIRK-f%r0vVG$(_6pR{(&vkga-1y>(ln~vG)lQ*U-r4Fa@@^jY2It z!t+c_g2wqh4h@Y0Va=1jhd6s>|c9=3ul30ES$*R6Sk+sPQglN zl?F}nz{aZCI{6zc3tpdd@-u2Ke2Zr%UR~rp7>3#;K@jhIow4!^5S^5i)a)uvPBz#_ z8vwn`c&yQ^CK3*TwD&s(a-X!-Xhwq*!5vqYjIQvXV#eIcYQGOILgoOsisv5wCXn|$ z>eq}}FOI-6wG*hy303?qqPhQ{mG%FcLPK!TT-$UcWuC6@LiNU6oJbtLrRW#dmi3*} z#!!M;iC=S#V@Fi!596-4;@%biXpXn`buy+}>W zd`E8_zNdx5F`2Wo*k?I2lKKuLgpfCM&|Jx2WVoK?bFz<#l8oqh6I_=3SvI^QU2eEN8!EN5rF*6tO)VWOk3K{ocnwQ$yQ4<%hqEEP` z^E@WaJQQq9v&!w>tJiwvlMCuF%8Vur)_i;Cbz~Uo^}4#cTA%|0htMafT-EyD*_AaJ zQ3Hsqm_mP!Nb)=9GsUn|gbI z=$%S1nXWmToSZcD^Sg|B1MG!T#+Txoqe#23p*#e5J!q&QhiyB;gs%*Wq7sIzlCF9UDUTIxzm_nt)dn!lj+&WO*o97(gl zs*N2deEMsIkb4$#WuStJ1_zi82BZKHT3p4%A%M~XDg0P>nSsOl1G4Y85JiUfOa`qq z_Hp<3w2n2Ve#h%QY|x*8u3ZuduNBnu&RCHOa~FT|ax~q+UR5drcHUmQt6)rBSR*Lv zb^7dP<-VJ%Jut8n;LI;EhlMDcN+Nwn^;mZ5=TfX;vTmjpU&*BqxmX?>4n&qN!?0z| z6!DtG*08X&ytafovT&({(Q$nwFg1I=;c?XAp~~;DN(&{!9{u|AWIdRQ`@0wM_ejI0 z-IxPl*Ygmd=NaOpYGIKc_u`kuT`;#)tG)ll+-0HIo_)X*XbbJ>AuOsBDAd_rbBDiy)KDMz;4ks6>JqP0tk$4Bl~R+r+%lw%KF3| zjr15_@CB!_tuoU1o~?G?>ETM7rpHD+X$=Rr%ATj^N|8(&X&I+lfT#y&7Oh6DdLmMW zJ=&Tl!*%BvGv!7&uKW4K&t~PP69f@69S8i{tqkveg>1egoGQEK*=mSV*H~koaZ^%P zTgnMJvlP;qEn-_5_mz9XmUiIR95*-l>7K}h>3YZq}?Iz zGT=KQawXGrAtRr?s`?CdKNj2Og^%)3X`VU@JBx!ybk8as@-2BXm)ll zIdw8S6n(R+14rpHw{P+sRJkGKl5Gd%n!9&qf8URFjCwi%&U9zK{YJ1$j?AbHtk3{* z{!HP3566e2=>j?tGW$vN$+=X&g`Dh;)nO+8$-$-3QOE>3OAC$&Pk%*nmcC7SLYE;~ z`;PZBopT&7PycdQhX3X9TOl`CVqC8O)zD59Mu+cJlym!Y2vZVRF(;z~I&4!>OPitz{hvR-90W!dXPocJ zU=$6V;L6AsFB8KkeO2RUZoEw->byn!SsxTQJJ;E(bOs8qax3xS<>SkuLPE89VkHTJkb!Y?j0-dG@+(ePQ=(2MmsLRbrLoLe=-?O9U9l(+=l5OJ~gHvB}`oTTu7R8$jOCkfYbOp()lH}-C!*l z&4~q7cx9-r!s*}9I^J5romacuQ7kT;s0NwJVd=xWJ=Gpr@d=@Y(jr~D>bY(Th~E0u ziE2v=iva-sV2=^K4ky{o;x;Q1!U&IwYH+3+gx@q#0Komzr%x@mhxJb9OzvxesokNf z6`##N3ua*al!h#MbM!;B?$YF0fpRaK)Ru8ifO zzkM6<)AG$rKa%i5Zv84Rzpc?UNCr}cJ7F460Q)hC)G#WJrvbZU^i-57&1s4(GMybC zf4_MKb)B;j{rX~=$l$?rX!`^J|F__KQ;p)IU=-u;LYB{-z0cx-gKFlyFfL7glgoA` zs$t;Y*3c{H`Rr1mz1PvL>0k0-wt+FC3kF~4;yh7Wl5QKMFjv7al@>hX5f^LBN&Vo;q3qV{9u93XQt!= z&@?G1D;sP#l_-G3s3b2hi}04Dm~KSFf#6osEg+#^o2He6_3{Y|DXVW(CA7nz$!STrsQXsL z1&8UKiwIHRt8#A2|I+S4%;6ry)Ok@(;Jjk7ZdQxA$B@$>lU48;A3B*U{iyV#^1SP+ z7y4R!U!m?i6@S=P*6dg-v?QmXz-=T$zUrBi??m2C`S($F@5-j+B|dc z+c&VBNC=(oe2kHUpKvnnx89AsP-9liZrm<=539bPY=_iAg{OmjDZ$>;xRb$6$6=J- z7>*G?2ynh3i#nwYJasG~TY87xE62Gfq;VbrZowkdx3Ru*Z zYu+xwux#||l#{rxw>KUA9N3*HD6+jHN{e(tKGp@ypLTOwAfxirbzu!Z=KGM&pdRW4Go&?1-^ObW%fN? zB2(r9l_E-?VbLiuSqmDpv9qaTkg)kv%Vn!*A;J89n!QCiY6uU#BkE`LS-33K^-DF7 zV8n;_bZR&_o{ng(5=a*$T5eJ5Wqqvf6m0Q2YhbpWp$`QmyLm#?uSM6F3uRz*c;B{1`JJs3|v)1<>Y$xD(-z<$@9)ol6axK&uLzh(+A`_KyEKPw<{ z6CnTfHW@$j=to28S)4mqs2lmEqr&TVx+!;d|9llI5+7e&^~a&L=}(mM+QXKw#n7v> zzYbme0zZ)c{w({!Fq%S`5tyy#ne^OD-*B5EV9W8;ADuP(^+V)sE*}TS3j2o*hP!W% zWT6cFkGq{kjPZhtEq{Id;s#7kHPo+A2RvK=8`u4RVp#^IKU!UV44u`})6-#yI5V0I zDs(uFkn(A#^(eaR2H!Wn7O=QDSSU}g-HD>E0}_V#ST2!pbIuNUeB2fdV%?fAM3*70 zxQuDKU-U{&4fe{w_FMzWq0 zWz{VqAz>?8_>g!C4GzI1;jucjZ2?NX&5jG)R1|`Vb4>hT5QxGS`~I>PaOMZRMQ z=pVhEe`dtp)HL|A)WPr;WwEJ+Rhwcw++(Hlj|+9cME6k{&5?%lHr!e$_vTB_rMIDB zhF6qj6l{YkU>fSGQKVQ0w!&}+`Ur8Kk#2Gqgj%GZWD0mx5saJo{pP#6Si9FA%@*Ty zgDoWaL3sEYZ@!&N)*{CB2IN$d#oE0(z2B%L%jvPu@$F~X|G9_^C|ff)>Y8e7Vm>$F zhV0eJbwr;F+Z)x=^k1ebKfimYtzES2vF5kUP5SE)xLAoH>C;1;*EZ4J$Kpsvy%5aQ zQ@NR%ww7M>K^ ziUfp4;3i~*grL!ty=FYJ?)Ii6Ly`pR!K_>Fy#Df#ru5W+I3Fzn;pV&vB`}cf{bpru zDj8%pxarH_tjxo+1F&sex!pdV|0bE0se79p7gyEAN!*hzn(ibHTC9Y6jYvdW7#JStJ!O@VL(4cJu3dh$&Rur|VC5x$3dcqOt)kRdNG zzX`P7J~2EFX5Nu?_Vt_{>yQaNEk69{c07tSKuW7qkQ=rd@OHD4govoTmT80?cPiO> zX_(@Ru%sJTYRpnHG&cTVv+DUi zv&8OwPEX!|GKx(VeXdTo)Kyh;e13uf&V(N6owbbVI)SNJA{b~L8K&m60>Tk3>P0uC zz`*`9E!MAhSa62%%w|<%xtrYRL3`+uGe~9~zCZEK?XRMf{v`z<1~*fF}D~YQ&8FiJ<+IK8gT2 zq#C4*@xxiPn~&ZnyxpPwq}3~Nwb8CE%IMMn17ZfSI9WW?w~rp~x&nGdI{R_sm@FJ` zE&?7ZZx21X>Rw6K;vic@w47}Z5USjk4rd4rVKn`8@OMY+LqW0i_diXDDdomwzYr)v zQL7ycIpGg8or3;X4JGwwe{d~ucicIJGJDaHJHCEZRW1{tfLxELqWX45PmrklkNthJ z|67X0^=I+TPD_&w*zcR~G&s8r0NrWteotsc;m%{B`Gmuu80>cqiJO!pr6K0f{n~w= z+|sGmq5E!qY0lBd;QD^mQJPxY4Ro5M7-ls$Q?4@rJde!@;un0^PA`Yv*3!Q%H>sP?9ZBR@`Fda=5s|?LnIt<-jVI{7E&pxQ(LDv8cMyvF1 zWCHfJy@%^3q@frU6~G_Ql-@4RxLhG*e@x#)SxU!+hLJ=6jBIJPF>Fxv2fq1|*dFkX zgF}$aLcWLLrCYg(4$MFLC}c+ZtVwlRf;-r06qtIRW)rU^{gu8w7#XZ7dQb9KX!xJW zH2+nY6O*IS4lo3t^|EzMHm>=~4b(L_1Clgez^Z0|3UpR$GiT3>uU}3%=EbOY5zNcO zv-x7>D66=yeP<+{4d7t%zRTRNHi{@;BQe6r;SH35%Ox(MgRkF+2E zinJ`rEi02R`v5DbDb;&v)Jfm4^*lZ^joOCjIrLlULVQ|y++(J^n5wj&EhLcuK5oW= zGs59~Y*;#EUL9d_r%#oOurR_M1RQ<+nKRFTU3{5(A$UjrJ-CFnQum*PTtVDd1k4x!hc#CYA{eTqd(S(nfV{?tSK6;<2E)L z{I_(*lYy|D%=C1&i`~9&98JsbA`5;xtO&(SMPZ5*j{%J`j0yZg8Yf9dyvR(S^8@bk z1snvTRWFXdomV$V$_)2KAf~6VioE=*cwcL4Jzg0}Vm`$Uqh?jGxp4e}k zx1GgT8#f~(N~gePm;rzZIie~qDH$yFU4q*<+r`CY6Zm$6Qugq0MV9}!Y!5W)=O~`w zo#THcVd4R_-GaF#C9+&4gplr>kRIKz8k_)N%-@~e94Rl}`a}&b4&q2a&ei7A+WQT47$J8vlV9!;SK8*3LqspOS0K zI9__m^;@77SQG%Ci1F8a!LDn1$9Pu?WCQFpv9YntF5ANm`StahjLI1Wk7HnpR@KeA zH)F65z{ts$smwpaRw0+VTBEv|rz@#|vneDYL(}?Z|V4!rUM(XhtG+^)ubSL}r2a~Ic zM~kZ!sxTMmuhRcU;koAYKfzi6 z@LxcEQxb9qt1Vp4rd$3_*+FML?f_P;2)S%S09vxbCo(@- z3{MA>ns=e>CY^?rRioSvhtt1nNQvjvlp#_Q0Wn&OJ=hR|OHm%tg12A$lY>*&4*es& zBYj`524cC*Nv`1&!-U=tPfb>HCo9PTdvHV>958TWfC)|}c#>R1geWD1nG#0q{QOGZ z$V?IH>G*X=75)H0r%ss?BmB|^Fz!-ky%w(j(gK*Ib*`+bF>bW?YXc*oovajQnIJcL zK&*g)jxPVsAs_LPo8lDEi+sJKJM3kqwatXW zG0)!(bDIUAXX4eL&$SJ;S@;?dwKWaKqsf{BJuc5{eWj}k82jYBYhi*>8a%1Nf7qAb zpCE^C0kaG0rK_WOMB32O$fVl4aTX!9io5rc39r(!oZA~W-nhuux&n0jpPzbbEr07z zrF={0_3;hvpc1YShyM^nIieF67I%1RB!S($4CFQHs$52H2>V1}H^>?*X2+ZUJgsdS zip&yJbX?uF@KFnZ4=396Eqsqjb%OBHfBF2`*@!DNWVNIq;uYPGg5qK_Zi1&T31vp_p39;p42yUF^suvAlE!$W z8BR7ZKt6D8#8@4RFZgNdqcRlTDjMjmu*5Yg6J^=B(XL2C6y)TRUum62Ykfo_e*BH^ zY8R&{QICEvng{dJm0G%%wklUm?un_=_3?p$np$bPnij=is;lGiy*U2)rF(yEmD=f> z{KOO;W<8o&=ne@9;o?w=Gb1>|hZOWZOeFL+^ir0vSv=>xx-(Ki%ICqdbJy){b27@@ z9_QZG9HX*)?6R=3TKa|mi3;jal0O}JKj_h&>9RDDN1x_ho-#7R zk({Jy_u#37cC%YcX9ULFOrRqU!8rQlKA&=}+>ReeE7|?~!<*%*RXUDb9E}(`-m#B_ zJfu$*fQqznMU#%b_N_06h^GM5>({T6>S{i(m|>=`R~d0}_94VCMo{^4Z|TnFQfwxl z>Y>}%pey6T`7_spA#ePH4a@_5M^Qcia0KC*?bJJ<(L}LGmmN2g@g1u)ghBxFEr5AGWw?bV+8lNP0&xZ&a=%(@9h% z3ECaId@Q4#S^5x zFqGWI^1UO-^(dU||S;_93}8#zBKOHxR>@%gVnd_~YTooY4h zzFbMnW_6nz19X5|Sk?i486qT+eBM?=%BicaBXP59Z7e~7eThaM9(FFi+=26hVr5n$ z^`a+E&`__wiJ>bTkVT#a|8Ek=lv1{is3OkwjXUG;WW3fNbSi2QXVC$H#^T1 zn68j+fYqgEFD7T1q9{>7h!l~>dSiSS^M*2qS~@z`V&ugxtDCrf+=yuBgQL^@(Kkit z2XSi4cy5`zzmpt1k{_>PUgh~p3h#8R7NxjT!FZiyMjw3%;2F)}%AJ|?Y^aaRvU&6? z=FkPov=>8;8p18+Oo%%bNuO`;BFDl>cK$fC| zCt%YBJ~uJ3@>oWJ!a|g2+co#DA#>q|>WW9Yw9>2@C;HI;qp0JnX|-g{@u59-Y-zCx zubU%wzK*WB8QsT1gQSEYt+2=ol-JgNgaz-%(np1%+AYdBt@o-M9nB*A!{8o;dN>J=ky~@zC-Y5y8U)cc`3;Q$PC##7AbNc zGC)*N#pL-fPVvOWHoL>6^_AX05f+pym1EbQ)A~Y*18Bt4Gexp)j-c*rLa)>p0^sI8 zzveG`_Jw?I{}69{cO@^NBLdYkcZghPR^pdDKii;9m8=pw_SJJEbhBGZOtU55PCLuw!t$38I|_ z6)%pY3#9Y-Sro>%@o~~n6>zUd6m!c;n+{4mPhMeE$$A%XWN!?xCMyo^&mA5-(DP6S z?-h5Cnm2Ik-YNPvxHZ5y8rA*p_SfcrWH}ct%aK{&Pf7{#)`a=q{=^HI=g;Co8aF|f z`T!%bP$G?{1b;|=t9H)Fp|~kDj~3kA{qEkbsd6gxZa{mLy9~0rVBS>+cMHW^bp+-D z){wJ-CRgdss+qQXK}-~ihG#A$Z0}qi*JcIjoASP(>u3-#ri#Pyc$jC zu8YGa5>EiYVFM?lPOKdcI4nv?qCRG+q7RU4%vMz70gq!0_RN|d2dasCeFO0J27$hmt)YM$>{-%pJ@B1j*ba?$P25+v z{TFn!c?arh#zitMiDhvli%<8~Z*r@dVju>|FFRh}Y(LU>cLDt%xeFFaw8>cay}gV$ z7o)?A`yTg0C9BZi_bh$wp#CM-p}|4(rACiu*_EI0bc0B~ zIF7Hf5cP>d1c0;S5Ll_7yl#u7?{j`Q#(OYziW5M&+W;W)kj}>~D|&%B*A3NvBYhvC zoG5o7p0E?_jdA>4mrg(+!{Cl)1W1b@_P1Lm_ZDIB5D#zXs?yR%?^8r|Kt3uBSHVu4 z3}ubGW2GR=TIVp0YW+LIg%qURKT6^J(IEGOW^z&A=9L^I3wezBiAEBYt*tG6lC>KD zj;*?C>s{8nX^ugHp$RA&id~HNIg`nC-atwxWQ%JSE$$rPF%?B|NOa_h^4xo^2gT@$ zw#l1p-W@_zVoBcmq9hL`bL=C?pOAbcNGQ(oUR-=5i?wz3r-w&1sb%nF%-s#wF3O)f zRw;r=Va=#P?Q6SdjVvgAid)pexW73?&?MlFFMY^vxp`od!i->(>WrXo2ZGKW51=Mj z+FDwnf5?j3bKg8j>egJRlo$;*HVDnH;V9|*FNjj+UFz``@jmM(S~*;|9asKzWi+X8 z87Hc(870msIc`r(PEtrnCaR6RCcl2Yh<#;J^GlixtID{e$fWj7$2a`GA|(UcRi(8l zOY;0&ztJ$o?yng8PvO0gD<+jJTR#7#uiAT}lvohF>3 zR3BDh2I{Evg~NY$U5z-POvAo)|NG7`5x>x)kHhc1eoX)lIqil9BmG&%5Z6xQw&Sl}$~?yJDxmdUy8x zsWJrzODVS4(pY|Bw7LLrujj7b$uNKyDeYo?qv7LPWCi}}Dl*HO;}OU3!@8Idp2~SXZNTZVgXW6a9zCK5V%9TGj$bvye#yhI6`4As@(58IQ{Jq!1X##oVJBE}ZCU0~*n`c-|vv zd^}d8hA#d=oy@h}e*k<#GUP>q*7px<4>u3Ho%>!wMK|4Rmp5H?;Q1-5u?0~+ZT^+si_YgUX!7gT|eDTbLg!0WPezq3o)(gwH zLM=I2i?VKPwI|Nc=#eG^XLu9sQE8aEzX?!N)W=19a19dZeU|M~>teoLvCm<5>-QB^ zev)}i^1$QIW6y1V0W;y8+~#?Ogq=Yr#FF5d6NlGh|wnqKKgkORqeuQd{pg& zLf+h(_P?R1pk{EyIe8)FiLu74r7`-GWR)hwc{{ECb##7~xZuY(NSz%l`$K8Cj-dR# zH`bY;{?}PF89BD29un(h8oq~TsB{nTvFd~DnnIy zCMD*yU={ixj)Jh-U!q$BBwM#6yiaWFkYj>7dbahwc8|IetR|Ix@>k;42<7Lo+?ZQ` zYpBpn1`@s@HxtwI1RIc-PHx(5B)uALsIvB$rZA_srdOS#e((C6^Qx!K-PQYeRgnxE zL5RYJAdHOl4R#-CLmLct2w8LI{Ux^e!Xg?%8%>Q~f?EIDT*hjT&e&XZ2a}M;l{UO# z;EjRdjenrXRk-xUT=g|2*NG%k4YRXMmU7cB& zTfDYAwxdxGmgszq`w* zjNg<;nG?TLTc6rh1o~3%=Vd?QoK$*%DDKH2`Gj}C%ZZUp6{UQNe+R3XcSsbeuQjXa zJJ-4twv?(>8z?rO7j?#2^3R`q^w}MMt98yY;jPM^v>2u;)}4#+Ymw@dMcu$14EF#i zzptY5tXpl(Xs!(>i7BAyp2p3p)5v0n!Pc=|?fu|W88O1}>9`Z_PYg!6xKj6(T~%=# z&~+dU)N4bcx;C0bC5VNG)*^eH4hzE>pkR?%Nn@$U!I)QUnzVHDr`SQAkJWjd+@5>J zwBjdHdq$s2v`-)s;HnR@REP-i#Y;+hkjMoigOLxpC8ztTiG@W{p%?`DI~_hYuqApt zTBe!G@32}3?KIhm!Ouu#U&QTG4YnVT#h@o_IJNFP{WP*lV|s+EsQ3F+hV+^YPfYbGv$t7!NMY z{EH;Q()VKpBttTY;ZEJ7Z-axw&Wvu5Q=NZ&hiA6KwRFGnS!&p5)zV@KEBkvgrU10( z9*fBdZMOOKLW8W3e#!QF$-bX&eHD#_eZREakd)gj-$ELgkCv*Aj(X|e*NKx!6c}b>7c`v=OP(NA`**U_e zCu){dAQd3*B+<%9(BdqmbdN4$S+?o#OgHIs($S34Cd9A1vSL?t1g5Ty*@%5c)lDG` zq@8t$T;m>HqYAAfrnBU<^i`~=RKg7(K9;2jQVU12xvWU4YZ~+iUGv0l>bl4reFE#w z)+{u!Xym_&8mTOrbLL``gOR11dn>0EuwjC=`ybb<{J{jd1TpG&^~JGn#NCvfYs$2r z41L&|zv5}pRio?me#O_cOS$5?Vg{gmiV)hVMk03I_k9fu7nEYFd(VP3^zV}o>?VmKn=sz%n0$pPUCynCw7C!8c9P()(=Lnx!PhkTx3LFb7 zuid<8+!+5nF;&XDyC1qnT@K|GsB0>hkW#V5-2R^!5F|9!DjA{co3)25f>70Vsffn9 z?ln~m%i8_|T!&sfvD;YhrgSzuFx+uWj_{g7#Mxo~_)|N4a;VnhXw~Lvr7YR!##nMe zKopX0OzgpCiTWzN>xwMX*VqAVVRTYV^+J}=oLqKAMf9owKFug-SK4dg;^lH0dkYth+ zowEBy*`rNBMhoG2wIeU0q;uMxWd0R;Roek|2DJJjInuKQMz z^LeumC(hCOUF}|~5z(22b;1|N>Yk^YP6+ZFFv75XNR~s#Cx&MosTkk=VBUJOyX!Kt z>+AU(Azs|;o`)!bRn?f)6`LF16rP-6u4mmRi#F8@+oP;TIoHcpR7dXVm?3ohLA0om z26lG&7lSWj(IgD8Ly*J$rVUPk+QB@?>f0_{{4z&L67GYT(b>}Jx=tGSjPGFOb3~oT{gyO-tL;}S5qaNvB^l5`^m$=ovE0PM zvhwonzm%ZPiFN_#5Ijgo;5&)3b4*WIk-sGQlOXR7t1(Kt(Q)Y;-szc{UE)opD?p*z zNh&?C#I2uVe};E6Y$WYNfd7TQ6HPv;+Zl0T^zJ$NoxOSXk_S(J=fHi?mCn!s} zz?k=8hZxYu(5ezTLSNy}Jc z36Eh<%xzKpo|1VJ<6YK?`Fv~7kkE$UwukjlUKfrYNBWBTqN12u1>HawZ3-LeJlcF> z?n9l1fn(94%aMthqul@id%V8ZwuVlJSDahfcL!Ec?4xU(yYn@&Q6kgKrE%h!xogd& zG$X51BV-uvx%N(vWndEK;^#_P84i7KX}K9Wft|^k-;9FoTVICz7Rt=w-^S)bf=CQP zW8>qOXS4T<{y)CnIx6b;-}G{`Gd_TjxAkG0-|`^5)u z?!y60+l*jG1o#+`>Yp4@!+#a4h01G+Cs&q6BRqhi>dCJ6we8kwr({N$&PRc6-HVT> zZ3;oKp*G)#U)U5g%3bHz^z2cHU``g6wkHFiBUNT3FOB5V#i#3$(Fx}&&-*w5&|Ocq zNinE3Z8z%W?!^36o4>HOV#5eys_^V7D}&@MEVNS3&T)=_Iw0zHvc6!COxd_GI?0xV zQS850;|26eS^;{Se6K-H8?i&fav$VKQ0Qj4epKfFfmjauZ4G9+w5b<3-__xlU&{Fd zvWMMg!@EGnY~)WQ=M=s_$Q;!ARy#U%!u%cq#VzO$JK(BC@l{3G5?hIKcf?sgDOI`f z9Sm#>40grtgUjTxP5EaenLc65VSLY$Ad!ujTB^>s&*UmV?6_w)pD{It-Lns^Kp(qt zfYdKnpu2Fdu#0XaP^)`!XKe;fln!T32%z!f}BvzD0T|U?&X7`~MV7d2x28L!b zq9^VDapV2p9TUXw(RK-js?f@=uw1{`TBV%V5CGHWpDmXFh<(O+eX|5-VDMwt=oDkp z*5u2YC=5_AwxGXHj;H56!{r{sfh&be6daB>-&lGRu(WkOBcxVL_B<%d8pVLsCUaH3?!PsENRXKGt5b6$ z?f#_k@wcB`&D$g~BD?y1Uy*ZIf7z&h`!mi${998sPdBnaKUqpTo{<=^F`iZWTQ?(n z?%gkwhWVTUj&3+v!Zvd?(%7O(sr?lGi!RS^-s_s73|4-pSUy3gkiict2`_yHtiAtj zodJA6vs7b(M;peOWU6WZ{+=*6DR!Z0Ux3xlnTV;-U|dV%;kGV(EQ<==cn-t1e~V7b z&)*9p#0zUCq~y-`coe3!kqqcZ)GDm;a$iRq&Gm^VcwTv0T44k~8&j79-tF6rp3PG~ z!x09ig2I1J<~bzL_pOR^{N%n)mQ~Ux+gI&ip9}YvSV^0(h*^?K%N}JAvePK8-)S;_ z43)gd%)1?kNb(F=?Qv-Z=o4;#;`#L3E%sd>y?ZpNm_gMo2LC2Dt+lBq==k{kv@ z@XJB_^H0yohueNpI~r~@mR9th2FDGV+CtR3teO}s_?(JC=E9x39e=C6fjhC31Vvh(toBh%8pm7@0# zXEsA4D@K~jGH$`VNr~0-~Lpe08oD*7nDjdDWUX(hq9vg)dTWq@>5MvBr}Zj zv%R7m9#CkD^t0QWijOM^^bj(+QQ(6;ynX;=Fc#k9HcpZ44~1cqgk_WNVnxHeVRk}d zDzG$4(Ei^sG@+B5Xc&iFK66|J5SNnUOE`%OwQiwYap=aDNkjNaNl)1;mM;Ol)NU+v z1gbgF!(J5!kJ};;&^xV;%f5_7WIbIiB@o~`rC&d>zMPLboo`x^AgYmrLmXj$0T~TV zF3F?bLfs#5K(1Y}jJ{X!+F4+2xlK%%1;3hfm+})l-?AQfyGf2z3luJAI>jf-pEMt^ zESzHQ#m87T8cyQOvUTcU7xHYfJ2lnfIjq@_oA=ORoulwa;X{^*QFjkBwSS{lJKUYW zp4ZN)^5YRwgaUGW!QGcbPWWs`Im)pF|2}e$C7os$tJJXadvBahzNR8)v_6g)5J>e* zM21vC1VLp=dy``0mYDV%@4il{)&f1bd{9(@gC_v+X8=t3YvuS$%TKfYBD z3d_A@*>t8oIm_&ziM5w(+{Oxo|NbSjWse!de)|3WQ**PIB5u#e3F!>AOA)ujwAOIm z?(3Uo1u4-*+`E7(WPBVay1>ixCkSp84Xcr)Zs#}7!L2OyQxuH~^5lS5Pv;Mf4&G#Ey-y7~^9+*^p7p%N&bJ(EKoCn4-M50EobdO@ z=@wj`WbCMI=2s9^1S?8myf_4r$8EAFRe6Cw*UVeW292r$vvP>mXv2F7XuZ^W?)%xk zmrpOnysJ1(P-T7`m=<8oN&)7wBSIveA@^@5oR3MD1xa2XILo+zMvz?2<@rC*O>rZn zC8?gP_y#P(8HYP3B{EVf{rw86azuZgLfuC*mslz~GWE$9L)Vz{wXQtbAoUH3!H1pT zjdxpo`NBDcJecU>;E;1qFlTXVN4X5lfHl8x_VyAjT;M$&C0u6;po%~iC=($&V-_7K zb7FJi?-b=CX6hZj_sdmre0uOpmmOrNq9xz=)$?J0BkG~iz<(h^JgLPHJod~$zYmLg z&AS)0vSm%s5)uELU+ENZBKxDD(kb^hV6GR3cBXMyePl*U#<%K7IwAcPHsriIp~WKE zusgftbJg#>(H9H22tg_K`|4jZlLqFRy4*QK%yqkH|Nm4o4FYQ%>jT zjTsY@C^Eox%T-QLHKTW8=NPjegGxNCe?mwbkCzUgno7Q5KOzsz@vt)W;1}_^EgrDi zr{2Ju=;2L(2&}S^ zug`Vki1#R+%i)J%o-jT|I|vaxGp9sp*Y`fz8EsY82TzH*dizOjCnCP1mUI;hXFTv; z@qtJ2V%-0*`-Ji*aWJ@l0C#VLG63CkeIXgUU7q5^5#l#utR!P7yHrFmIx_M#z6e*o zWgj5oA~4P-Rj7#+mH_FX=l46MCx%DyJ>q^0dKKu&_~)G5+{#0x){-K|hf9XeX#1Gv zg!?}3+jxa!6E18a;-n#JVVj7<5M&+2q6(hU$I`OW6q#>`b?Izz`TpOPCr~JBH0aY* z17-b@)&W;%U2r||z4|%}Bjd*)53kCD4|?7|>+fi6`H?nN6ckDm$7;DwwCnky)T6Mo zk!`iYbRNg@GjvyiMLEY>m;&`vSW7g zLL3XTLOtQPWj>Q(pvl?_yiF4Gh+%2JF&rvH+aNck`R?1qn_d4j4dYkFg`qOsF!B3@ zalCd$CImh;y1XotkDZ*C!O7sO6fdQ0>?@EEe@B?-JJ&2vxFhh}p%Divm3?#o&{G7< zkmFbM`cjbh>_B%)KI*tlHX+HMKp`}pnv$~Hx;-K?SMJ?oZHRpVzdrx}iEjI!@g6|QxW^;bUB6LV zADGuostEt6^-*rT7qj%i`NQ?eg0(j@?e}JjvIEUB^=gac@;+nmwUH1hYm#E>`@at* zPxU)&$$Ym!{&fwA_<)HEE&S;?Ift$V3_Z7Q>Ule$rRDUz+(UDT?-+ktr=T;+JNX)9 z^z1czd}ukQ?<;|hcr2+#%wkehcwV{iBXpAmD$Y~X7e6cdCLKGM>|786mBq(4ky)%i z*~wnrYu+neL*{DJ`PfxYt6HS4Om+p?r@NqWsK7Lvm>6l6w||`2m+s*J;EE&wtXk{e zErniOw)cCxlO58z*%RU9f^PaZ&T|)SHr_>tOtt=k*YjV~aGPS@rp@mGD2M;v68@7u zBMUT+gNynNp#uig?Oz99l%~{X&8ba*!Gnxfnt*E*6jN!B7}+8@M}7CDm(|Z0V>{4D zMoV3(50Mg+%VU=cYR&lEc0F%>jnjje93d$t?>owcO?~Ui&WIalRwZH-^eUGeVO!k0l(Kc$np+79}C!N54Jg4QK#05J; z`{j|$U#;PA>Ra@pcaZ}qgPTByIWPYLS)y8mDNW9&F~DG1+ZNYc<$hv7y)(v>5S`3R ztZx5F?pP6^1Sbtpn4ux%;ss$nYyfqYVA}_yPU5h(4Ir*#CkM@Lzbdx};m3&3!$j`Q z*dESP+ZWe9`Hd}4PRw35CwjbkVmo86C{Qh|L~)m!iy0uEag1F{194iswZoeu_7+1j zeU$MZ6a&H0I+rKdMgh$ZpLjm{qiS`Sc*hR?ja*s*$m z)hWZbDL(OeoCZAJ-x-#44O=mOOqW;^pB|fzBpiOeuY8%Gz!!lNAtqfFIj2RcXuk)- z@PaTkgi(prd;6E8_Vh!n(Jy!JF?8WeUu?FIb-0NwsR68mJ~?6XPb-SJA<}`Keu5&+~UKLo9Or?D+SC*~Rwzcj5KAAZZhy z<469xYxigIw)1b5a=KE2hkL{c)knZBUtKW&%tAjYA>oHHOKu1t3Zrt)0E;NjUOjKs$U@S zzqT?`BppNxL!0Tc16x(7uiLfjtg~z-sITc6sf?UIisPn&1~{Be znm5g9a8*p6nBqDZWO6IiUG*?sMg2yt_+6_N+(?D;AM9*V&IWiM+&+CR3w@HiBmfXC zs(a8OBu*)zDC4s-VCThwzl7&&yZp{N01$&Mo@nl^QE^(V?~h|#=Zdy(r;0>un|c44 zqI@=~DLiu)*gWO>niDR9poj7|mhe(P0zJatkv*l;#}EDI$|(cf=EW%P%y;>LsJRrJ zv|~$h9_2_EMj?@0EhLzdWBn{L7#sbSVbjQPmQi6I@cu91xKNF;!C2#DkS$omf_DY* zWTkvQmH55_ig3%{0c(}=98f@#;DituV=r!({(W;smi#X59nOwIknY=%mXP&pSA`(? zad~>H&J7d4XEW-pDzyiof;T;%Yef=0J(3<{=3u5$yZ1&=BoFI(LXmZ_-gZG? zGdMyW8rJhrqUtL_-=2hx=^&Gy9`H*lc?19gY;{vSSK+JJwO(o6oy7xmM->=jGWJ#o z2VkUKaH(cmLeoDxqwpB7fmNJSNWDP=7k*QwkHCQZ0wXA83;dZt7AFY8CmiqTF-zz1 zEd`R=^qdxN7}#CY8KI(2my;PX=o5(beCKOHt<#uqpPCIWltfnLZ7DK*Hm>uQ>LTO{>mR zP(62hCEYWa1vcg}Kj;ZP&1&nfa(h~T;vRS+GlD)6 zO1+nEQJ*cnd95v=26EXN_|=2mN0w5xVA+fuMwV0B{Uh)@z8f)7fS z88jMaKkWOGoT*ek3cS$G|d6 zA<}*Ft5}Zar|ShJ#?&L*ih(-_}`ln%!eBaHc9jzLXcYN+AcGtse#v>`2iCU zEb*bBy4n%B0one%dsoC!Zi~bW!i}4}W>+7D(GCU+5DJIqe_s6sGQ}a`X{j)q;O0p= zViu-eBS#@fLv*x=>(U_x#Y=$Cu4+~N8M$62u+xh-g z%;PojR#$EyL_CsN)qrXQ>f!3Igsah?KmTWwRRO}ES1&FFK4f{J}{_lx7v|3!uTFXuR3tXP@X($LUvC-TAD zVADd>b4XJ5@}5UZOMDoFKkpCQCl><~6M-B_DN)`<|M+VG0lP=O>;p@Eb=i{NkG4S9 z^Ze?q`UhE!L_!+z)-)N^?X3c^emQnrn1DdaL*&{AS=WO+)j)xa%mq=?bZCYD7313H zmSL~g29yB9t+=ny|Esl$v^0^8@V6)MwCS9CX5qnpj?W?cXG6_`3X5F!1()|eN5z;% zPxaJnXlRt$-tHrQj!Pqy6Mf%Vt{^&ZJH+6 zaTodNvz|srYJVIaG_?nMQh3SLiSI)b#a{C5o;x8~Oy!Bb{Ud|DPTXC~Q)LgmsWz-J zPav%N71x>17RBkpoY%&bIkh|M|I8I(IDrU%v2(br@{dXib^;A{+aHHSGmnY;Zsu4m zb4YzlvYT<^pgq*_e#0(SmZMNpFM_9Pw*en2dRbSJ0txK{js)kh=Ucxi%im9&PUNn? zX!Ub0+(;&jA6EZPn}^llToW06E{`P;^`yWy2CU@tMKt?fJ>M|a3-bIvyfl{onE za~Vvsp@W;?aU9w3LUNGnoW>p+mH>i{OfF=29Rs5cBCQ@{o<}QC1?viQa#`q7Z1${@ zQYS?=kw{a@;~Ej>krcobnkmDW2e|Ar@@vQ%M%(;v4Alu_*h%sUdOo9}jCa`yDb#xb z9QslO*Rbz9EnaE!4fgGf90i99*RdAVWMZY}2yf*uv%i<{-gH#T3!jqlJ88;ONgv%+ ziHB^P1B(3*o3=0GCe(P+_Q$8BR_k!u6A==8cb0klcq(@|GkEGM*#cGykHTZ$>zx8L zyKWHLJkBH%gt&hdXbVBtIxrbfL);^1@yx3pZ(nL}$j2NFW?E11N!~?vVQ4{+X637i z)Cm|B^37ZqYRKlAstaf1vS%IbOhj4Rzm>IIRjkAwZ3<}lkgfD2P}9fJ^h+m{vkWCO zyM0KW^@b;rtAdjPV?-}MAB}_jIEmpngF!}c$A7r9I)`tvPqJS4EpzH$yd^ol+TlnK z_lc3zu)AV^YSN65tqy7CqsL#wA?0JBDM5KpKMIG-Ge6L;$xc_a_|)4d#K1?o%T)R3 zgSBxc!Y{SJFoTznevK)Dw#fz4*~Hv9`qFZhPy8~j0xniVg{)BGRCfXZsXC+w_*tVW zPJOhNx9NKOSYT1o>v3Emd^UmXcX1?eY6hqIO0+2l@So4HCAk7lw~!nrH);irrs(Jot^s zkna6SWB)uLJdU3tc|}%A0+oIe?;sX*i`gv}(8g6)xyM;4z@!|=68TKq14;Oxn!r!Z zYJls&dSAimwb~Pjr(Pl~EM{QETJmNe{sXvjEU#UP;teSSbx@m3_~gsn?Pj){TsrHJ zF{W`KO}kp_|0t^4RQ z3rnC?FzWJ@phLSe@xj8lQd+oK7wvDJHY7X|w8bM+`fbt@eu|P8-SoNcRR6p$`r%6f z|>>5{$y7Z+|1Z=I{hujRjS*c#XO%0nm>rB2hR;gZ|nR;iOk#J z8OiBUght~(CS$ga_=JhPQkL6%&dp8j;JOtOxj@L=^+I3H930(^0Fb)24dP0^B4gA^ zA{|BL{Gj_(B2#jFr*!Xv@D7xv$&U!21jlCo7d&z3wfG$j)x2j8Kk^oDaHiCH=WMc_Xp26A>=6hW-MRuo z=vJ9UM?u()6Z8WB>V(NUV451ms!non=%N^PAMub7|M>ff2FiqlTxzo!3${FuZsYO! zmSXc8A*VvBGQCG%$Y`g-{UxY*I@ss!s|v}~^L*A|kS%Lt*gB}Cn0lLn&oG16KJfCz zNJ033Q)lueeWl96m<1L+y7azILvC}|b_J)H!iDpWdbB#kdW>nRz&?IgVNjmJbOoHk z67fyT-A^{XGxtZc%mco^wRg(->w%1FvmOW65$PNwtf)6D(7RY}I+Yh<&b`zaZ?vN< zemdXSoBI81Hwob?mNJgvmnT1EEjX0YMT_sgm7gWK&u`pq)vMHPQfcwI#r%1lPsM@*1CI>}>)(SMD#Gx`8WUpF?;D?%66h|<;MpVcmJ(83glij!*MEh^{~E7{ z?D4PMT#KM3v^7BXOn<#Q2(DJ!`?O;I%!l6;pUBV*;jXRG6AYB&%06yeKDnqCl}p}S z`h6oO7Utd+m%A5zNMD_!Md|H9*t>0UoYiEP0vY8e;bI47dBb7>zWxST7d4fmP);7L ztY9P4?oV>jS<(77WzIY1582MMSy{}yR+~oJX{lRI(mCcgxcsR%-hJun97CaC2qT)& zPX>65O{Ma?iP!FH>$D9G=PiO-A2+VE`HC!Uv&J2+d(#HeU+vuTsrQ4qb{x;3wB`zt z??4<)J?OM>(I_4PaB`>uPbw;4r*-cJAqLmkr`D^>27K2la9Cq7L<+qf=wY@lD z4+5MP*NazDmje6qP0m$+W|zO<#X|4quFbtHT9KWz?;bch7wMis2Fmu1VI)5P2g!1~?v-%-82jz?}c* z4Spm(RTvT406@u^W>|Rsz3L6XvzakQ8v#Lf=Ig5?f72w(WIQ6#hxE~16jd(JoFUN@ zPW4(|xCk@SX6^o+4WKc5p`$E#NMv$&mS*y}hC$~04-h!-pUqw@B#CRb4l3Kpd9di; z^ZcL`^WRf6)C~4|(|Cp!Z5UHR;eE(1%y)l3(_T@CZeP}7+OP6{gUr2b>T*M#(*xTx z<6ZPIaAYr@vemcKuiM9^05_!2B{q6rW}KZ| z@CgwsL7?x?Y4>Q4Z&GQwVl3(W&S4L=tS==p!r>8w@n!m+sWvRhLv#|~Wn4`q$parH zvJV%$#pDjwBkgpoyA<{If}f&ZH=VkUtc+2?y}#U z4^>Lxl?w6Gj*9>ZTrrIPqgy{j-l_>>m$}S{V9A@y?D{*wCm6LP8XkLySR53fJ-p0ChlYV z%f^d(P*(fN_o^eTRSzG<)QA;p4kx#fY;F%**Z$)5&`1wk!aNLV*lYic6B#^kaI zjuP6&CTW?N^oC@gP(nQ={)FyF+)13?#EDcIJk`rc`L2Z$QO}dzJ1P=30F-#E2y10;L6N3h$P6^w1fSH0#DA7cezW|s|G^KZNA>FA_~v=4!M;Ys)l!ih7syxJv;;Ha)9m`LkY zcl|dD;0AD}N$i*4UThW{R73J$FV z{I|HMPbYrZSGxr{({}?9@Yx>rrOM^oDE=afXizxN#wO}20`n;?8Up$@%B|mQuMIPC zh_eOwT>NR6!kgF$=co1!ye5n88FD3s1A6bp@~vN(g=Ez1>-^_mn_2eNDiNIz@xeTH zU4=X?gj!AlQC<8HO494+6K-2m0P@b*(fqHWr(M~Xw~m;F=K#!PPeiip-tu^0wtJBf z70aM8`!&JeSjcEPT zP4Uop+|8=z_H(|%LB-evc)IjRxSe7=gBM@|qSxT}g!0SR%`FZ_6G@(GoS)=}_6wGG(0HSj7wdt%OFvdc(8_D8-i&WUo=Mvd3^ZqX} z>I}isnU5iK^(~Vbfe|5Ed~7Sp|9*+YyzpUI*3*|M;~#jDD!h>>+mxX~@~|CG3Fz_c z>I@>vr{hGMbt6rc9!^ywN)w76V%55{nFsflc>HvX;4f&^1`3M(j7>E<`Q{diTqPd8 zB%Xj8Rq*!43qb%=fF}vCwG$-5{CM3K(;DS6&qPw4NQHItHVI=!T8#=@jXHg32?>4) z;^#4Y2-B``S`0_9k%pHAhMVTMdgn{GSeZKDh)9XBGBYQ_&Lyhix>vIE|@4( zN!ftSLeyn9fV2Wz9yXh`1CRr>ad!y70UzQRlZqNsaPzw!&d*eQ#rx3gn34QXDn?gd zF{v(J*tOi{LnZrOn3iJK?TV+VEJ~+ zo(HGNUK*&@2lya4B6q*wQ!6C9tmVulEi;-{?DovnS~ATcEp8<2?_V6l5+s9UC3Qrd zDUd`jMV>&u5LlSNRon&IJbuCsxaqdrZvJsRin<)FZ``Y+p?zc*o^4kSx8qD66`l;M zvr{(msfS+Vc-dp4LEw12tyN9Mz-X%b{6JE#pS< z32h)JFd0~Kt`0n!1H0DxVxCk#Tcu+9PyAL+K1jMv_h zIWdLE&ja5r>b{B~r+s_p2@W&-R&$f!<4U7lNnq8aK8YqHZGpwWlv9XP%V1c?<}T{A zSrr%D)}p^Lqc*IHg8l9bcbrra;Umdmur&iI3%jg1gIZRa8kH=2% z-Uu&F#4Zz1s}Y%IFCmu0RiZE7GVY9!Ll5g4esT=sGLiZ=oqpoK`weQs9NCuN0%)er z9)5D5@f$#p(&`6SyJYl(rv-gq$zqR7>pMn9VG`R}v&|2m@o&j-o~U_I%)ru%%!|ZqQyXszjjX*rpHR3yvFpE>F21vQ#tD zd;z)9a}1Y~{jIZ_~V5H~({q)KM7k>;OP zJQYV4xJbmjMJeNr-aMiZuwl+4&K*V~-zLL({Hb8(el!uQ+jo=2>@UBmvDw=8eq=7P z`rl>Q@j!45@QiU3T&8NyIas0XqcA~TgC&PL!7RgPH#cgy)GHu2w7_u#9HFFAS4i>UI}BUvQh8rL7NdeB5RP7x&D z&0I<4y{r`*NAY2RXnNv3kh>VhHRjAP>m_++XLV%59q_V?U%gfgSs+=~&W3vyIf9?4 zw3g;=VZCQ!So)5Nf|Or{dXW@0+O{PA7KoJ>6MT&$<7&IGp^-*>8L)P%IXhdvzLQ`eJ+bv4^@- zZ5$*Bn8!M*Oe?>Cue?qS=C!yB0_DceM4RGgRo?!BZ{OM8YG(Wp-_lQjHiU{(2hCwq zHO21j^yd&D&0d>PgSZI8XP=FKU3Z%l5M%4RLd)`Y%+b3S6L!7V@u*q`M#+yOox)Z(x z>VMYLoB6R^lpXx}(&wk9%gw(LK481N@E;7PX5L0`2e=C^OF3xpWS`flx$>+b5Eg|| zXvfyj`{ox;ui@PLA2C?+y;<5hZoM&h%6wuZ1f+{y5L(D} zK59hlHqsJrUjnP88)QN+#A75~&($^dm}zLbM(~sC^pU`)jj%V{zw;2C7k9ykOI0N2 z`UYD5{4+(v>M|fg#W&up0gdga;0as=us)A(|G4bpL({0;DQ$CYBKbl9EolI3&Xj(#MG{CcC3~?ym(7 z`%~t>KCTPBSx9a5zG)KnzAjZ}uJ7@ciG4-V$NcMLZ=c`UA-40@{@+RWzgM%4tAGIf zvC44WdJcmdv=}l$-548Lnoz_(7~U8F3NHwQ(X8Xjv*;Hm6sO*uN74A!j4d=dTZX7} zg}~=KDd&g??_pCwIn7{dv`CU_XXC%vB39_e%_Czn6o3hM{6e*4Yp>sXY(hEAb&Kw?p6ur9KoU_pWC=pHcqU)%Sk(3U zWge$Bo^#tBc9Urfm!(K~syf>|FW%7Rq7J>KVr7{q?&&-syc>qU`4{_|VOAgIN7G37 zQ`6=&_>ok)_>e_704mqOhO)hb>jYfo8xwOt-jv&?ZMF+MOPhs{XJ|-uDm?C zFA=rhO81tx9(Z5a5AUTd(AIj!9a|DECw=G~7(Iy4`K;$H9`lJHS}BWRx(?iDe(9wq zVOvZqG=kzk)HBNWLMeb8h9I8jGwdFDz6?qiaIJ|!=WPVK{=%~#UFcdpj?Kvf4NOS? zO@x=b7Nhxbaa1D`1*Ny~ldFY+e}03EGA;qWmG?$3_zixDJbg-`Gd8=+ZdKz99)x#j zh)#CcbAa{YBGu6E6KQqJiHw5iuvx3H2hB<#dUaf~g7(^!sd#dLDU$-#vWcbcA_ zo=inF&z`MUWas=BM_=+PKR3VH(|_lIZM_C`uhq{N7}<%n%XP|HoB8M-4x1zkDEYx52KTc`X@U}}{FXLcVZ&wLW()l0m zIMM~$j!`^zQWQIz9@+F27Wpnw4*Zo-NCL!LZr~Ff` zjG=w&-H+oE!&j(7L@ZMZT$f%qJ(zzg8jT<%ye3uNK6hr?SvgxyD1|F@efxuWuvbVd zhE4llS$TfH%zMm|iG1F0BNsXTO7ixzq^a|)-#5pLPE-m_@4VMcc1brJ!bN+-cRD|k zSI&*m^iR+n$OZknq;7t_9Q?Gqfuc^mIrwM&n|*iq_rm%VEFo|`4-jj$78){Bmk-I4 zjqt#htca5)xMZrWNHgTKA6!zAE&>TN?S>WH#f?U}|4$_uc%=flsEv>=xe#pzND!7H z;llAnK3H+c)Nf{Uu}#O)WmM@{;oAqN_8b`1i5ZlZl;GGuR~4V5(hO{O?;x9C_02QW z09%{f)Lw)D@*GOHwY}0IQTQhOhRut+%iYEui9S1w4!9jzEB`@eRQ-H<;3k@cJJETX zE?GQ+hJ%b@CMl@HbB?r^QS45R`GWNfXhswjm~H*DSuJ?rRJ51@4B`YFK5-Q>7^bUo zHn1Y`7qiYgROz2BkGgJ#o?n*Oqpiry34??m%~uiI#apN*3`;{EC9m_^oSk%&8YGSs zBCeaH=y7Z<0zeW-A9;)&=-4%>Mx7v$8mPze-^MIGJkLCHaf%gR8eW7G+z0hFHK$5P zL*|W?rAU-$mXsQ&8^)#1#8D-_UKg_Yi+YKs_{kTR)nU3E0esQLzi@joT>1UM#}kMm zUd~io3fsC4p_EcN@Tu}iG#^@bU(M6p&RF$qd;L|!a~M-KT8~V9PM^|<(3FyzQ>&8_ zat~rP%RfJtS6HW7QhMVOW$)bS6Qt4Z7kTh$;@qpd2%pOQ^*#y*Ul9Fh=wl@LhO{qU z=S0JUk%8BN<=|i^Xahf?G>K90hD|#{BmmKH+hzEuSz`WelBB7Y1u?Q~2;vckm&!zg zJw<1I`*8NfuUNNa8SnNDv;cO|bT2#BrE5RQe*AClFi0my_yN5a^QLByAI1PqI6ly$ zZO4lK6w8l_lP_@v;;0g{|M25_n|x1SGNdK9zab3m4?l)0+16PR^C}$U!|7VL7mQoN z1#fSA$K5V&5}YfqA3z>zBmbP1G+}^0&+HnU6cUHDbeR2K-LJ}Mq^mjZa^Y>|d`6B# zYfh5;iBl}QeSJu%Mo)%r zn{XWxx9PW%12|9D0|^=D|6b9=1dluKtKG3r*m{%pBp~VBTX!VgX~*#?nI1+KiOhGU zbN2udT+N$buF7R62cXp3DoQPi)yG&@L9|66fPpV%s{U3Y#|Mlb} zHY%Na)LI7B`!TZh7=^dXXIN6g&+2{n@#{g2^^INZuE)Nn`79&v!_NYl*omiWz}or~ z(TLO^hfptWQc#TDu1R3yN+lu#gS{EPI$fX&g zny1#vs9a92J!~z1-Uk27=k|2%ZCylw%tr6slM#Au7YGsw{On5{B)-bN`rNv@Pqz2~ zb~)FSVa4=!&}X`9hFP{#P-ba$K5ms|hEU1k*5G4?BQNNocRA3g>Q$$!uG7v&=hR{C z{}c@=A#+$nKdJwns$L=ZiOXDSVVNi4x(5) zP$$55cL^j_LLH`LrcV^H3XPbTRtP}Mh?hlGm!MM3YoxJduExW6Kbdf40XB9fwkjh-`~ z-K}!;8;#oP_H1T~g5`dclTY;#U4jh6!4wepIi%wl2TBcHfr^hgdE~R2K@sB`-;0aY zuEbs14~m8OV0?7VJhQAC-wPgVA1?Qp?sK2y8i3mwrN8@ku~}(e(bEpZwSKK^kqs4S znae_b`%nDu@nnJ(JyJY^3)V@y9DSqMBs^beu9OL+@9dwq{lDIahDxtpa-Jc2AtU%Y z*wEzIEK3}&34hANeHGcJ17Ke5N<0w$MQW{S@4P>wQ~=?32cWkmU&?fO2XKkXR{rd! ziTG+$C%O7(AToxWoOPSj371@-ndGXRYf~(@Kk5aui>`x+G)11xur#mD;_h+#i{DkDkoySm_RnH5 z|IluH)XNt#(h<;mpuT+}g+Wi?D;xK-F-2}@N>JjV!&TMu(-(gLj!UIJ(&-e{yznxzyoafIhkRGvj>Z%bjIrqbiT99 zm6kOvKqCT*r^*wRo(u#%gMCCC*QIU%#jp{O;F<+b8b1eNZJJN(O1~Jp6^)^j{z4b)cFAk5k5Zj}G#0HuU0{5AJr_Z8w7LwhqxN z*jV)pTd|3l;=yotEkE)GT5Gm)1*z0WS3FK2^B+7jO-J@GXga#M94q_)3hxA_`k{ z;7el7_(p^%`Lc&F-813rP`peYVxE4cUp0)n)TrFF6r zGlf4lY`8Ekcn7AUFk`#N@+Hi(!FviGJz^+VdT6y@@hi0?v@%SF??UXsG;A-KQjaw1 zx%e%KtM=@1B}TO+zd7G28TDD+F^`EUCwBv{Ig!Zp^$0Q0t&)e7Zo5$bn|d87=>EKU zSv1_*k><3A@Ff@Ds{OW?^*)E=Jo}MDMm;WfEKV|kHc8Kb&48`V@5tKF`MX3`k0&g( z{n7m9{-E;r$Ddlr6kE%F-oF-Fz2jwKb9n8cBE0KC2KT5N!~);$KG&@8xK3%87Uty{ zxB_Pe*}5f8)BwtG=#N&muu0b2Our$^djzv_=sQ4V`A{FNu>W1i0Oj?oW_8m(H@UIv znT8vK4;=dUbLPqbR{YrcXlY??<&>c1u>SS&R;r;^IALLf^Nz~VLvlko4~&$c)n~QC zFWdh1Ebo z*o#L&{|~<2GAycp-5-_)sR5MkR*;m2p;IXl5b2PR?(UXukq!YtK)O@9h6bsjyJx7O z{>$Ha_SySf=Q_{J;RUQ2W_{Ove-iL}QHDg)Mfmi2{4DVN?Cs%lDRAzvXxs3E`T{RV zC0q1|Z?z<)C@%SHwe9|LSEMZ)JGiGQo50YR1W=@G7pMJ=C86~L>*!IHl(}i zob6dm&0(J#K+C5LpEUZ_uzt2or7Od)fy6-M2vn;g>~Fhvb#Hl^F3&AGq2Bd#1D zlQvb=nAgF%+V^_Xmxa7Xl$8PqG8}`rv=Cac`y4KTbKXbal~=~*^x~^SUC`!u8bTRk ztBx*OS;ndDE;Ih~Cj1w`@n1ub7*(LhWo&bPbb2EGn0&oGbj=SjGIb2hRmaznNfjT* znCGoO8FGnG^xuab^X7Q!U9K@V_eQ0aP+{L%PzgmJJ*7M%1AgT=AEpDp0I;K0;ifao zz;!p@UIb)w`W)y&r&lQif6+RO5DQ7qd+s)RThCz$R9oii^4r$x3R)G)$fONa_(sdl z^3{D(RU|=9<1|dE_Z`v9Y@$8sUru)>1eI*PyT)O6Vb>mgp4pLdw=BscC6@NWE32{dLEU&<4)a0MZG@F%+r7(z0gm-$gj#xs*;) z%uI>Y7nnC~ukuuUp!oG@zpf^v7n=nVP89JcDZ+oX>z~>zAlv2_KXpy8yoDdp&J!yz zqzJ#H7H!eMAD>;HK{-oiO1B<=)tXPmKMt`hlL-n@7~Q6l5kgRgP@W%Mh}wQdFix`j zlALqga|n-`ou|cm4_G^loI@}#Acuwh^pr*bxFttr9DpJm&e{U1pevHTh96O7g%V&e z@?&NjEfdqt?o>9k7JoKKD;YbxzPbD&uLI}ejA+breEcdGW`1aXxFI6Gt>&H`J!Wyd zagzNqS_qDIiuv>i#KUu+S2NimKBkCnxoBR|4{KIp#qi~vUnx-?NSt0VYAwqFDy^{}|rPLN+S#Kki-VYLDZr>}`b#`Z0d0()602rm_ z_3f_2hFM*yu15Aeid&Q8xPwWKX5whz(%^o!)#I~`8WIGGS5eJ@-DJyJm>RU( zAso)CEl;S2jS7?fBjp@?;H{d=aChkbf1@v69LRH*C0=%9!a2^FJpB9y&x(gFHgVRX zg}awo%-$XHmX<+Uh=l}hWjXdkW}1ea>zuNg`F}XseP!Cwn8)54 z{6i88b)4n0nl!88V@-HSWZF53#F*N<+10_q2|S=c8Y}nYF0M$Ezy{K<>;@Bi32DD8 zLAI)TH*LOECAp751nibroncre?t*eVt2#P#i)9BCiiTdZj&f30mh&zDK4clgB&@AB zdH^!*ABi6(L%PPb zPLoq#lJS^Da5!-f$g_sC*!JGyD0qGUzL7jlcp_%2kKso8Er}U@V}+HP5KHb-vKy#3 z31089mo#;r+!mp?Eq*hvptc^pndZeEDMKrRN1lHnwb>0gUHxahaA%2f=u`pg+P?K- zz3n$l4=K~D{X7Ljc4)GlWAoYs!df@IxeStJCb0G=p0Hv1pi?N z5DHgGnT;1;(na};hXv)ff-quQ=D`oKSNuD!@MLcKeG7p6m-Mfy7s!SC!)R#r>{jk# zFLfWO(4UQ<*k$rf;eIv+kI#yB7f>C~USzPE0XtIk|>7DDlr6EwS6ob8W?D{Z<|7dTYknqBMts(W z23S3h%LSk=kjH&bM;mn}iy9JmsDY4y=8;=g>uMMYo=bx=#oBgCN@McKH;Z#-Wen6f9Cv;;#1PP{i^Nph~GBI#!riC#e0#S{yXF=_irEp z4k`wO2$t%~#gPB8#jG}8V{dQit=!G#IITWd%U?bbV^}K z8M#xP8+B4MiZI5x&848whhL4S+W1L_#K)&Km`!1>^qY`KU(zPT3CA#}8LP$0?;L~p znLYj7>*_p)L?uLba9@({7OCb?L$)0CQ6jD9f8{w6;FL&Xs>*KXc`q6Pe47lRI>DGNtX{TlPa-x}&8d?B+Fc`&gnV)v+ zTB;KyEE4G&I0V!>ZDp-bcvpZ*=ovVYz!cr_XETcpGS8SwS*7l!BYc5a#uUt}P(b#! zTPivy?~W6(oIsKfs;d!E zHQ7kz)zTS^N^Ye?y{+{knLj;P$XB{hE@D7uz^?yF>e(m>p_2_V0`Mr%V-}IVGv-Qo zm3?~)k6ac9Y)BKOlbcb%Mqm`k8%@9v*0gAENY`_irNj^DpBw~*U39J9xdZLOS_L(L zv+czXB6e!;!>RQTxe5zvDnE5KF0(58&o=t4vp}QY>Id(94`#2Xv9zqLtjc!OA*78S zzQbrT=5!~5TJ_D6wU}#Q^aei%(XqSsC zfNVTpK!as|KqR<6^+LlCO=sWj26R)+Ktj6`ZbxZZnJc@QXq0wmbQS2XlaU-+Ke?8j znfWt0VR$FVzG@3pH2*;nO!V3L7r0*a9uox=;k93eHwNh*;)5Y0@{ zEq*G|4LMxuU2uKj$fw8{xg79W&L7kq+Z^1$T6$Wd2sV?Ao4X?EV+Vlby&X_=Z?Blp zx3qM6MTomR9E66w^sI{Q8gM)69nyzeqrwAGu-~m;L&bmp)y(I*({_5^=1QWOB#HgL zpE0~o8S4iSwC#rn5okimZn6Fm2Hshfeelcze?KZNI z7@HyS7z;~vtuD+L+0LB4Y|SG^8wV9-N>bGMu&$aGDSVJ3|I~%VFKP$cE^HoV#!jFM ziZ$|ug2WDQ_RnA_+SKkbWD{G8FaaEFiYIK+8K8C}1q--#{>D%^4QQo5>WK<6{~!>P zL&(S#`$|7Z6`%U_u|*i&;bOhL(97r^D1wkxDI@KWv>*f`PK~_|D8na)UEpWZ2=MO}TvE zTUAyT`(jn?-k=LJ8TNc}jl@~Kive9@dFSb1o8xX>9hpq%Dl zVroKgs{IC>;skUR_D9tM86H1;OxCR?8U`80f&~lF8K6aE2VawT4D)c$o9vjH8u0mOtOrnS-afL}}==IxRB!l91` zfEryL-fYT(Db8BOe2xTw@AztTAgnb%pI%$EaXw4L@CX2;ljju0rZ(7f3A}NIbW2Dq zCVdf~nwtCG9GkfYvkg$KR%5`Q(|h^PX+s!3o-9&yhe>GDowl2fBumIkadr6UP`($? zce+)bZM;v}S#BrVVcho|cnEa17)u07+@{Sf!vsSO8!huP<#*=O?X@*i#ri?Jd6-<4 zmzR5?p}-COdL$)9+2y{6?u}uURVfLfaQ#^3o~dd?4BpOcjRho?_x@oWs6Mx``sEmf zGdU~0ra-^wr*8oZW$dic{l`f2m;O8;M`Fk|oSU%^6+nF#CDGyMt8a|dv#Rh88GRP0 zGrDM7o=eH4V*_;;AkyO#beH9%DOa~F&f z82B5Mo$~U`x35_K23<+S%oO28@R#;v&oEB#LKZ`=N_U&noXqkHxD@cYj)5NJq=_RV2L-Wkhse=Z-}3>}FrfB}Vt# zOhd9nh!|giR>eQy0WtXXU<))NjYCAyQgDb$PYdXDzF)5UG zdDe0YAgI~@cJ?#_?(JqypEV#h3vp>nLE&$2v0~rqSajI|6y;d8r{|n`=6NJ`Oivyn zqEHAp0XUO~q?Ieq`ufBZw649QzOFon~y23yp z0kv6ZRGh_XagEu((B0JhaUWHcg%AOX7{^SxtA`kk@mx+jjjy_~IU5b{_dV%+1j2wa zNwa9vr3^mnqRT*_bM^o_qDe-xCm^^#I6ORY|FjRZ30N6i4e!=TE}Z2bxuGUYl4*!K zT32ab?&HGl7ZT3SNy4Q-&71}mvFh?|orKH7AEHiz#fx?pP)yXl?Y|JN|HkM4H84o1 zO3-He=2dXWyYK8J#_#SQP%Ir(KK9wJwEp=!se746mg8BlVDf_xBMEc}kVlRhD&u); z>BTrr{UQIzW&=Gyrz}R@zHY1 zG5n8ng(4-3UIG+!h_W3?h2$oO@4NZi>A^24`#FNQ_WgGMBoA;Dti(L2FPMKNez8$J zEjbNH3YY%6WN?Q9UWq!p2Jzh;T8L|id_6yRa_^^dZ~XoyZQpmk`UZAYA@j1aeJ^%L zW7dfJx~1j3t48@>#|tolSkT5ByxGYP4BVRht3?TULV!$XVWbx`AsDv6{?4N+et0N| zT~Jh3)jA6&4Ep0EY64!^I%!Oj`_Pkg^f*iQw<2tX7+q>&$wPV1{24^kEb8TtBmDRU zb40wg3Q}YrQ+J`sxP(sef->ZE!B?%A`7F>tA=goh0d`Ee(@iV}AA>zm_HdCma}%)sxH$yb8Z?q4BF23ygaR@P_@BZx}y8rCytt>`xtlwgtCU&o zq8*AM<@8|TFT%(t?{`Z)oR@(U1-yN$(|R+SeBeMG;8#d98#$*8mEYxEK^jP5OOtId zAA3*LhUZAw{hg+!GfDU>mvJkFh}+wDr<19{W~Cn@9dHZHqxrQe^!8SKV9KKybCVd{ z$MemuWr^*8$?4^s^7sP*+pAj+M^p!!s+%lj9`tF-iE{|&~(0dV4!Z43d@`DBkT zfw(=eai3ouW4O}IL6#+R+n=K)#dIvwj5_Bxv*b>xg*z=L9mCF<*=A;TdW}cYwVbQX zrryB8h|5C7Eh#CRSwEGI;*PZ^$cd~NuL16Gx`_>{{eA%H{ETSrhW1KY21qiT(Dp_& zvy{`3df#UT^RF_bN0ak?biL6@PYT8tux8U&%i%-Yy>phAB9|yMlvK7o+_7fZmEV#v|bdV2ORlNxUp6jT5514)cYmPwg zQ?JF!4m};ay1hCfBD{)emQ#Ga>|zj?Z9ypt=*vc?q+)|R!~B8^+6Wlrc0WY4o8rK| z0w1JW3QxF;e`g3ckH_H-{v=YQsRqO3L%^Ml&HzI7vrD(IgITYJU#uIX>ufBy=#~-{_g%}^ZP^J~)N~xms%+U+$sy|RPpcRp(=n{0Ar)_b ze+Xi3S=9bH-bpo81aask4C&3$W=TV783wMWLK{`ke@B*!#b(}#QDF#JNbG>83xZw{ zrCu*H(6lVL9IGB{WGB6&@`Gc>yx-PA6L`-h9CZ#ng7o&^XGte$;63U>1NGRno^Ctv zV_H*!U50QLQW{gsm@e*a&TXP zV!%EL*oBhz7t=1hJc`FW2(PVhFYhAAH;0txm?v&JM0hISSskop{)+A$XGMjUW8Nt35nT1Vn~{C z{~@M^^i-$KJSO9{r_%z~u3)&tS6(jpU{WRBP*(gwkC1rt`#^9k8XgV!CnCk`yWfkA zQ{&&uf)lW_+Px33r1zD1q)9#vbo&cNP?mlU$!dPaX_~^KRxPx^}MnnQ57}iN(m3V|L zDxMz6tB;!i!nOTyicgc)cC9Cb!Zqpn*}C@~FKUG;hNizR<$A$Z$s zd`#yW5CiiV(-w>p1t3Da%nDc2aN%q2!aG_^}f#erE`zyx*giYbwV zES?{T%sJ@<4GlCMOq70X=%`*0YcTFW7wqf{sPDfaR(T$VLv~2ap|=S{*t-GAcvlBk zFCa-wf0@8JCS<|SG)xKRe> zxnfB#kZS~-yizZ*c5F^UxQ$k(#775{MfF_VyIzU^hiW}f7(gcCkH)J7bwfSu@e(Dt zUWa>3F>aO(6NZ)>vgH3l%lVWu6&JwrTZ(-xV7;Q{*a@g{3?USuWBfJPxqS*0i!K8- zDDy9+0TEPPT^)jAE(y<{Xt3_rFIFolR$nywx4}f%_iaE2qy#bOVlz*HbHEdx#hW{Ukl9w>|~Ecv$P}NdY0aN&}o&Od`t<;EUf) z=Gt4t|LMFQHhgdz8dRgK9=CJMT@B?9kWNEd?_@~oQ^MnlqZZo-QXek@1s>I6U!a7% zh9enBPQ6;?vz}$Y%ER|nz}Ern;4_$s(?A?yu^g?;ZKwm5@iMTubJ>e{o`>xF!aLHq z3AsIih2a=zXpFS{{cv@;GLf~b?xL+qjCg7G7HF|$CCQsy-86%?qwp9Q5SSM1DUu}k zH2@KYGbf5HlYRy@Jp>KQ{))jl6K5+8Wn~jaFjx$Ht^`#FR%zFXC0zUJO zm7X8Nv<=$vIVv+$r}t8}wJgWYwr{^l1y*ETBDc?z>31$JoCklx5W+_!U2gIe7*TP+ z&erUA!kV=UCBq2blYLy7g%UBp9j|lO)YP0GPq8j59eWz+UpY3InDsa}C(sC}QQkn6 zZG0{dxZxQms=(Bsg}ZR|uYKcx>M{SmGNVS8%$IcE=Fm7t+M|^JCJtDqmn9u%o1EuV z=)9?CeeEuT|KOXd-WO%qy$k_uKv{U#dgH8O4ehl?E!J%RAKOa zP(rGo_-3^W#qQk=W8I_IW>OrcVXokjB;x{`yo2&|)|jbGZz-`*TZ{?x$t)K4 zL<@e~NIXGHHOWb{k3c3WG>KA-*oIs+Q&5tAF!sXG^?EFyNZS4!HNBwL#V7o#))fiE z%EMuMm7O)7E7IYhfB^xeErN+{l11+l49PW(MfNvRMtb05%@$hFO5ARs4JJuz3}6FQ zrb@yVQ=!dUp#ngIQ!GZ~m_66H1#Q{51*n5g3jUtH7#|2h0&Mab^f9|&X^Kq74B2>z zd?o<_H^#TEB0@_3|H=YLnQACl^n~A6JrunKrhd(nh<2ZUCufqZw|sXl_CFzFaCI_in+)712* zYdYF8_5~t)@&@Bo)4H`47ai^wx3@gRVVvtb!A({gaVDvDH0V)Tdb0+pO?4S?tm~|yg}N-tw4g3i4*%NkGX2xuBzf#XOo%zIy|y5TJmr_5{DENXYYC z@-|!`OZxXklW|k^TwCWuy@$z>H+T(d2@FP3zN!MTe;=M82{?ol4mOVR?Gf%LSg2<3 zYwmE#gK2Yl-NhYNbFEW%3<)Y>gmF6fE5JBHn9ZOL1Qd@=TV9=QLm;Y_{mE01v^(-I z-~@K0EKk;>=riGu3m>I%)1y#(j|Tv{G)$SEV}*NVtFsG;sXBg1G(=kgO6ARYLi@L=h0K)Y3A zz9UA4l3rRmwczLDb=IDi8k^)dvp!p)Uv@tXbqC@`u4XgJ7*$PQtHNtMLiv3T=hdm4 z9bTuF0J{yP`s#$$NH6FYGVdZ$L<8}m@c&J1HWMQK!ENtj+8x5MIIQ`|_?hiiC$l9d zwPqc#A+`V%Y>P&<#gGB@?X}F45Uz0B?&KF5DI+{4GLacf-n-Iacq+T>tfqm#qJd|* zL?3-;I@YD|!%{*3Jpfy3h0g;t)4TrdOqc_|dr{F?onE<1iYAI)4C=g)-$Ooy*4Le) zHYl{id7A(b|_wMY(Mi=&JyOcN%~q9TKmscR7wQ!`W%{>k2b4Q4yTotORKA|VOXrU zETP%RnvIBh!M|q48M?6a;%&9g51KT%+#az_lli*2X??Wy^dcNzIc6cU5%eOoOV$3@ z$Ce8S-BIByS_N9v(zGZbQZcV&Qfh%l;HfJUj|U)g&+|Wgw_}$aQjq&FATbNWCZ9A? z{~e_~`<}xA_)5NlG?Q|KLpa0VfCPqmVPt)?kxxA>em7KC^Q99{(oxe8(dEK?_>W^L zf2i@uTUj}wy6`_y&8Z-qoEkip%k57^ySYBw&`qF!A#N52R9J=^=lT@N>RTv2gN}j5 zyS`PU9Z(Rm3o-@!3MRF|Q3TNje?ChRM&-qniG<^Gg{euJi7Q}&itd=X3u)RnK&dh0 zIUK&*@IC7ZLa~u}Z`vZ|%nzyW+tfK0x&fE*MLJkN`%TkONGD-bKz35bQMI$w4R(E= z+*$oceSIRk9dMh+id7susm4MYk7T`xMSo7se1ID8fxGoE&~j1>Ieo~IW|Ss8Ke7ZO z1wNj%`)ka>cK}ON9eu8QICZXmQt^ANBP@M+stqHgHIW5Q#+ti3(a6mVa%5qOuhB{I zw{$dK#x{jxiBt@}!aqDPFd~+Bwj`XUwnqsF9DQ?Gghf#`BCO!O6@+--xlU=HvZ@f0 zY7m@9<1xOwP3N^(I^Swg%6iW9-Tj?rYVNV3<~RKmJWrOVr7YJNIZ+Rh-`#`fYA@2O zP}_o>6W>3*xu|?!w5auQMB1Ud2FM$tvbe9Iv$X@=4}S1m{PKL?l6yS{LxB$pL2Z>gX1n~liFi&*1 z38#}tT*xYS`9eBo4f{prZk*6MPIh^%h;Xw!U)w^7#;sVQ`QrHsb~LEIr;nWEU4G;s zNW2O;Nbve?{K1srUKFCAdbbvW79>EbX6_<_jubhvLzkPDqWlb{&6Pms!Wuw=P zIoBIJ9&(TG$V*iyGtfd?>+8by#dA9ZdxvHb8^TcZl3>8V!4NUq^;!fmq8Bej_u+y# zkLF~li9zZlnCybjcA+)|;q3hteiSuT7rDSfE6Om9VT$-Mq+$0JG#>Tkiy7EO+I!Gt z(0+tX&>@z18w@&6%BoqD==au+Q)y}I5IU7h`=y0lzw?xglVd3J{8Hq2`~>)J8@Br> zW_>Zr4V$WxLAwu{IPyMeV<|+8lSlf=fo)ZDZC|%>e7=2p+xzdw`+wpD|1cXEfyWDM zU1V3!Jsl0akC!|ftftHzm%KUwGM&@)G40;_a%~h^Mv_rT30-GsIpGN4{2+9wtq?3d_s>}*=O1KG`Glc%|~e3@jqzW^uIn` z-aKM<{4fblX`}u3(NnM`UWh1#dNp8ce8Ig1)Fpgl9|;>YetW0hq_A5J(xa{SIau^B zqbSOD2y+zfgXTQm?YK^moQp*2# zms;wbzXN8-rxcd3C;Wdtw2plRYl-(>}T1*X|&Uv#nX`M#Fxs8p$r&MQG}r zKY0A7Mn0z3lhF!?2CN4|Ib-x9iWdcPR}2eS&}#-HmjKGdACud$ne7!-nQM&pFu*kN zUfgdcseW#!-IX|Az4;4BqKM^lW#~yiX^jxR5`f-mp<-q6^Ld^#x+b;M70qG%q_mwlKUEZ`v>>4Rkr@jP&?9}d)^U4 zEv9t#IH>AJc-Ht=TxYRMMHfK0GTiUdFt=3qfh(C(hIyZB0XW#W?3gKIr(Ytq}AU8dGu&kKzWodR>~$m zU0i$)t-9~yt++!R7*QfTxm$YI>lBaN_4)%uKPBzGD8@S-_`GWK$R`h`m(iLeJ$b)@ zw@1Hm8z^HR*O=WJ*g&%I%5%MqEktM>XkbbS7&AsQ#YR~~j4?dAg%@)6xh$ zR_X4XAVx!cAlBofBe;rR(C9fdjcWFSTY1+qcuE#gaEDv2I@=*C$cJ*RT;KQj3 z8R{9WjRfh4zs^P{GUs?MmhyA-0MgTfeeLCHkID*$A;Ldjt6#|s-OnWEo4&C0iS zd~a@Un)|vFBe<}(_8U7OSIaI&M#Qkiyj(<&E|$8N zj>&>n@B>a(B=KN6yg=!^b+3p?DfhP=ox#rUBV(hEzW@&1I2kHnmEq*~+*oFaOa7}l zQG=vAI>g?uG7Fs;<0J9~7nZdhm#DxKb4Owy_s(HX`jUPXy4<#f8DOm-gJ|~Sx5S4l zE3pCb5YFL0vp3Ch4USO7hGU78vSx>gECTuEidA$u)mg$9?N4d}63#!8$$?1@QOgb{x*)4wzr<%a`zb>5Tn=2XRZ3>Kd zaQDA*KQ4xVH<*=HLmw}p51pf#LJZ$qLuB4i=?S^B4zdy1QSQ6+luUrc`eT%@Hkg}Rf zW}CNQjXU9`{3(NdgeHYbI^K8R2BfXNv`rrPxhX;|c_N_#X4=G~H+O4rC^>R{g{sXZ zA5jql7Nq|wIq;G#;~BHQYqEvQvmR48`$g=^MvGe8l?IP-{HdbXgjax%1OCNa68yOTK^ox^xjySoegqWx=WmmEPQe6<>Q ze>~oWBHS0ic0J|S7^dxxX%JXbT`em>Y%OlmN~hX7Zjqei{%|RUYJ*^DrcbyW^Em3~ zn|!lH9@K1Pb6|-p>Gwl^KWXRIiBCYl%CnIsi|~Z>^x>9J3@~Jr8;Yw06BWYZ+jom$ zrK>(e8($aP5zh6SzVW2}xU*gb%Qs$y24pB-8EzaSZwThR#6b3bcXuIY$(L)xqc8vu zWK%JSwK8OVeou9BEqPmvcTYalfO{?@VrpY&joZuH`R%f|?!jO`{e~7Vv&6nH(qn;5 zkQ-_aR`6^tv+vWTIn$HRnwy(@K~3`c)AI9i0U(CsyCLxlx3j|M5WZDCJ-tF_jspN3fB##ooz;c6 zKV8byESbCIaIJBOaG`PyR0{ejTSzYxewKa^++DXijEEOKTy9y^RMf4gv>$&MvwzsS zkUV|Zg}}KhTO73{b9TT6U3Hy6qLZl!SyuLAOSu@*0uCPL#$bjj8_~+*H-^av?*&S3 zqSIQ@|3&2ef9IwIJ*J*W)Z5L96|YzP;FuT^SNrJuH2^M$94)jhQYFBQ9@^On2yO@b z4D${hYdZLW83n7AOBy2Qh!aVLck9CZ5A0`#jGSqDDrM;C)=4I`b0+w^*ACMge~gf0 zP^Yg68@HlDajc(QcWK3RzNM8DYUqmMjNZr|Ntlr)*13hVyMu5GzL#eP-#&^4Eq<%2^68&)82OuP^e| zKBiSA(M(Yc%=*9R#b#urJ_T{R)HKye&-+BCsNU2PDafCy#q~_eELY9G(K4r%Hcyy& z-3g%1FPZ-ia^cj4Ot;W?q(4Tl3d6o-nQiYZI{mk6h!lB{9$1yl5^8RN89rATRdnz` zF4FBS>Li1SQH;cV=da6fLSKjNk@Vv-!<(qae5bw9bLh#6pDw0(OUl4T$A<6r2pOWA zOEd-fM=aVFawO|tIb%$i0)iB?X29pNSX?vC@^2&2x)-|@a326u*m>Hw?5l5w_F*y& zfB-#>lfv59G~VjowQ5C?0_7YKzc2nfA4n&r|_$$x&Sg|Tbs`xkSQSKPW z??l`bs0t})ZPhENtki8#!G#Xu%jgfVL+_7?KF*QzajKYzh3$8MGXL5nV_5fd`jN9y z!1)f}WauR_=n@&xZ{i6$X#!V~u$%#nsMBgZ8-e1Ri`&?TU|OUq6QC-5A@0728#S1I zk0Q7*YkPZJo>4kyZQOMtUv~Y4PjI4hV}P4Phhi;6V!pJz-0|_!{;?>8VG?Ty$Wh}X zx2mT+cfzE6C38PaR88ZHjZ7tO+k8pq70BeX1N|sAt&hCEC5zGg-{xlU7(PwV#K{u-q9Q z;MN2)={!7~_$w_wo9~x?5A$qw5|ZKaJ#I1-=2~cW&3Jrqhu3$t1f%N}zWYStoBK2R z4M@=+mH`D+F@>e1KDORK&LN- z@WVCEI20hK^j{1gD1lmbvc2zBt$gM2rJCWkD0-d~IVxXFpSy6GTC0MfCv>*w>ENT= zp0(g`y})RcU8x0W`A;TqyT0!1S!7Q{tif5tD;R^(u7h};NjW!TUYC`sU{{?KnkctV zz4{AW;e0LdGGT*k@;a{;``y{E|IF+0Jv60p24eZtksY{H0Tqy{$-cDMu{h*>{X})S>`b>hWydEr#X$uHDEYC(7+Qu!u z^ac{CU`0G#(&RB8v5b7*DzQlE%)9S+Fk3F{zj-Py*kP<9pK(;;FTX>z1BSP0!IJQ2 z)jALtl}!5xj;k$B|E3ur5&qRfk$po$SkQH|6g^!-U6@I%pv1tHpvPKgyd&P3b@OOO z?krF%C-N0*4HjBozbBba!k(5sI1NbH5BY77qE3bX#7PD#=;a%xejunk* zUu>#{W(%Ek*e?0>0q9(^!#a_h;mzz-)%JDPm;^EwS4Ba1`U#>cez8o3WuUWU19ZUI z*Bu*D_uMPug8P;c-eeZyc$1WK2ZZiG{3|x1Rf8SB@elgMwgmz~vugP~$_aI2ul*z2 z4O4|)n4W)*+z-)Uq|cKeFRs*}NltrMyD;n-<$icVfw?wStUC8FBucVO(nfr}4ZTyH z$=dznQ3#y-2vO5_s*6OH*0B)`!P)%s(ZvskD6WM{1>suJD5pMwK~LPOlf)_T?i$f0rd(-l(G-< za8M7_)#D$DVI6U;>BDs=Qrf(G7qQDc$AWxf=nJjGJiFW7!#@5A8ifkI-j6<)H>yOzH_@DPkC>Ky;d+3tN(WV2b(XMD6 zZo4}l{!0!$(_QEL%qwkFs#L|c24ovE13o5!sCM!b@Wl@(iSD2y`7f3=jN;v})o(+K z%tfqwg^9-HFPMG)>#6q7L(?IPcAR$}e@^k!2X5TJm5?WL6Eu(4{Y#bp_d$da+^qdi z(&q^1HY9ow;V1X@Or=sr%!x078YSA71icMX^qZ2itK${`C_^B_KpaeZrb1|M1`7>{ zTyrl)!_T7uB8D&Gu?U~`%_k!T&dV`^>9=3$H@{~Hl}`&kpmno>w(AcECI~R%M__}g zh63{hJ~aXzd3qHx>?$&}%0YQ70Ncc5OMk-w@Q@^}GCMd=vsJj?`m18b|CQtra?s6~ zS{|bjf~*{Vg-LpP^H|TmWfCw|sLa+7R|xm&8+c%OJgbd&?R%+W<01VP>*>wff+-<) z7Mj?nyms!)t8Ovs;)w#e+sY%cfG4(Vsk(Mr>jf;i-co=M>fwExJJkR2Ug;@AwGn&X zk%XU!+hIu}0WFr76y_X}`t2nUZv1KMQ~r_&+@fu+qfGZ`dGcA=%X-N*Fya7^Gs;B@#lIHx*IK?<8D^|406e=3Fh;^=y=fAn0U`= zV=tw%GKHMAGD&{UIR@0@B5{1AtqMBZoiI(LhS076%#bF(5=JQ2_yiFq2=!hkv|Yl^NR2n9V_0z-ezlHcRxOtV@K|#qD+w65iz-#(U4UnWA$hGFstSaIO$;zn$i6dN|*HR#P+${^!uu4r>VYRS%JB zV+x!0%lc@T1t+)m#N0WNrk>JSZV1(y-q2>LOf6hy!7F%un)7B;mJ8pkdPW~3hM^f%26&qMe~ z-dAg{Lk7Z=ZgEoauNDrZZ>hLyx{&)hYRpHKzBayfoU9AW#cOq`4a@ai zVaC&T7+Bw-iN4tF^S=&1*+ZaNh(yOk|E@w6{i?dwX$I`^!W`&>MS|Q-2Nfyr`h!iE zv+GX)Dx&P>anycg+>^j7`-aR_o~*5gnkPV#3gaP?aJ)%in&mi7NZh!sll-Y@1bJ{x zkYW@NPKgu`LLgU?aj+{f~~0p5)>v!<(u+hbdITv@X1u`Gsr_DxHsWUt-FIYWPG zuKAarI#@Bn--t&bvZ-2S76nZarJDAo(&U+(QTuXX>5hG$=?JoTzp^J$Ac!u+_)H0)5@Mbs>II5Vl9$XaDy-E+@Sa6Z3H>ht4~y|!%ppZlfTesMn~ z*Oz$So#e}N^f&FS8}@A@D4zTqTwbx@cP|gB`>DO(M;vuviaaWrWjXI;xhoiQ%z+85 zRaXtO@6_jY$RJ8ghqffrg-7~Dh{dS zV_og*76C>s1r;s-s}?Hx<<)M<3NG>fR~aAIi{hwCCniLaXj%kd1dT5XVSTB?cEf=h zcK$PH?g|Dwr3ZQinKaoyemK_=qTN@=PiipDgU2r)j_n_{ATh@viXK&e#FUp?YN^Es z;eWQ7p5P}i|FNSJAfO<8c^iNXKhxax5J5HMk5?|AdkfiwT}3IIq|dhl#_|4pU`Tv- zG@($?62hld>uch^*;^^{>8Z(oU{r0CfPvxa{Av9<8S--I6ZDaIV!1f#7d-)8M^L>_-L5!#l(Obb=tA8lpOI8HL>!_>e&6((( zD9R+G1iRstv%ZNW)woKrV5VPPjnrF3@wAGI@AhCh0lo1E#J^!)cdoG^e1}0gA$>?o zmq z^xUsc378rK3CxIkb}$M&kBdh)H;d9F<_&asZv+2X z6X-KZJb(d!IWiv>n7xpL@U3XuA>+hygVv3p342QmhH!Wnss$nZ`6Lp4Hp&YSC2dO# zg@ByH3y_n($_M-jKRV@ic;|0viu8ewXWXHUvzZas-~OwT;@|z(fC%!)Bx9=3icbtU zCc>ZO#q-$4g_gqO{f9hdD1+6shRCMXr*TPRpX11X$)?Y$?>Puu%TGEuI1v7hF~Dn^ z3sf74sML+Klo;Y*KYhyoS>$X3&o;b1q9O#O@s3Ao!6Bkn8g*l7Nwn)_i{>p7cK-G| zW-d8sP!q|1&`wz2$V3+X@Feq(H~D~udn;!HDt+H7>&o#dkW#gYl$W$D2vyM^|7N4t zVi95>ZPIZMb04Xw!kqw6c6qUzV~>5v8q=|%+!k!~15 zB?STLZls%`r5hBG4k?lD?(XiPK^g`aV2J{qA@FYn|m{jcY0MJLf#HpZ)AD z`7~byew7*BoU3G!Ix&_-#kCWUm-7jFeoNZ&uFa;*_Xk7SS^ityTv>roH0?$Fd;cq$ zru???eDJg9q;pw;;|kN5n}6ImU5+JIIMI~(bP^&@vF*|9MB%s0ul7^#{CIwI@2-)b z_hISwLy8C|89Ce&%ylI2xC;=G&!tzONE|T)#$&`C<Ef*xxq;}Utfj*q z7NkYPc9q-tkIL-lQt*76RYU|+>2acJ^Fa+AokX?Pvfo|D+EScJ5-h4^i4$W5?gcb~ zsJF4V+0A>Bkll`es}LX4Rq?ikR&dC}(b5aDNp==Rwu8h`rF{0^+_8Kw7;c!$szq-mU9cLLxveVu|E$OGY4fN^pWaSq-^Dx0tr-w@H zd^rMA!Wdv9rR65vH-_#(;)Juvdr$xfaL9rAutc+;9}9nC#kl?A{uUrfcb`Sh+D7fXnQkQ{Iw?M)%gY` z70YPg_Tlbv)5+``p-Lr%9S_%-zi6;WbnVXscjubRX?EmE;T)qi&saSSWjlWAwF3X# zgedqnTw(EbO~fFv&{gcc0*!!|(p_XrOY?%=Un%5oyv>9hDXfB$`xWdP4RDzKnkbyH zOoN-h>e!RM%;LiWY3{^vYPqgtIfH}c#8HHKi-gboq^NkyHQOC<(DrP!&UEdeR^#p7 zOxC{l2l^Vhmk%l`5vr)z+wF4h3zgbmO&)->^wlwKDvC3sBcF}J2%jl%+kh_Iy~{3C zHjznPKnBBML+N2F#uQO|KmG-JvI7FIfw(V|^hV9INn#V6P(vGp%Kk5m>lG%*G0o-K zr0Fcbgu=*M4rjHOTVN|?D9>KW3q7j%lBM|qrsp#jrfv5}c09J&qXeh^;*!sM!2^iX%x`Nb`PDQs=XiZEjnbySlu1ptuVo_7Eom$>=jBPZS~1xS zmebvZDcxm&MugeM;H4M4x19cIqR82PKAS)a;8}dpnU8ayc`!~Y5rE$|1*o+@-nTub zuoBaI%YxBFoPpBkEz0D`WNWFFP+t0tV|HNw5HPLWtz^XeGI@1|CO_13P<+zVs%vJ7 zbN#sB1>I{bW?ga90&^_vdks{YEYzRaN0>?>P+&6#Z6Wz1WKXI^sm-_-d2;Zqf^+pg zt~fY7x^vXM%>D4utyxWyTn>pbh}{4qitD%?ZK?8=TP5Sq6S!U_Kom6`>XWRTq5Mtx z7DB!%D!Y4F1=DJ4`Q9?814%pI%Z<@m@;U1veN}dRN$in!{FIuyXd^-R=BloZLG0nI zZSfLWjPaCprWRddXSK!73hpG}*M2E0*)UFn%~1d@ddyDmtbZu?^a$xckQw-m-uiIK zvIWq6$1Ng>PSD3W)&&JD^L!9oY+ruxc_1XtGSy1;BSV=`Tp?N{jC=`{Z2`~LWBH~{ ztHn6QA7k#MY)~EwX$tKW^$(^+c9XA1fJMpeB9_eZ0r_2MSTnWIRhU4upTwCAricCc zdb67yX_s$=CxYw?-~%YYYmQLo|eB*6ff*=BP$5t605NlusTy}g~Zo#}i1IQV$x z2C3^G-fR2ZYms9bD658X=>uzme4?ftwMeKxxdGgn?7$;;$rfi*6>R5Kdq<%pE$$8v zASIz6ZBCR)X(CRGITF={3C|d-Q6o=)^NC?nUNY9vDOu$Py{)fB#5gX`7L%oD59alA zMUpsxwZcShHfbIURn+yi*9c7Z8cAXS&)(K2#}|65SKbqD@2g?fojHbLxM zKR}lL#gR51CVNA0Yz+WM>`g2qWBP1uciUCWFP+b~?y#}PIkLv2sVGH#`0qQ6V?^>j zbgkhzF=t>7;gRy-=8%ojr`U^GUJ5AqVq))NH;G&jm@n;R=7zia6z z7LJE>bv(K4juCs9&!`xW>Fe!%n;Pv~$X!np6v#Wxz3kSt7r6-ro)Mm1^vCO%NB;GV z?OhHPF4yAP8jL9VHhqAlV$$bG;}t7=8dOekL3V?uq%Z0+*Ay3wiY_2H$q>II)&y?vCB7{&j~MVmDxc1`o> zAtC^kTph&Nv00kNJk_>4n(alQkB5sSKh=2FluWq5H91Ir96U<8Pz^a3tb@-$voLq&G0hPB zBe~U~z8c|ED$H1fzb?OBO!+9sKIqLB!COBRGg?Gpka)Rg1Ur7KIZVXyaGp!R>-aF1 z7E2P>W*#r1imul`88y?eqk@6ji9?XNu3XOJ;M)jE3jRbHWp)7EC&N4DZaocO8L+i$ zsqMcT&z52q?=i9@D=o+2KtK0$%(9suyEnw!_S|W9R;Bq6Fj5GLqvQqOY6#W zE|kGphIPQdp{LCmqDWCc^cp#^h+U5kjM*dL4;Zj2qa#==j6Xe5&FNdex%|>r5lchw zz!;j1&x1=ZJS|o(BV=vUY=rc}eXHxCzPIq_iWWy>lgoj_3~_-lXRD-rE#SJoP=BUQ zM7B{iLAZ~66%x`0pRq(3#f#(Hr`u0Yz$+NZV&}iaK1pv}Uo}(iQz2c$MmjQeukNPU zMm5!G^J%FOxZuJEZBX*JPT{SeeBK`aIbp$-61BzOVSkQ@$etqxIEOFOYcV{|d(%mD z`-@tQWx&}s_5oO%lW{}#!2zthQKSc74tw*vTC7=c8|2Y0#KEBfD1qj0>sn5Hu$!F= zK)pqD4~A5l9z-6YE0a!;eqOF00Eyh+BRc|GX$S9B^xFpv_kE5gYL(4tML{BcUgr9+ z`!pCo-ab)p#nSXTy0B76AvAD+u|QO5hwS=QDH8~^Cp9@WRgGIxF6dVqGWL1;fyL`M z>|ynzIdto4$&SyQ&Aw!<8Y+4@znq236is>44+==WmTu!D#x#CTU)#yAuA^f^pyWV3 zjatop5lEIqVCa_N36ggHa&^UPovRv0qeMw$OLOTA6M@a=-FlszRQWu;#4+uhE!e#M zDhLv?Rqdmd;GOjo<7JG58$_cDf7+i$>QtZp5ym{Ng0YiUF|hI*VKH+Gt>c+3LCI7# zyPGTh>xQLB7>Jv*^F$eaYI5>diLNgD1YM9TKFdZU1I`H%z!pF?h)YQ^1b=pQ{T97> z!~7gYN&jtqFqshNtbu%od-!=h%SAeV#D>djOda8SKsO-}9$FzRwRTrnmde+Z!DkO% zvq79A#N2$bFV-EuHeQV8N=efum40$vqOj>Rm`(snuTPr)q4;(DF?TG)eCxM-Kf|p( z#xR{HrGj6yAjTQjRi;I!oeHV4`Eq8qJ>(>^VD4DSv)9=-;3~kp(Dc^3;Y0ent-@H* zckq=8Mjcf)#%}(zLDsV51njLI%cOoR-s#JS2hoT^+ybmUsWiAo8afu6J!NDR0l~T} z4ojCMn@8p#7(b<{q-6N^#k4KU`XYdZcQ1-0%S(6iNN9%`6ILtnvr9G!uVIP-` zyEYGyZOc;6{n9U(^U7#0#ro*b7Sf#kkmcjI@-Zqu=<16oA{bHBX`k%;BysMyw({rz zqxqd?gX34d0(^=<+H*A73k}5;SG{znb+>+V#Zk%BUCkEHuQTS=zXo)y6A4Be$3;C8 z6_VL4C@d8bjGge0-q-Ruosx{)0*c@Ai^xP6#f>^Cxo(ApYN`AlJ-+%i*%nHp z?kadvaqv06`&nvSSZMw2b`}>5Vd1eAnVgFDq@BgcPg(PhSRAUF zE{$qLP6f2mhHOMeDeRgp6`Ly_KEJ+V-y(8l;P(u+wS?wJS!s_ZVbt`!jss%0A0I}0 zbhJ4V3V#O_X?Elg0%YJHVh$TY3y)3JZ7*kdNJJKWKdPx)#)fMx)rr?2L{GW;J{Em4 zcHm|{9y2C`r~J>6wkM#-XvBD&vk8-60@^Q3eqTD>3ndwkXo-J07u6F>qRUfD_@Qpb z7^8Fs7|UjD;$lZcoEe~Vv65sO=lmXRI{wB+%xM^R;Vk_86G-XO(fjcp_UWl5Td*w1 zkS$q8fHQ@6*3sYt?zUgO(_HC_)$rgf>P!MFI!T<=UJUBs%*;n#0UcFUV_yb4%{yGK zRXI%W3JC)=6>N|hp7+`N+H$yAfGTX0?mGo_V^rF-lAqWko`oZ?Rn zK(5j>C=&4;KeDn6T6Pv*ibIU&DDR1G5fTYHNfSpbeXl8&PJ<4Pt-P!_Cw;u2I||I5 z!Q9~$%ooUjpcb=ero5P+cNT~EJyb@_udz;DM9s`nNb(WGpKc#pPbDP%_F$UoR6@5G zZHIyBv?tgx+crl`3LIeIJC@;f$xQ~&H{Tc=z|vDu-?eM*3+8%)WLUikhIXaS9wGrj2h{IA0s~Q{4ENo!mrM#iH{?5P39K!CsYLtRi<}`@*k@pWjyL2L}h%k@6pCPJ&*9ScOsCqwCoa!YB z?>MRGNKulI@ZZ|mS@iPeoj~c`D;S5^0CVpp^G$Q3$sw!T=x@iz6mGD zo|^?XelHUv<6>t%AQ1eiZLts+pA$`A#UaPZr`-RV4EE)ES+435QoD-TmiNJx-r5;lIIgt3Gc9zJ06#KDOo(~rlLm#}KJeFMy&SO2JBj%?T~ zSSQ1T{Rq`L5>D74Gg!YcKkn-mP{vcPTfat9X*xUn@+Je?L^Gwa+U2kS5I7I@s7&1m z`8#f=)gr%+3XB5+jAzXu2kY$O92^`pj?a;E+4q0d5tedwcLBrZnpHNy_?o4QLfsY1f7aj1`yz;+Q8wpB& z1l;$njPgexE|q@y@>YGklo~)iF2jLBN`i(hxINR%u*g^+I8>t`*p`W`E@O0LxEC05FS34apjb1q>SLM z%^fyT1u!n>l%VL&Eo*yd4DVr28Ap?>pIA({CS>ZzE-NgG3fOdlY7HMSqf&`TL5)*X&d>a&jJCRhAKl{NrRLl*ymDA}a9f>!>% z!1oqi!1XX$TJqtv3t1{)W8xe^0(+5|d8TUSC+kDTJGxPe8?vF@dRP2C@wHmOwfRP_ zr9rA0dbMFZ13BvVA^pIgVNaHB z8Aj->grN4+y4Uin4W8nok38E;ZQG1jL{BE`P2Q?S!K7f z!Z{Dnj0<5a?AtXiY|Fk>`NM}|Tq<16Z)rd=+FfH{o&L3F;KW2v-cK=_#q z(aoz~FL!HEm;GsFuv00+trtI`CeX8mnX)+Et+zb`g8C|)XbaOg9?t!ApMqXACW&D% zSoF5-VeWD2ILyJ>nx@8dXciNK)kt$-c0yoD6_H-9j5<&h<320uxD{F>f|1{n9*cf~2}u4vCQ%AH zYXUe7Bd{#O6~ab_6~Z#DWD|aog}(im?((_lCgC@WG z$F6($_S9zPo}eFZDnlSGF4SRNu+1%1kn~Ge7l+t&tcgkfK{Ggh&W4>~YOCN+Y+Lg{ zvd3K+SLSGYynjzJj-*&@s2xJPvZ4aj99u3O6^$m=jZGkB|NWgPD!i2UWP08r3>)X$ zH0pjV--kKdLQWBuPqy^y9fTy5{IgO{ZJ79b8tWcEWdt~iY%Au5qJDi?SZ4V+A~LzW zT8uj@H0|LSf;qijYNia64Y=p#Vfr*{iGW@*u?RHxUJIWo=tF*REk^d>3N?4#}T_u>O7E zHu2NLSYU{=*l2tK*31m%VZNfw!7VFROV%s2Ca&luuRRufgo@RfM~#n%p_?}t=J%fd zfIEHXgRANf^pV9nkpAQp`2}nkYNb8GN{=9`8@lB&l&s0(| zG_vA)Uf8VIt-Q5WkEq8eb8U^5h!`XT`mQ0x7T+uB3zAEf_vnqEqc{q5^m|+Vq)($n z({f{RYfDZ0jc_w1KW?dnGJf;(CX$~lEKQ)Vny0oAt$;&=*XYnQ>ZcB)Pl@Y6`!ybG z{^-M-TJPUi>9x6f?Mc5;2N`zr1Zi^UiIf?3+XrkAb)oPsB7@NQ@veG!aGp4aWo*`r2H=$P`GjDORWPPmcLV_DkOM4b zL>f|u+zWD+q3XNk&OuA~G=3EPw^ov?wDXGZ-;>G*WQ|G&Ew8Sc$)J$wauEcGBHQA^ z(f3_KBO+?7328D7s1+PU#%Ebx6Zl(4dIq~jL8W3dl9O#F8afD%&|D@7?6X_4aAjqJ zQ#m4%EH=uhAU_4d>L{AM5IHSZ15}QW&?RYVrH=MKeYhl(B>!s zkXDINp_WE`Nk7YI?(7PgXy72qC(v=tlU)hpw1T*0J98kHIA+e*3u!lmPGOJiyhmgd10FS!o0IHkB^Qj3eOdvx_QSK zZ`3i|_uh!qOC`r}k$?#aM^Ovd$qJai+bc$fo!Uf;c0PNw7v93WoSGt#v{$S)pI#UM zKqNifz7#o0pSgsPDH-iQ%zir`_@A;=fU&l_ms!7>2M;Qlksu;7PC^g z(@tYn;W{sX0TPvC+ZW-NeO4&z6i*-arSc$kX8e8a24~`vf1A!kBxp#!I*TIJXRxK+On;*yP%*H>? zT&KmFkmS6ozeTxNX}O}xD9dqyFxqOIhDV#zUVJSKlygV3r$Ik^M(MHUG~IT_$YOU* zHAs_()p~kZVIWZ^Fy2*R|0>-FuCGBh zD7O~Zh0xDacv55ofMgC=dqrrx|LY`z(+#tJ3^JnoWbPdAT&HML>nMU%RjaadaYmo49Dl!maQ8ip5*@&wQg*3gJq7{@Ad} z!piC!u)m**Y`{MoEM?T(DH_59Dz|N1^6FE45}I6biHB{KXj_xAFAz8rt^A3CcAc)V zXir#Odhab(4wFRSJR=D8y+v$Wci|Do8-8(y+@@LVAe8kMa*h-kM!)_Y4d>>AkE7&! zI*+?Mq5h!)vd#ody)L_&mUU+K0?7Q?Gu@b(}go>67*{7QQw zK6tV8ip=wrw<5W⋙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 z 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 literal 769576 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⪙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%0Dn?JC~Gwr1KA@oYh89zQ!SzdNw=X&DY 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 rLOLfWL8_UAH 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

    OZFGUVB}@0q-uuGF{|hQ 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 Date: Mon, 25 May 2026 11:04:39 +0200 Subject: [PATCH 09/11] test(0.6.2): align CI suite with 14-bug fix wave MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updates the Python + TypeScript regression suites to reflect the public behaviour changes that landed in 0fc4615 / f16bda0. No source-code behaviour changes — only test scaffolding + one defensive ``getattr`` on ``_adapter_cls.__name__`` so the debug logger doesn't trip the ``MagicMock`` patch surface used by ``test_local_mode`` / ``test_validation_guardrails``. Python (8 fixes) - ``test_twilio_handler.test_stream_url_contains_caller_param`` / ``...callee_param`` / ``test_local_mode.test_twilio_webhook_handler_url`` now assert caller/callee travel as TwiML ```` children of ```` (the ``parameters`` kwarg on ``generate_stream_twiml``) instead of query-string params on the WS URL — Twilio strips the latter before the WebSocket handshake. - ``test_providers_io_unit.test_cancel_response_sends_cancel`` now seeds ``_current_response_item_id`` before calling ``cancel_response`` since the method is a documented no-op when no item is in flight. Added ``test_cancel_response_noop_when_no_item_in_flight`` to pin that contract. - ``test_local_mode.test_mark_events_sent_after_audio`` / ``test_validation_guardrails.test_guardrail_triggers_cancel_and_replacement`` / ``test_providers_unit.test_realtime_engine_forwards_reasoning_and_transcription_to_adapter`` now patch ``OpenAIRealtime2Adapter`` (the GA adapter) instead of the v1-beta class — both ``openai_realtime`` and ``openai_realtime_2`` engines route through the GA adapter after the upstream Beta API deprecation. - ``stream_handler`` debug log now wraps ``_adapter_cls.__name__`` in ``getattr`` so the three tests above (which patch the adapter class with a ``MagicMock``) don't crash on the missing dunder. TypeScript (4 fixes + 3 skips) - ``openai-realtime.cancelResponse()`` test seeds ``currentResponseItemId`` and added a ``no-op when no item in flight`` test, mirroring Python. - ``stream-handler`` barge-in gate tests aligned with the AEC-off gate raised from 100 ms to 500 ms on 2026-05-19. ``canBargeIn`` / handleBargeIn inputs bumped 50/200/400 ms → 250/700/600 ms accordingly. - ``prewarm.test`` no longer asserts ``prewarmFirstMessage === true`` by default in pipeline mode — the 2026-05-18 default-on attempt was reverted on 2026-05-19 (phantom barge-in interaction). Test now pins the opt-in semantics described in ``client.ts:536-547``. - Three ``describe`` blocks marked ``describe.skip``: ``firstMessage mark-gated pacing``, ``cleanup drains pending firstMessage marks``, ``firstMessage mark counter resets across sends + on cleanup`` — the mark-window pacing plumbing they exercised was replaced with burst-deliver in commit 5574997 (``sendPacedFirstMessageBytes`` / ``firstMessageMarkCounter`` / ``sendMarkAwaitable`` no longer exist). Kept as ``skip`` rather than deleted to preserve the historical intent. --- libraries/python/getpatter/stream_handler.py | 5 +- libraries/python/tests/test_local_mode.py | 168 +++++++++------ libraries/python/tests/test_twilio_handler.py | 19 +- .../tests/test_validation_guardrails.py | 64 +++--- .../tests/unit/test_providers_io_unit.py | 192 ++++++++++++++---- .../python/tests/unit/test_providers_unit.py | 6 +- .../tests/unit/openai-realtime.test.ts | 22 +- .../typescript/tests/unit/prewarm.test.ts | 9 +- .../tests/unit/stream-handler.test.ts | 44 ++-- 9 files changed, 373 insertions(+), 156 deletions(-) diff --git a/libraries/python/getpatter/stream_handler.py b/libraries/python/getpatter/stream_handler.py index 2ed4ef51..7f87983b 100644 --- a/libraries/python/getpatter/stream_handler.py +++ b/libraries/python/getpatter/stream_handler.py @@ -1096,7 +1096,10 @@ async def start(self) -> None: pass if not adopt_ok: await self._adapter.connect() - logger.debug("OpenAI Realtime connected (adapter=%s)", _adapter_cls.__name__) + logger.debug( + "OpenAI Realtime connected (adapter=%s)", + getattr(_adapter_cls, "__name__", repr(_adapter_cls)), + ) if self.agent.first_message: # Start measuring latency for the firstMessage turn (sendText → diff --git a/libraries/python/tests/test_local_mode.py b/libraries/python/tests/test_local_mode.py index bcf30fd5..08fc7b42 100644 --- a/libraries/python/tests/test_local_mode.py +++ b/libraries/python/tests/test_local_mode.py @@ -35,7 +35,9 @@ def _twilio_phone(**kwargs) -> Patter: def test_local_config_defaults(): - cfg = LocalConfig(telephony_provider="twilio", phone_number="+1555", webhook_url="x.ngrok.io") + cfg = LocalConfig( + telephony_provider="twilio", phone_number="+1555", webhook_url="x.ngrok.io" + ) assert cfg.telephony_provider == "twilio" assert cfg.openai_key == "" assert cfg.twilio_sid == "" @@ -93,7 +95,9 @@ def test_agent_pipeline_provider(): ) assert a.provider == "pipeline" assert a.voice == "21m00Tcm4TlvDq8ikWAM" - assert a.model == "gpt-4o-mini-realtime-preview" # model field still present, unused in pipeline mode + assert ( + a.model == "gpt-4o-mini-realtime-preview" + ) # model field still present, unused in pipeline mode def test_agent_factory_pipeline_provider(): @@ -182,11 +186,18 @@ async def test_serve_calls_embedded_server(): mock_server = MagicMock() mock_server.start = AsyncMock() - with patch("getpatter.server.EmbeddedServer", return_value=mock_server) as MockServer: + with patch( + "getpatter.server.EmbeddedServer", return_value=mock_server + ) as MockServer: await phone.serve(agent, port=9000) MockServer.assert_called_once_with( - config=phone._local_config, agent=agent, recording=False, voicemail_message="", pricing=None, dashboard=True, + config=phone._local_config, + agent=agent, + recording=False, + voicemail_message="", + pricing=None, + dashboard=True, dashboard_token="", ) mock_server.start.assert_called_once_with(port=9000) @@ -241,9 +252,13 @@ def test_twilio_webhook_handler_url(): MockAdapter.generate_stream_twiml.assert_called_once() call_args = MockAdapter.generate_stream_twiml.call_args[0][0] - assert call_args.startswith("wss://abc.ngrok.io/ws/stream/CA123") - assert "caller=" in call_args - assert "callee=" in call_args + # Stream URL is the bare wss endpoint — caller/callee no longer ride + # as query params (Twilio strips them); they travel as a TwiML + # ```` child of ```` via the ``parameters`` kwarg. + assert call_args == "wss://abc.ngrok.io/ws/stream/CA123" + params = MockAdapter.generate_stream_twiml.call_args.kwargs.get("parameters", {}) + assert params.get("caller") == "+14155551234" + assert params.get("callee") == "+15550001111" assert result == "" @@ -267,7 +282,10 @@ def test_telnyx_webhook_handler_structure(): assert any(c["command"] == "answer" for c in commands) stream_cmd = next((c for c in commands if c["command"] == "stream_start"), None) assert stream_cmd is not None - assert "wss://abc.ngrok.io/ws/telnyx/stream/ctrl_123" in stream_cmd["params"]["stream_url"] + assert ( + "wss://abc.ngrok.io/ws/telnyx/stream/ctrl_123" + in stream_cmd["params"]["stream_url"] + ) # --------------------------------------------------------------------------- @@ -314,16 +332,20 @@ async def test_twilio_stream_bridge_pipeline_sends_audio_to_stt(): agent = Agent(system_prompt="test", provider="pipeline") # Build a fake WebSocket that returns start then a media event then stop - start_payload = json.dumps({ - "event": "start", - "streamSid": "SID123", - "start": {"callSid": "CA_test"}, - }) + start_payload = json.dumps( + { + "event": "start", + "streamSid": "SID123", + "start": {"callSid": "CA_test"}, + } + ) mulaw_bytes = b"\x00" * 160 - media_payload = json.dumps({ - "event": "media", - "media": {"payload": base64.b64encode(mulaw_bytes).decode()}, - }) + media_payload = json.dumps( + { + "event": "media", + "media": {"payload": base64.b64encode(mulaw_bytes).decode()}, + } + ) stop_payload = json.dumps({"event": "stop"}) messages = [start_payload, media_payload, stop_payload] @@ -351,7 +373,6 @@ async def send_text(self, data): fake_ws = FakeWS() # Patch DeepgramSTT and ElevenLabsTTS so no real connections are made - import getpatter.telephony.twilio as twilio_mod mock_stt = AsyncMock() mock_stt.connect = AsyncMock() @@ -372,7 +393,9 @@ async def fake_receive(): # bridge instantiates the plain DeepgramSTT constructor — not for_twilio. with ( patch("getpatter.providers.deepgram_stt.DeepgramSTT", return_value=mock_stt), - patch("getpatter.providers.elevenlabs_tts.ElevenLabsTTS", return_value=mock_tts), + patch( + "getpatter.providers.elevenlabs_tts.ElevenLabsTTS", return_value=mock_tts + ), ): # Run with a short timeout — we only care that it starts up correctly try: @@ -534,15 +557,19 @@ async def test_dtmf_event_fires_transcript_callback(): agent = Agent(system_prompt="test", provider="pipeline") - start_payload = json.dumps({ - "event": "start", - "streamSid": "SID_dtmf", - "start": {"callSid": "CA_dtmf"}, - }) - dtmf_payload = json.dumps({ - "event": "dtmf", - "dtmf": {"track": "inbound_track", "digit": "5"}, - }) + start_payload = json.dumps( + { + "event": "start", + "streamSid": "SID_dtmf", + "start": {"callSid": "CA_dtmf"}, + } + ) + dtmf_payload = json.dumps( + { + "event": "dtmf", + "dtmf": {"track": "inbound_track", "digit": "5"}, + } + ) stop_payload = json.dumps({"event": "stop"}) messages = [start_payload, dtmf_payload, stop_payload] @@ -587,7 +614,9 @@ async def fake_receive(): with ( patch("getpatter.providers.deepgram_stt.DeepgramSTT", return_value=mock_stt), - patch("getpatter.providers.elevenlabs_tts.ElevenLabsTTS", return_value=mock_tts), + patch( + "getpatter.providers.elevenlabs_tts.ElevenLabsTTS", return_value=mock_tts + ), ): try: await asyncio.wait_for( @@ -612,7 +641,9 @@ async def fake_receive(): def test_dtmf_event_format(): """DTMF event payload includes digit under dtmf.digit.""" - raw = json.loads('{"event": "dtmf", "dtmf": {"track": "inbound_track", "digit": "1"}}') + raw = json.loads( + '{"event": "dtmf", "dtmf": {"track": "inbound_track", "digit": "1"}}' + ) assert raw["event"] == "dtmf" assert raw["dtmf"]["digit"] == "1" @@ -624,7 +655,9 @@ def test_dtmf_event_format(): def test_mark_event_format(): """Mark events from Twilio include mark.name.""" - raw = json.loads('{"event": "mark", "streamSid": "SID", "mark": {"name": "audio_3"}}') + raw = json.loads( + '{"event": "mark", "streamSid": "SID", "mark": {"name": "audio_3"}}' + ) assert raw["event"] == "mark" assert raw["mark"]["name"] == "audio_3" @@ -637,11 +670,13 @@ async def test_mark_events_sent_after_audio(): agent = Agent(system_prompt="test", provider="openai_realtime") - start_payload = json.dumps({ - "event": "start", - "streamSid": "SID_mark", - "start": {"callSid": "CA_mark"}, - }) + start_payload = json.dumps( + { + "event": "start", + "streamSid": "SID_mark", + "start": {"callSid": "CA_mark"}, + } + ) stop_payload = json.dumps({"event": "stop"}) messages = [start_payload, stop_payload] idx = 0 @@ -683,8 +718,11 @@ async def fake_events(): mock_adapter.receive_events = MagicMock(return_value=fake_events()) mock_adapter.send_text = AsyncMock() + # Both ``openai_realtime`` and ``openai_realtime_2`` engines now + # route through ``OpenAIRealtime2Adapter`` after the GA deprecation + # of the Beta endpoint — patch the GA adapter so the mock is reached. with patch( - "getpatter.providers.openai_realtime.OpenAIRealtimeAdapter", + "getpatter.providers.openai_realtime_2.OpenAIRealtime2Adapter", return_value=mock_adapter, ): try: @@ -701,7 +739,9 @@ async def fake_events(): sent_events = [json.loads(s) for s in fake_ws.sent] mark_events = [e for e in sent_events if e.get("event") == "mark"] - assert len(mark_events) >= 1, f"Expected at least one mark event, got: {sent_events}" + assert len(mark_events) >= 1, ( + f"Expected at least one mark event, got: {sent_events}" + ) assert mark_events[0]["mark"]["name"].startswith("audio_") @@ -718,14 +758,16 @@ async def test_custom_params_passed_to_on_call_start(): agent = Agent(system_prompt="test", provider="pipeline") - start_payload = json.dumps({ - "event": "start", - "streamSid": "SID_params", - "start": { - "callSid": "CA_params", - "customParameters": {"agent_name": "Aria", "language": "it"}, - }, - }) + start_payload = json.dumps( + { + "event": "start", + "streamSid": "SID_params", + "start": { + "callSid": "CA_params", + "customParameters": {"agent_name": "Aria", "language": "it"}, + }, + } + ) stop_payload = json.dumps({"event": "stop"}) messages = [start_payload, stop_payload] idx = 0 @@ -768,8 +810,13 @@ async def fake_receive(): mock_tts.close = AsyncMock() with ( - patch("getpatter.providers.deepgram_stt.DeepgramSTT.for_twilio", return_value=mock_stt), - patch("getpatter.providers.elevenlabs_tts.ElevenLabsTTS", return_value=mock_tts), + patch( + "getpatter.providers.deepgram_stt.DeepgramSTT.for_twilio", + return_value=mock_stt, + ), + patch( + "getpatter.providers.elevenlabs_tts.ElevenLabsTTS", return_value=mock_tts + ), ): try: await asyncio.wait_for( @@ -786,7 +833,10 @@ async def fake_receive(): except asyncio.TimeoutError: pass - assert call_start_data.get("custom_params") == {"agent_name": "Aria", "language": "it"} + assert call_start_data.get("custom_params") == { + "agent_name": "Aria", + "language": "it", + } assert call_start_data.get("call_id") == "CA_params" @@ -800,14 +850,18 @@ def test_custom_params_in_call_start_format(): def test_custom_params_extracted_from_start_event(): """customParameters from the TwiML start event are parsed correctly.""" - raw = json.loads(json.dumps({ - "event": "start", - "streamSid": "SID", - "start": { - "callSid": "CA123", - "customParameters": {"foo": "bar", "baz": "42"}, - }, - })) + raw = json.loads( + json.dumps( + { + "event": "start", + "streamSid": "SID", + "start": { + "callSid": "CA123", + "customParameters": {"foo": "bar", "baz": "42"}, + }, + } + ) + ) start_data = raw.get("start", {}) custom_params = start_data.get("customParameters", {}) assert custom_params == {"foo": "bar", "baz": "42"} diff --git a/libraries/python/tests/test_twilio_handler.py b/libraries/python/tests/test_twilio_handler.py index f96100d2..7027b1bc 100644 --- a/libraries/python/tests/test_twilio_handler.py +++ b/libraries/python/tests/test_twilio_handler.py @@ -1,7 +1,6 @@ """Tests for Twilio webhook handler.""" -import pytest -from unittest.mock import patch, MagicMock +from unittest.mock import patch # --------------------------------------------------------------------------- @@ -74,25 +73,29 @@ def test_stream_url_has_ws_stream_path(): def test_stream_url_contains_caller_param(): - """Stream URL includes caller query param.""" + """caller travels as a TwiML ```` (Twilio strips URL query).""" with patch("getpatter.providers.twilio_adapter.TwilioAdapter") as MockAdapter: MockAdapter.generate_stream_twiml.return_value = "" from getpatter.telephony.twilio import twilio_webhook_handler twilio_webhook_handler("CA123", "+39111", "+16592", "abc.ngrok.io") - url = MockAdapter.generate_stream_twiml.call_args[0][0] - assert "caller=" in url + params = MockAdapter.generate_stream_twiml.call_args.kwargs.get( + "parameters", {} + ) + assert params.get("caller") == "+39111" def test_stream_url_contains_callee_param(): - """Stream URL includes callee query param.""" + """callee travels as a TwiML ```` (Twilio strips URL query).""" with patch("getpatter.providers.twilio_adapter.TwilioAdapter") as MockAdapter: MockAdapter.generate_stream_twiml.return_value = "" from getpatter.telephony.twilio import twilio_webhook_handler twilio_webhook_handler("CA123", "+39111", "+16592", "abc.ngrok.io") - url = MockAdapter.generate_stream_twiml.call_args[0][0] - assert "callee=" in url + params = MockAdapter.generate_stream_twiml.call_args.kwargs.get( + "parameters", {} + ) + assert params.get("callee") == "+16592" # --------------------------------------------------------------------------- diff --git a/libraries/python/tests/test_validation_guardrails.py b/libraries/python/tests/test_validation_guardrails.py index c93486ba..d6a4a016 100644 --- a/libraries/python/tests/test_validation_guardrails.py +++ b/libraries/python/tests/test_validation_guardrails.py @@ -7,15 +7,12 @@ import pytest from getpatter import ( - DeepgramSTT, ElevenLabsTTS, OpenAIRealtime, Patter, Telnyx, - Tool, Twilio, guardrail, - tool, ) from getpatter.models import Agent, Guardrail @@ -215,9 +212,7 @@ def test_call_validates_e164_no_plus(): phone = _local_phone() agent = phone.agent(engine=OpenAIRealtime(api_key="sk"), system_prompt="test") with pytest.raises(ValueError, match="E.164"): - asyncio.run( - phone.call(to="0039123456789", agent=agent) - ) + asyncio.run(phone.call(to="0039123456789", agent=agent)) def test_call_validates_e164_empty(): @@ -225,9 +220,7 @@ def test_call_validates_e164_empty(): phone = _local_phone() agent = phone.agent(engine=OpenAIRealtime(api_key="sk"), system_prompt="test") with pytest.raises(ValueError, match="E.164"): - asyncio.run( - phone.call(to="", agent=agent) - ) + asyncio.run(phone.call(to="", agent=agent)) def test_call_validates_e164_non_string(): @@ -235,9 +228,7 @@ def test_call_validates_e164_non_string(): phone = _local_phone() agent = phone.agent(engine=OpenAIRealtime(api_key="sk"), system_prompt="test") with pytest.raises(ValueError, match="E.164"): - asyncio.run( - phone.call(to=12345, agent=agent) - ) + asyncio.run(phone.call(to=12345, agent=agent)) def test_call_valid_e164_accepted(): @@ -252,9 +243,7 @@ def test_call_valid_e164_accepted(): mock_instance.initiate_call = AsyncMock(return_value="CA123") MockAdapter.return_value = mock_instance - asyncio.run( - phone.call(to="+39123456789", agent=agent) - ) + asyncio.run(phone.call(to="+39123456789", agent=agent)) mock_instance.initiate_call.assert_called_once() @@ -455,11 +444,13 @@ async def test_guardrail_triggers_cancel_and_replacement(): ], ) - start_payload = json.dumps({ - "event": "start", - "streamSid": "SID_guard", - "start": {"callSid": "CA_guard", "customParameters": {}}, - }) + start_payload = json.dumps( + { + "event": "start", + "streamSid": "SID_guard", + "start": {"callSid": "CA_guard", "customParameters": {}}, + } + ) stop_payload = json.dumps({"event": "stop"}) messages = [start_payload, stop_payload] idx = 0 @@ -498,7 +489,14 @@ async def fake_events(): mock_adapter.receive_events = MagicMock(return_value=fake_events()) - with patch("getpatter.providers.openai_realtime.OpenAIRealtimeAdapter", return_value=mock_adapter): + # ``stream_handler.OpenAIRealtimeStreamHandler.start`` routes both + # ``openai_realtime`` and ``openai_realtime_2`` engines through the + # GA adapter (the v1-beta API is deprecated server-side), so the + # patch target must be the GA adapter class. + with patch( + "getpatter.providers.openai_realtime_2.OpenAIRealtime2Adapter", + return_value=mock_adapter, + ): from getpatter.telephony.twilio import twilio_stream_bridge try: @@ -528,15 +526,22 @@ async def test_guardrail_does_not_trigger_on_clean_response(): system_prompt="test", provider="openai_realtime", guardrails=[ - {"name": "no-bad", "blocked_terms": ["blocked_word"], "check": None, "replacement": "..."} + { + "name": "no-bad", + "blocked_terms": ["blocked_word"], + "check": None, + "replacement": "...", + } ], ) - start_payload = json.dumps({ - "event": "start", - "streamSid": "SID_clean", - "start": {"callSid": "CA_clean", "customParameters": {}}, - }) + start_payload = json.dumps( + { + "event": "start", + "streamSid": "SID_clean", + "start": {"callSid": "CA_clean", "customParameters": {}}, + } + ) stop_payload = json.dumps({"event": "stop"}) messages = [start_payload, stop_payload] idx = 0 @@ -572,7 +577,10 @@ async def fake_events(): mock_adapter.receive_events = MagicMock(return_value=fake_events()) - with patch("getpatter.providers.openai_realtime.OpenAIRealtimeAdapter", return_value=mock_adapter): + with patch( + "getpatter.providers.openai_realtime.OpenAIRealtimeAdapter", + return_value=mock_adapter, + ): from getpatter.telephony.twilio import twilio_stream_bridge try: diff --git a/libraries/python/tests/unit/test_providers_io_unit.py b/libraries/python/tests/unit/test_providers_io_unit.py index 71ada0a3..166ff8da 100644 --- a/libraries/python/tests/unit/test_providers_io_unit.py +++ b/libraries/python/tests/unit/test_providers_io_unit.py @@ -80,6 +80,7 @@ async def _fake_ws_connect(mock_ws): def _ws_connect_side_effect(mock_ws): async def _connect(*a, **kw): return mock_ws + return _connect @@ -100,7 +101,10 @@ async def test_connect_sends_session_update(self) -> None: mock_ws = AsyncMock() mock_ws.recv.return_value = json.dumps({"type": "session.created"}) - with patch("getpatter.providers.openai_realtime.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)): + with patch( + "getpatter.providers.openai_realtime.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ): await adapter.connect() assert adapter._running is True @@ -136,12 +140,21 @@ async def test_connect_honours_custom_silence_duration_ms(self) -> None: async def test_connect_with_tools(self) -> None: from getpatter.providers.openai_realtime import OpenAIRealtimeAdapter - tools = [{"name": "search", "description": "Search", "parameters": {"type": "object"}}] + tools = [ + { + "name": "search", + "description": "Search", + "parameters": {"type": "object"}, + } + ] adapter = OpenAIRealtimeAdapter(api_key="sk-test", tools=tools) mock_ws = AsyncMock() mock_ws.recv.return_value = json.dumps({"type": "session.created"}) - with patch("getpatter.providers.openai_realtime.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)): + with patch( + "getpatter.providers.openai_realtime.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ): await adapter.connect() sent = json.loads(mock_ws.send.call_args[0][0]) @@ -152,11 +165,16 @@ async def test_connect_with_tools(self) -> None: async def test_connect_default_instructions(self) -> None: from getpatter.providers.openai_realtime import OpenAIRealtimeAdapter - adapter = OpenAIRealtimeAdapter(api_key="sk-test", instructions="", language="fr") + adapter = OpenAIRealtimeAdapter( + api_key="sk-test", instructions="", language="fr" + ) mock_ws = AsyncMock() mock_ws.recv.return_value = json.dumps({"type": "session.created"}) - with patch("getpatter.providers.openai_realtime.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)): + with patch( + "getpatter.providers.openai_realtime.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ): await adapter.connect() sent = json.loads(mock_ws.send.call_args[0][0]) @@ -170,7 +188,10 @@ async def test_connect_raises_on_unexpected_first_message(self) -> None: mock_ws = AsyncMock() mock_ws.recv.return_value = json.dumps({"type": "error"}) - with patch("getpatter.providers.openai_realtime.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)): + with patch( + "getpatter.providers.openai_realtime.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ): with pytest.raises(RuntimeError, match="Expected session.created"): await adapter.connect() @@ -195,9 +216,30 @@ async def test_cancel_response_sends_cancel(self) -> None: adapter = OpenAIRealtimeAdapter(api_key="sk-test") adapter._ws = AsyncMock() + # ``cancel_response`` is now a no-op when no item is in flight + # (avoids the ``response_cancel_not_active`` log spam every phantom + # VAD ``speech_started`` would otherwise trigger). Simulate an + # in-flight assistant item so the cancel path runs through. + adapter._current_response_item_id = "msg_test_001" await adapter.cancel_response() - sent = json.loads(adapter._ws.send.call_args[0][0]) - assert sent["type"] == "response.cancel" + # The last send must be ``response.cancel`` (preceded by an + # optional ``conversation.item.truncate`` when an item id is set). + last_sent = json.loads(adapter._ws.send.call_args_list[-1][0][0]) + assert last_sent["type"] == "response.cancel" + + @pytest.mark.asyncio + async def test_cancel_response_noop_when_no_item_in_flight(self) -> None: + """Regression: ``cancel_response`` must silently no-op when no + response item is in flight — eliminates the + ``response_cancel_not_active`` ERROR spam every phantom VAD + ``speech_started`` triggered before 0.6.2.""" + from getpatter.providers.openai_realtime import OpenAIRealtimeAdapter + + adapter = OpenAIRealtimeAdapter(api_key="sk-test") + adapter._ws = AsyncMock() + adapter._current_response_item_id = None + await adapter.cancel_response() + adapter._ws.send.assert_not_called() @pytest.mark.asyncio async def test_send_text_creates_item_and_triggers_response(self) -> None: @@ -248,7 +290,9 @@ async def test_receive_events_yields_transcript_output(self) -> None: from getpatter.providers.openai_realtime import OpenAIRealtimeAdapter adapter = OpenAIRealtimeAdapter(api_key="sk-test") - messages = [json.dumps({"type": "response.audio_transcript.delta", "delta": "Hello"})] + messages = [ + json.dumps({"type": "response.audio_transcript.delta", "delta": "Hello"}) + ] adapter._ws = _AsyncIterableWS(messages) events = [] @@ -261,7 +305,14 @@ async def test_receive_events_yields_transcript_input(self) -> None: from getpatter.providers.openai_realtime import OpenAIRealtimeAdapter adapter = OpenAIRealtimeAdapter(api_key="sk-test") - messages = [json.dumps({"type": "conversation.item.input_audio_transcription.completed", "transcript": "Hi"})] + messages = [ + json.dumps( + { + "type": "conversation.item.input_audio_transcription.completed", + "transcript": "Hi", + } + ) + ] adapter._ws = _AsyncIterableWS(messages) events = [] @@ -291,10 +342,16 @@ async def test_receive_events_yields_function_call(self) -> None: from getpatter.providers.openai_realtime import OpenAIRealtimeAdapter adapter = OpenAIRealtimeAdapter(api_key="sk-test") - messages = [json.dumps({ - "type": "response.function_call_arguments.done", - "call_id": "fc1", "name": "search", "arguments": '{"q":"test"}', - })] + messages = [ + json.dumps( + { + "type": "response.function_call_arguments.done", + "call_id": "fc1", + "name": "search", + "arguments": '{"q":"test"}', + } + ) + ] adapter._ws = _AsyncIterableWS(messages) events = [] @@ -380,7 +437,10 @@ async def test_connect_with_agent_id(self) -> None: adapter = ElevenLabsConvAIAdapter(api_key="el-test", agent_id="agent_xyz") mock_ws = AsyncMock() - with patch("getpatter.providers.elevenlabs_convai.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)) as mc: + with patch( + "getpatter.providers.elevenlabs_convai.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ) as mc: await adapter.connect() call_url = mc.call_args[0][0] @@ -390,23 +450,36 @@ async def test_connect_with_agent_id(self) -> None: async def test_connect_with_first_message(self) -> None: from getpatter.providers.elevenlabs_convai import ElevenLabsConvAIAdapter - adapter = ElevenLabsConvAIAdapter(api_key="el-test", agent_id="agent-test", first_message="Hi there!") + adapter = ElevenLabsConvAIAdapter( + api_key="el-test", agent_id="agent-test", first_message="Hi there!" + ) mock_ws = AsyncMock() - with patch("getpatter.providers.elevenlabs_convai.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)): + with patch( + "getpatter.providers.elevenlabs_convai.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ): await adapter.connect() sent = json.loads(mock_ws.send.call_args[0][0]) - assert sent["conversation_config_override"]["agent"]["first_message"] == "Hi there!" + assert ( + sent["conversation_config_override"]["agent"]["first_message"] + == "Hi there!" + ) @pytest.mark.asyncio async def test_connect_without_first_message(self) -> None: from getpatter.providers.elevenlabs_convai import ElevenLabsConvAIAdapter - adapter = ElevenLabsConvAIAdapter(api_key="el-test", agent_id="agent-test", first_message="") + adapter = ElevenLabsConvAIAdapter( + api_key="el-test", agent_id="agent-test", first_message="" + ) mock_ws = AsyncMock() - with patch("getpatter.providers.elevenlabs_convai.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)): + with patch( + "getpatter.providers.elevenlabs_convai.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ): await adapter.connect() sent = json.loads(mock_ws.send.call_args[0][0]) @@ -470,11 +543,13 @@ async def test_receive_events_yields_transcripts(self) -> None: adapter = ElevenLabsConvAIAdapter(api_key="el-test", agent_id="agent-test") await self._prime_adapter_with_ws( adapter, - _AsyncIterableWS([ - json.dumps({"type": "user_transcript", "text": "Hi"}), - json.dumps({"type": "agent_response", "text": "Hello"}), - json.dumps({"type": "interruption"}), - ]), + _AsyncIterableWS( + [ + json.dumps({"type": "user_transcript", "text": "Hi"}), + json.dumps({"type": "agent_response", "text": "Hello"}), + json.dumps({"type": "interruption"}), + ] + ), ) events = [] @@ -595,9 +670,13 @@ async def test_ping_triggers_pong(self) -> None: adapter = ElevenLabsConvAIAdapter(api_key="el-test", agent_id="agent-test") mock_ws = AsyncMock() # Iterable messages include a ping. - mock_ws.__aiter__ = lambda self: _AsyncIterHelper([ - json.dumps({"type": "ping", "ping_event": {"event_id": "xyz", "ping_ms": 0}}), - ]) + mock_ws.__aiter__ = lambda self: _AsyncIterHelper( + [ + json.dumps( + {"type": "ping", "ping_event": {"event_id": "xyz", "ping_ms": 0}} + ), + ] + ) adapter._ws = mock_ws adapter._events = asyncio.Queue() adapter._reader_task = asyncio.create_task(adapter._read_loop()) @@ -830,7 +909,10 @@ async def test_connect(self) -> None: stt = DeepgramSTT(api_key="dg-test") mock_ws = AsyncMock() - with patch("getpatter.providers.deepgram_stt.websockets.connect", side_effect=_ws_connect_side_effect(mock_ws)) as mc: + with patch( + "getpatter.providers.deepgram_stt.websockets.connect", + side_effect=_ws_connect_side_effect(mock_ws), + ) as mc: await stt.connect() assert stt._ws is mock_ws @@ -862,12 +944,18 @@ async def test_receive_transcripts_yields_results(self) -> None: from getpatter.providers.deepgram_stt import DeepgramSTT stt = DeepgramSTT(api_key="dg-test") - messages = [json.dumps({ - "type": "Results", - "is_final": True, - "speech_final": True, - "channel": {"alternatives": [{"transcript": "Hello", "confidence": 0.9}]}, - })] + messages = [ + json.dumps( + { + "type": "Results", + "is_final": True, + "speech_final": True, + "channel": { + "alternatives": [{"transcript": "Hello", "confidence": 0.9}] + }, + } + ) + ] stt._ws = _AsyncIterableWS(messages) transcripts = [] @@ -979,7 +1067,7 @@ def test_resample_24k_to_16k_basic(self) -> None: samples = [100, 200, 300, 400, 500, 600] audio = struct.pack(f"<{len(samples)}h", *samples) result = OpenAITTS._resample_24k_to_16k(audio) - out_samples = struct.unpack(f"<{len(result)//2}h", result) + out_samples = struct.unpack(f"<{len(result) // 2}h", result) assert len(out_samples) == 4 def test_resample_24k_to_16k_empty(self) -> None: @@ -1092,7 +1180,9 @@ async def test_initiate_call(self) -> None: adapter._client = AsyncMock() adapter._client.post.return_value = mock_resp - call_id = await adapter.initiate_call("+15551111111", "+15552222222", "wss://stream.example.com") + call_id = await adapter.initiate_call( + "+15551111111", "+15552222222", "wss://stream.example.com" + ) assert call_id == "v3:new-id" @pytest.mark.asyncio @@ -1386,11 +1476,15 @@ async def test_provision_number(self) -> None: mock_number = MagicMock() mock_number.phone_number = "+15559999999" adapter._twilio_client = MagicMock() - adapter._twilio_client.available_phone_numbers.return_value.local.list.return_value = [mock_number] + adapter._twilio_client.available_phone_numbers.return_value.local.list.return_value = [ + mock_number + ] mock_purchased = MagicMock() mock_purchased.phone_number = "+15559999999" - adapter._twilio_client.incoming_phone_numbers.create.return_value = mock_purchased + adapter._twilio_client.incoming_phone_numbers.create.return_value = ( + mock_purchased + ) number = await adapter.provision_number("US") assert number == "+15559999999" @@ -1416,7 +1510,9 @@ async def test_configure_number(self) -> None: adapter._twilio_client.incoming_phone_numbers.list.return_value = [mock_num] await adapter.configure_number("+15551111111", "https://example.com/webhook") - mock_num.update.assert_called_once_with(voice_url="https://example.com/webhook", voice_method="POST") + mock_num.update.assert_called_once_with( + voice_url="https://example.com/webhook", voice_method="POST" + ) @pytest.mark.asyncio async def test_configure_number_not_found(self) -> None: @@ -1427,7 +1523,9 @@ async def test_configure_number_not_found(self) -> None: adapter._twilio_client.incoming_phone_numbers.list.return_value = [] with pytest.raises(ValueError, match="not found"): - await adapter.configure_number("+15551111111", "https://example.com/webhook") + await adapter.configure_number( + "+15551111111", "https://example.com/webhook" + ) @pytest.mark.asyncio async def test_initiate_call(self) -> None: @@ -1439,7 +1537,9 @@ async def test_initiate_call(self) -> None: adapter._twilio_client = MagicMock() adapter._twilio_client.calls.create.return_value = mock_call - sid = await adapter.initiate_call("+15551111111", "+15552222222", "wss://stream.example.com") + sid = await adapter.initiate_call( + "+15551111111", "+15552222222", "wss://stream.example.com" + ) assert sid == "CA_test_call_sid" @pytest.mark.asyncio @@ -1453,7 +1553,9 @@ async def test_initiate_call_with_extra_params(self) -> None: adapter._twilio_client.calls.create.return_value = mock_call sid = await adapter.initiate_call( - "+15551111111", "+15552222222", "wss://stream.example.com", + "+15551111111", + "+15552222222", + "wss://stream.example.com", extra_params={"machine_detection": "Enable"}, ) assert sid == "CA_test_call_sid" @@ -1468,7 +1570,9 @@ async def test_end_call(self) -> None: adapter._twilio_client = MagicMock() await adapter.end_call("CA_test_call_sid") - adapter._twilio_client.calls.return_value.update.assert_called_once_with(status="completed") + adapter._twilio_client.calls.return_value.update.assert_called_once_with( + status="completed" + ) def test_generate_stream_twiml(self) -> None: from getpatter.providers.twilio_adapter import TwilioAdapter diff --git a/libraries/python/tests/unit/test_providers_unit.py b/libraries/python/tests/unit/test_providers_unit.py index a9c6a411..5b357882 100644 --- a/libraries/python/tests/unit/test_providers_unit.py +++ b/libraries/python/tests/unit/test_providers_unit.py @@ -393,8 +393,12 @@ def __init__(self, **kwargs: object) -> None: async def connect(self) -> None: return None + # ``OpenAIRealtimeStreamHandler.start`` routes both + # ``openai_realtime`` and ``openai_realtime_2`` engines through the + # GA adapter (the v1-beta endpoint is deprecated server-side), + # so the patch target must be the GA adapter class. with patch( - "getpatter.providers.openai_realtime.OpenAIRealtimeAdapter", + "getpatter.providers.openai_realtime_2.OpenAIRealtime2Adapter", _FakeAdapter, ): await handler.start() diff --git a/libraries/typescript/tests/unit/openai-realtime.test.ts b/libraries/typescript/tests/unit/openai-realtime.test.ts index 40c3d928..22c6da9c 100644 --- a/libraries/typescript/tests/unit/openai-realtime.test.ts +++ b/libraries/typescript/tests/unit/openai-realtime.test.ts @@ -394,13 +394,31 @@ describe('OpenAIRealtimeAdapter (deep)', () => { const ws = await connectAdapter(adapter); ws.send.mockClear(); + // ``cancelResponse`` is now a no-op when no response item is in + // flight (eliminates the ``response_cancel_not_active`` log spam + // every phantom VAD ``speech_started`` triggered before 0.6.2). + // Simulate an in-flight assistant item so the cancel path runs. + (adapter as unknown as { currentResponseItemId: string | null }) + .currentResponseItemId = 'msg_test_001'; + adapter.cancelResponse(); - expect(ws.send).toHaveBeenCalledOnce(); - const sent = JSON.parse(ws.send.mock.calls[0][0] as string); + // truncate + cancel; ``response.cancel`` is the last frame. + const lastCall = ws.send.mock.calls[ws.send.mock.calls.length - 1]; + const sent = JSON.parse(lastCall[0] as string); expect(sent.type).toBe('response.cancel'); }); + it('is a no-op when no response item is in flight', async () => { + const adapter = new OpenAIRealtimeAdapter('sk-test'); + const ws = await connectAdapter(adapter); + ws.send.mockClear(); + + adapter.cancelResponse(); + + expect(ws.send).not.toHaveBeenCalled(); + }); + it('does not throw when not connected', () => { const adapter = new OpenAIRealtimeAdapter('sk-test'); expect(() => adapter.cancelResponse()).not.toThrow(); diff --git a/libraries/typescript/tests/unit/prewarm.test.ts b/libraries/typescript/tests/unit/prewarm.test.ts index eba5b222..a4d04453 100644 --- a/libraries/typescript/tests/unit/prewarm.test.ts +++ b/libraries/typescript/tests/unit/prewarm.test.ts @@ -98,14 +98,19 @@ describe('[unit] prewarm — Agent flag defaults', () => { expect(agent.prewarm !== false).toBe(true); }); - it('phone.agent() defaults prewarmFirstMessage to true in pipeline mode', () => { + it('phone.agent() leaves prewarmFirstMessage undefined in pipeline mode (opt-in)', () => { + // Default-on was reverted on 2026-05-19 after the 0.6.2 acceptance + // run showed a phantom-barge-in interaction: the prewarm burst at + // pickup tripped Silero VAD on the very first inbound frame and the + // firstMessage was cancelled mid-playback. Pipeline mode now leaves + // the flag opt-in; callers wanting the prewarm path set it explicitly. const phone = makePatter(); const stt = new StubSTT(); const tts = new StubTTS(); const llm = new StubLLM(); const agent = phone.agent({ systemPrompt: 'hi', stt, tts, llm }); expect(agent.provider).toBe('pipeline'); - expect(agent.prewarmFirstMessage).toBe(true); + expect(agent.prewarmFirstMessage).toBeUndefined(); }); it('phone.agent() does NOT default prewarmFirstMessage in realtime mode', () => { diff --git a/libraries/typescript/tests/unit/stream-handler.test.ts b/libraries/typescript/tests/unit/stream-handler.test.ts index 9a3789fb..67ee2ec2 100644 --- a/libraries/typescript/tests/unit/stream-handler.test.ts +++ b/libraries/typescript/tests/unit/stream-handler.test.ts @@ -437,35 +437,38 @@ describe('StreamHandler', () => { }); // ----------------------------------------------------------------------- - // AEC OFF (default — PSTN deployments). Gate is 100 ms. + // AEC OFF (default — PSTN deployments). Gate is 500 ms (raised 100 → + // 500 on 2026-05-19 after the 0.6.2 acceptance run showed phantom VAD + // ``speech_start`` events firing within the first ~250 ms of the + // prewarmed firstMessage and cancelling it). // ----------------------------------------------------------------------- describe('AEC off (PSTN default)', () => { - it('canBargeIn() false within 100 ms anti-flicker window', () => { + it('canBargeIn() false within 500 ms anti-flicker window', () => { const h = new StreamHandler(makeDeps(), makeMockWs(), '+15551111111', '+15552222222'); const p = priv(h); p.aec = null; - p.speakingStartedAt = Date.now() - 50; - p.firstAudioSentAt = Date.now() - 50; // 50 ms — still inside 100 ms gate + p.speakingStartedAt = Date.now() - 250; + p.firstAudioSentAt = Date.now() - 250; // 250 ms — still inside 500 ms gate expect(p.canBargeIn()).toBe(false); }); - it('canBargeIn() true past 100 ms (well below the 1 s AEC gate)', () => { + it('canBargeIn() true past 500 ms (well below the 1 s AEC gate)', () => { const h = new StreamHandler(makeDeps(), makeMockWs(), '+15551111111', '+15552222222'); const p = priv(h); p.aec = null; - p.speakingStartedAt = Date.now() - 200; - p.firstAudioSentAt = Date.now() - 200; // 200 ms — past 100 ms gate, under 1 s + p.speakingStartedAt = Date.now() - 700; + p.firstAudioSentAt = Date.now() - 700; // 700 ms — past 500 ms gate, under 1 s expect(p.canBargeIn()).toBe(true); }); - it('handleBargeIn fires after 400 ms with AEC off (the bug fix)', () => { + it('handleBargeIn fires after 600 ms with AEC off (the bug fix)', () => { // Pre-fix this would have been suppressed by the hardcoded 1 s gate. const h = new StreamHandler(makeDeps(), makeMockWs(), '+15551111111', '+15552222222'); const p = priv(h); p.aec = null; p.isSpeaking = true; - p.speakingStartedAt = Date.now() - 400; - p.firstAudioSentAt = Date.now() - 400; + p.speakingStartedAt = Date.now() - 600; + p.firstAudioSentAt = Date.now() - 600; const result = p.handleBargeIn({ text: 'stop' }); expect(result).toBe(true); expect(p.isSpeaking).toBe(false); @@ -538,7 +541,16 @@ describe('StreamHandler', () => { // chunks are unconfirmed. ``cancelSpeaking`` drains every pending mark // so the waiting loop exits on the next tick. // ------------------------------------------------------------------------- - describe('firstMessage mark-gated pacing', () => { + // SKIPPED 2026-05-22: mark-gated per-chunk pacing was replaced with a + // burst-deliver model in commit 5574997 + // (``fix(prewarm): burst-deliver prewarmed first-message bytes, drop the + // slow per-chunk sleep``). ``sendPacedFirstMessageBytes`` / + // ``firstMessageMarkCounter`` / ``sendMarkAwaitable`` no longer exist as + // public surface. Left as ``describe.skip`` to preserve the historical + // intent — the regression these tests pinned (audio buffered past + // barge-in on the WS edge) is now covered by the burst-deliver path's + // own ``cancelActiveStream`` plumbing. + describe.skip('firstMessage mark-gated pacing', () => { interface FmPriv { isSpeaking: boolean; speakingStartedAt: number | null; @@ -702,7 +714,10 @@ describe('StreamHandler', () => { }); }); - describe('cleanup drains pending firstMessage marks', () => { + // SKIPPED 2026-05-22: see note on the ``firstMessage mark-gated pacing`` + // block above — burst-deliver replaced the mark-window plumbing; pending + // marks no longer exist to drain. + describe.skip('cleanup drains pending firstMessage marks', () => { interface CleanupPriv { isSpeaking: boolean; speakingStartedAt: number | null; @@ -777,7 +792,10 @@ describe('StreamHandler', () => { }); }); - describe('firstMessage mark counter resets across sends + on cleanup', () => { + // SKIPPED 2026-05-22: see note on the ``firstMessage mark-gated pacing`` + // block above — burst-deliver replaced the mark-counter plumbing; + // ``firstMessageMarkCounter`` no longer exists. + describe.skip('firstMessage mark counter resets across sends + on cleanup', () => { interface CounterPriv { isSpeaking: boolean; speakingStartedAt: number | null; From 573e209787b92a03d981237c1f7fcf59e693208d Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 25 May 2026 11:28:58 +0200 Subject: [PATCH 10/11] docs(0.6.2): align Mintlify docs with 14-bug fix wave + new GA Realtime engine MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Audit ran via 3 parallel agents (Python SDK accuracy, TypeScript SDK accuracy, navigation + cross-links) cross-referencing every public identifier, default, and behaviour described in ``docs/`` against the 0.6.2 source. 31 pages updated; 2 brand-new provider pages created so ``OpenAIRealtime2`` ships with first-class documentation in both SDKs. New pages - ``docs/python-sdk/providers/openai-realtime-2.mdx`` - ``docs/typescript-sdk/providers/openai-realtime-2.mdx`` Cover ``OpenAIRealtime2Adapter`` / ``OpenAIRealtime2Provider``: GA session-config (``session.type = "realtime"``, nested ``audio.{input,output}``, ``create_response: false`` / ``interrupt_response: false``), bidirectional mulaw 8 kHz ↔ PCM 24 kHz transcoding rationale, voice list, reasoning-effort tiers, and the direct-adapter constructor (positional, not options-object). - ``docs/docs.json`` adds both pages to the Engines group in their respective SDKs. Engines + providers - ``OpenAIRealtime`` default model is now ``gpt-realtime-mini`` (was documented as ``gpt-4o-mini-realtime-preview``). Voice enum widened to include ``ash``/``ballad``/``coral``/``sage``/``verse``. - Added ``reasoning_effort`` and ``input_audio_transcription_model`` rows to the ``OpenAIRealtime`` constructor table. - ``ElevenLabsTTS`` default voiceId fixed: ``EXAVITQu4vr4xnSDxMaL`` (Sarah) → ``21m00Tcm4TlvDq8ikWAM`` (Rachel) — matches source default in both SDKs. - Provider pages add the GA Realtime VAD threshold note (0.5, not 0.1) and the Whisper hallucination filter behaviour. Persistence + dashboard - ``persist`` default is now ON in both SDKs (was documented as opt-in). Flipped narrative + tables + env var notes across ``persist.mdx``, ``call-logging.mdx``, ``configuration.mdx``, ``quickstart.mdx``, ``reference.mdx``. - ``PATTER_LOG_REDACT_PHONE`` default ``mask`` → ``full`` across ``configuration.mdx``. - Added ``direction`` and ``aggregates.sdk_version`` fields to the dashboard / call-log schema docs. Inbound carrier metadata - ``local-mode.mdx`` + ``carrier.mdx`` (both SDKs) now correctly describe Twilio inbound caller/callee as travelling via TwiML ```` (Twilio strips URL query params before the WS handshake). Telnyx still uses query string — distinction documented. Call surface - ``Patter.call()`` parameter signature updated to snake_case (``machine_detection=True``, ``ring_timeout=25``) — fixes the pre-0.6.2 PascalCase crash documentation. - AMD narrative flipped to "default on" in ``features.mdx``. - ``phone.serve()`` examples in TS docs fixed: ``phone.serve(agent)`` → ``phone.serve({ agent })`` (5 pages). Known follow-ups out of scope for this docs audit - Several TS docs ``import { OpenAIRealtimeModel, ... } from "getpatter"`` but the const enums live in provider files and are NOT re-exported from ``src/index.ts``. Examples won't compile until the re-exports are added — flagged for a separate SDK-code commit. - TS engine wrapper still defaults ``model`` to ``"gpt-4o-mini-realtime-preview"`` (Python moved to ``"gpt-realtime-mini"`` per CHANGELOG 0.6.2). Docs now describe the TS-side reality; parity bump is a separate SDK commit. Inventory rows for 0.6.2 features appended to ``patter-assets/patter_sdk_features.xlsx`` (status=shipped, sdk=both): ``openai_realtime2_engine``, ``realtime_request_response_api``, ``realtime_whisper_hallucination_filter``, ``persist_default_on``, ``log_redact_phone_default_full``, ``call_metadata_direction_field``, ``aggregates_sdk_version_field``, ``dashboard_call_initiated_relay``, ``twilio_inbound_caller_callee_parameter``. --- docs/docs.json | 2 + docs/python-sdk/agents.mdx | 6 +- docs/python-sdk/call-logging.mdx | 20 +-- docs/python-sdk/carrier.mdx | 35 +++++ docs/python-sdk/configuration.mdx | 10 +- docs/python-sdk/engines.mdx | 57 +++++++- docs/python-sdk/features.mdx | 18 ++- docs/python-sdk/local-mode.mdx | 13 +- .../providers/openai-realtime-2.mdx | 122 ++++++++++++++++ docs/python-sdk/providers/openai-realtime.mdx | 6 +- docs/python-sdk/quickstart.mdx | 4 + docs/python-sdk/reference.mdx | 68 ++++++--- docs/python-sdk/test-mode.mdx | 2 +- docs/python-sdk/tts.mdx | 2 +- docs/typescript-sdk/agents.mdx | 2 +- docs/typescript-sdk/call-logging.mdx | 8 +- docs/typescript-sdk/carrier.mdx | 8 ++ docs/typescript-sdk/configuration.mdx | 4 +- docs/typescript-sdk/dashboard.mdx | 6 +- docs/typescript-sdk/engines.mdx | 46 +++++- docs/typescript-sdk/local-mode.mdx | 9 +- docs/typescript-sdk/mcp.mdx | 4 +- docs/typescript-sdk/metrics.mdx | 11 +- docs/typescript-sdk/providers/anthropic.mdx | 2 +- docs/typescript-sdk/providers/cerebras.mdx | 2 +- docs/typescript-sdk/providers/google.mdx | 2 +- docs/typescript-sdk/providers/groq.mdx | 2 +- .../providers/openai-realtime-2.mdx | 134 ++++++++++++++++++ .../providers/openai-realtime.mdx | 11 +- docs/typescript-sdk/reference.mdx | 42 +++++- docs/typescript-sdk/tts.mdx | 2 +- 31 files changed, 566 insertions(+), 94 deletions(-) create mode 100644 docs/python-sdk/providers/openai-realtime-2.mdx create mode 100644 docs/typescript-sdk/providers/openai-realtime-2.mdx diff --git a/docs/docs.json b/docs/docs.json index 55b9152e..1346aa31 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -100,6 +100,7 @@ "pages": [ "python-sdk/engines", "python-sdk/providers/openai-realtime", + "python-sdk/providers/openai-realtime-2", "python-sdk/providers/gemini-live", "python-sdk/providers/ultravox-realtime", "python-sdk/providers/elevenlabs-convai" @@ -231,6 +232,7 @@ "pages": [ "typescript-sdk/engines", "typescript-sdk/providers/openai-realtime", + "typescript-sdk/providers/openai-realtime-2", "typescript-sdk/providers/gemini-live", "typescript-sdk/providers/ultravox-realtime", "typescript-sdk/providers/elevenlabs-convai" diff --git a/docs/python-sdk/agents.mdx b/docs/python-sdk/agents.mdx index 44521c2a..adeb225c 100644 --- a/docs/python-sdk/agents.mdx +++ b/docs/python-sdk/agents.mdx @@ -70,12 +70,12 @@ agent = phone.agent( | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `system_prompt` | `str` | *required* | Instructions that define the agent's behavior. | -| `engine` | `OpenAIRealtime \| ElevenLabsConvAI \| None` | `None` → OpenAI Realtime | End-to-end engine. See [Engines](/python-sdk/engines). Omit for pipeline mode. | +| `engine` | `OpenAIRealtime \| OpenAIRealtime2 \| ElevenLabsConvAI \| None` | `None` → OpenAI Realtime | End-to-end engine. See [Engines](/python-sdk/engines). Omit for pipeline mode. | | `stt` | `STTProvider \| None` | `None` | STT instance for pipeline mode (`DeepgramSTT()`, `CartesiaSTT()`, ...). See [STT](/python-sdk/stt). | | `llm` | `LLMProvider \| None` | `None` | LLM instance for pipeline mode (`AnthropicLLM()`, `GroqLLM()`, ...). Mutually exclusive with `on_message` on `serve()`. Ignored when `engine` is set. See [LLM](/python-sdk/llm). | | `tts` | `TTSProvider \| None` | `None` | TTS instance for pipeline mode (`ElevenLabsTTS()`, `RimeTTS()`, ...). See [TTS](/python-sdk/tts). | | `voice` | `str` | `"alloy"` | Voice name. Usually inferred from the engine or TTS instance. | -| `model` | `str` | `"gpt-4o-mini-realtime-preview"` | Model ID for OpenAI Realtime. Usually inferred from the engine. | +| `model` | `str` | `"gpt-realtime-mini"` | Model ID for OpenAI Realtime. Usually inferred from the engine. | | `language` | `str` | `"en"` | BCP-47 language code. | | `first_message` | `str` | `""` | If set, the agent speaks this immediately when a call connects. | | `tools` | `list[Tool] \| None` | `None` | `Tool(...)` instances for function calling. See [Tools](/python-sdk/tools). | @@ -176,7 +176,7 @@ Voice is usually inferred from the engine or TTS instance — e.g. `OpenAIRealti - `"alloy"`, `"echo"`, `"fable"`, `"onyx"`, `"nova"`, `"shimmer"` + `"alloy"`, `"ash"`, `"ballad"`, `"coral"`, `"echo"`, `"fable"`, `"nova"`, `"onyx"`, `"sage"`, `"shimmer"`, `"verse"` Any ElevenLabs voice ID or name (e.g., `"rachel"`, `"adam"`). diff --git a/docs/python-sdk/call-logging.mdx b/docs/python-sdk/call-logging.mdx index 4a961b9e..cd38b6a3 100644 --- a/docs/python-sdk/call-logging.mdx +++ b/docs/python-sdk/call-logging.mdx @@ -4,7 +4,9 @@ description: "Opt-in per-call filesystem logs: metadata, transcripts, and operat icon: "folder-open" --- -Patter can persist every call to a directory tree on disk so you can replay transcripts, audit tool calls, and track latency/cost trends without running a hosted dashboard. Logging is **opt-in and off by default** — nothing is written unless you ask for it. +Patter can persist every call to a directory tree on disk so you can replay transcripts, audit tool calls, and track latency/cost trends without running a hosted dashboard. + +Persistence is **on by default since 0.6.2** — `Patter(...)` writes under the platform default location unless you pass `persist=False` (force-off) or override the path. The default was flipped from off→on because the dashboard's hydrate path needs on-disk records to survive process restarts. The same on-disk layout also backs the local dashboard's call history: when persistence is enabled, `phone.serve()` rebuilds the in-memory dashboard from disk on startup so call history survives process restarts without an external database. @@ -26,7 +28,7 @@ phone = Patter(carrier=Twilio(), phone_number="+15555550100", persist="/var/log/ | `persist` value | Behaviour | |-----------------|-----------| -| omitted / `None` (default) | Falls back to `PATTER_LOG_DIR`; off when env is also unset (backward-compatible). | +| omitted / `None` (default) | Reads `PATTER_LOG_DIR` if set; otherwise falls back to the platform default location. On by default since 0.6.2. | | `False` | Force-off, even if `PATTER_LOG_DIR` is set. | | `True` | Platform default location (see below). | | `""` | Use the supplied path (`~` expanded). | @@ -49,7 +51,7 @@ Platform defaults for `auto` (and for `persist=True`): - Linux: `$XDG_DATA_HOME/patter` (falls back to `~/.local/share/patter`) - Windows: `%LOCALAPPDATA%\patter` -When `persist` is unset and the env var is unset, the logger is a no-op — no directories are created, no files are written. When `persist` is set explicitly, the env var is ignored. +When `persist` is unset and the env var is unset, Patter falls back to the platform default path (persistence is on by default since 0.6.2). When `persist` is set explicitly, the env var is ignored. Pass `persist=False` to force the logger to be a no-op. ## Layout @@ -87,19 +89,21 @@ When `persist` is unset and the env var is unset, the logger is a no-op — no d ## Phone redaction -Caller / callee numbers in `metadata.json` are masked by default (last 4 digits). Change via: +Caller / callee numbers in `metadata.json` default to **full** (raw E.164) since 0.6.2 so the dashboard's reveal toggle has something to reconstruct from. The on-disk path under `~/Library/Application Support/patter/` (macOS) / XDG data dir (Linux) / `%LOCALAPPDATA%\patter` (Windows) is user-private. Override via: ```bash -# Mask last 4 digits (default): "***4567" -export PATTER_LOG_REDACT_PHONE=mask - -# Store the full E.164 number (disables redaction) +# Store the full E.164 number (default since 0.6.2) export PATTER_LOG_REDACT_PHONE=full +# Mask last 4 digits: "***4567" +export PATTER_LOG_REDACT_PHONE=mask + # Replace with a sha256 prefix for correlation without storing the number export PATTER_LOG_REDACT_PHONE=hash_only ``` +Set `PATTER_LOG_REDACT_PHONE=mask` for setups that ship logs off-host. + `transcript.jsonl` is **not** redacted — it can contain customer PII spoken during the call. Gate access to the log root and/or wire up your own redaction pipeline before exporting. ## Retention diff --git a/docs/python-sdk/carrier.mdx b/docs/python-sdk/carrier.mdx index d62fb329..37cd99ab 100644 --- a/docs/python-sdk/carrier.mdx +++ b/docs/python-sdk/carrier.mdx @@ -102,6 +102,41 @@ The embedded server exposes these endpoints regardless of carrier choice: | `POST /webhooks/twilio/amd` | Async AMD (answering machine detection) results. | | `POST /webhooks/telnyx/voice` | Incoming Telnyx call → returns Call Control commands. | +## Outbound calls + +Use `phone.call(...)` to place an outbound call on either carrier. Every keyword argument is **snake_case**: + +```python +import asyncio +from getpatter import Patter, Twilio, OpenAIRealtime + +phone = Patter(carrier=Twilio(), phone_number="+15550001234") +agent = phone.agent(engine=OpenAIRealtime(), system_prompt="You are a friendly receptionist.") + +async def main(): + server = asyncio.create_task(phone.serve(agent, tunnel=True)) + await phone.ready # wait until tunnel + listener are up + + await phone.call( + to="+15550009876", + agent=agent, + first_message="Hi! This is a courtesy call from Acme.", + machine_detection=True, # default since 0.6.2 + ring_timeout=25, # default since 0.6.2 + voicemail_message="Please call us back at +15550001234.", + ) + +asyncio.run(main()) +``` + +Key defaults changed in 0.6.2: + +- `machine_detection` defaults to `True`. On Twilio Patter sends `MachineDetection=DetectMessageEnd` + Async AMD so there is no answer-latency penalty on human pickups. Pass `False` to skip per-call AMD billing. +- `ring_timeout` defaults to `25` seconds. Pass `60` for legacy carrier-default parity, or `None` to omit the parameter entirely. +- The AMD callback was renamed `on_machine` → `on_machine_detection` and now receives a `MachineDetectionResult` (not a raw dict). + +See [Local Mode › call() Parameters](/python-sdk/local-mode#call-parameters-local-mode) for the full parameter table. + ## What's Next diff --git a/docs/python-sdk/configuration.mdx b/docs/python-sdk/configuration.mdx index adf3db1f..722ba758 100644 --- a/docs/python-sdk/configuration.mdx +++ b/docs/python-sdk/configuration.mdx @@ -27,7 +27,7 @@ The carrier instance reads credentials from environment variables when you don't | `webhook_url` | `str` | `""` | Public hostname of this server, without scheme (e.g., `"abc.ngrok.io"`). See [Tunneling](/dev-tools/tunneling) for ways to get one. | | `tunnel` | `CloudflareTunnel \| Static \| bool \| None` | `None` | Tunnel directive. `True` is shorthand for `CloudflareTunnel()`. See [Tunneling](/dev-tools/tunneling). | | `pricing` | `dict \| None` | `None` | Override default provider pricing estimates. See [Metrics & Cost Tracking](/python-sdk/metrics). | -| `persist` | `bool \| str \| None` | `None` | Persist the dashboard's call history to disk so it survives process restarts. See [Persistent dashboard history](#persistent-dashboard-history) below. | +| `persist` | `bool \| str \| None` | `None` (=on, platform default path) | Persist the dashboard's call history to disk so it survives process restarts. Defaults **on** since 0.6.2 — the dashboard's hydrate path requires on-disk records to recover history across restarts. Pass `False` to keep the old ephemeral-RAM-only behaviour. See [Persistent dashboard history](#persistent-dashboard-history) below. | ## Environment variables @@ -55,7 +55,7 @@ These tune SDK runtime behaviour (no credential lookup). |---------|---------|--------| | `PATTER_LOG_DIR` | unset | Persistent dashboard root (see [Persistent dashboard history](#persistent-dashboard-history) below). | | `PATTER_LOG_RETENTION_DAYS` | `30` | Days of disk history to retain. `0` disables cleanup. | -| `PATTER_LOG_REDACT_PHONE` | `1` | Mask phone numbers in `metadata.json` (last 4 digits). Set to `0` to store full E.164. | +| `PATTER_LOG_REDACT_PHONE` | `full` | One of `full` (store raw E.164), `mask` (last 4 digits), or `hash_only` (sha256:prefix). Changed from `mask` to `full` on 2026-05-21 so the dashboard's reveal toggle has something to reconstruct from. | | `PATTER_DASHBOARD_NOTIFY` | enabled | Set to `0`, `false`, `no`, or `off` (case-insensitive) to skip the fire-and-forget dashboard ingest POST. Use this when you embed Patter alongside your own FastAPI server on port 8000 to avoid 404 spam in your access log. | | `PATTER_BIND_HOST` | `127.0.0.1` | Host the embedded server binds to. Set to `0.0.0.0` when running inside a container whose port must be reachable from the host (e.g. `docker run -p 8000:8000` — Docker's port-mapping cannot forward to a 127.0.0.1 listener inside the container). | @@ -129,8 +129,8 @@ By default the dashboard is an in-memory ring buffer — restart the process and | `persist` value | Behaviour | |-----------------|-----------| -| omitted / `None` (default) | Falls back to the `PATTER_LOG_DIR` env var. If the env var is also unset, persistence is **off** — backward-compatible with prior releases. | -| `False` | Force-off. Disk writes are skipped even when `PATTER_LOG_DIR` is set. | +| omitted / `None` (default) | Reads `PATTER_LOG_DIR` if set; **otherwise falls back to the platform default location**. Persistence is **on by default** since 0.6.2 so the dashboard's hydrate path recovers history across process restarts. | +| `False` | Force-off. Disk writes are skipped even when `PATTER_LOG_DIR` is set. Use this for ephemeral RAM-only behaviour. | | `True` | Write under the platform default location (see below). Equivalent to `PATTER_LOG_DIR=auto`. | | `""` (string) | Write under the supplied path (`~` is expanded). Equivalent to `PATTER_LOG_DIR=`. | @@ -215,7 +215,7 @@ export PATTER_LOG_RETENTION_DAYS=0 ``` -Retention defaults to **30 days** and phone numbers in `metadata.json` are **masked by default** (last 4 digits) via `PATTER_LOG_REDACT_PHONE`. If you need to keep call history indefinitely or store full E.164 numbers, set those env vars explicitly — and gate access to the log root, since `transcript.jsonl` is never redacted and may contain customer PII spoken during the call. +Retention defaults to **30 days**. Phone numbers in `metadata.json` default to **full** (raw E.164) since 0.6.2 so the dashboard's reveal toggle has something to reconstruct from — set `PATTER_LOG_REDACT_PHONE=mask` for setups that ship logs off-host. Gate access to the log root regardless, since `transcript.jsonl` is never redacted and may contain customer PII spoken during the call. See [Call logging](/python-sdk/call-logging) for the full layout, schema, and reading patterns. diff --git a/docs/python-sdk/engines.mdx b/docs/python-sdk/engines.mdx index c7183597..0e64b2f3 100644 --- a/docs/python-sdk/engines.mdx +++ b/docs/python-sdk/engines.mdx @@ -1,6 +1,6 @@ --- title: "Engines" -description: "End-to-end speech-to-speech runtimes (OpenAI Realtime, ElevenLabs ConvAI)." +description: "End-to-end speech-to-speech runtimes (OpenAI Realtime, OpenAI Realtime 2, ElevenLabs ConvAI)." icon: "bolt" --- @@ -8,9 +8,10 @@ icon: "bolt" An **engine** is an end-to-end speech-to-speech runtime. Pass an engine instance to `phone.agent(engine=...)` and Patter wires the audio stream straight through to the provider — no separate STT or TTS is needed. -Patter ships with two engine classes today: +Patter ships with three engine classes today: -- [`OpenAIRealtime`](#openairealtime) — OpenAI's Realtime API +- [`OpenAIRealtime`](#openairealtime) — OpenAI's Realtime API (v1-beta family, `gpt-realtime-mini` / `gpt-realtime` / `gpt-4o-*-realtime-preview`) +- [`OpenAIRealtime2`](#openairealtime2) — OpenAI's GA Realtime API (`gpt-realtime-2`), separate marker because the GA endpoint speaks a different `session.update` wire shape - [`ElevenLabsConvAI`](#elevenlabsconvai) — ElevenLabs Conversational AI Each class ships as both a **flat alias** (`from getpatter import OpenAIRealtime`) and a **namespaced** class (`from getpatter.engines import openai` → `openai.Realtime()`). They are equivalent. @@ -42,9 +43,10 @@ asyncio.run(main()) | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `api_key` | `str` | `""` | OpenAI API key. Reads from `OPENAI_API_KEY` when empty. | -| `language` | `str` | `"en"` | BCP-47 language code (e.g., `"ja"`, `"es"`, `"fr"`). Seeds the auto-generated fallback system prompt (`"Respond in {language}"`). Has no effect when you supply your own `system_prompt` — write the prompt in the target language and OpenAI Realtime will auto-detect from the audio. | -| `voice` | `str` | `"alloy"` | One of `"alloy"`, `"echo"`, `"fable"`, `"onyx"`, `"nova"`, `"shimmer"`. | -| `model` | `str` | `"gpt-4o-mini-realtime-preview"` | OpenAI Realtime model ID. See [supported models](/python-sdk/providers/openai-realtime#models). | +| `voice` | `str` | `"alloy"` | One of `"alloy"`, `"ash"`, `"ballad"`, `"coral"`, `"echo"`, `"fable"`, `"nova"`, `"onyx"`, `"sage"`, `"shimmer"`, `"verse"`. | +| `model` | `str` | `"gpt-realtime-mini"` | OpenAI Realtime model ID. See [supported models](/python-sdk/providers/openai-realtime#models). | +| `reasoning_effort` | `"minimal" \| "low" \| "medium" \| "high" \| None` | `None` | Reasoning tier for `gpt-realtime-2`. `None` leaves the field unset (server default). OpenAI recommends `"low"` for production voice flows; higher tiers add measurable per-turn latency. No-op on models that ignore it. | +| `input_audio_transcription_model` | `str \| None` | `None` | Override the Realtime session's `input_audio_transcription.model`. `None` keeps the adapter default (`"whisper-1"`). Use `"gpt-realtime-whisper"` for low-latency partials, `"gpt-4o-transcribe"` for higher accuracy. | ### Supported model identifiers @@ -69,6 +71,49 @@ engine = openai_engine.Realtime() # reads OPENAI_API_KEY engine = openai_engine.Realtime(voice="nova", model="gpt-realtime-2") ``` +## OpenAIRealtime2 + +Marker class that selects the **GA Realtime API** (`gpt-realtime-2`). The GA endpoint speaks a different `session.update` wire shape than the v1-beta family (no `OpenAI-Beta: realtime=v1` header, `session.type: "realtime"`, nested `audio.{input,output}` with MIME types, `output_modalities` instead of `modalities`), so `OpenAIRealtime2` dispatches to a separate adapter (`OpenAIRealtime2Adapter`). + +```python +import asyncio +from getpatter import Patter, Twilio, OpenAIRealtime2 + +phone = Patter(carrier=Twilio(), phone_number="+15550001234") # TWILIO_* from env + +agent = phone.agent( + engine=OpenAIRealtime2(reasoning_effort="low"), # OPENAI_API_KEY from env + system_prompt="You are a friendly receptionist.", + first_message="Hello! How can I help?", +) + +async def main(): + await phone.serve(agent) + +asyncio.run(main()) +``` + +| Parameter | Type | Default | Description | +|-----------|------|---------|-------------| +| `api_key` | `str` | `""` | OpenAI API key. Reads from `OPENAI_API_KEY` when empty. | +| `voice` | `str` | `"alloy"` | Same voice set as `OpenAIRealtime`. | +| `model` | `str` | `"gpt-realtime-2"` | Pinned to the GA model. Override only if OpenAI ships future GA-shaped models. | +| `reasoning_effort` | `"minimal" \| "low" \| "medium" \| "high" \| None` | `None` | `gpt-realtime-2` reasoning tier. `"low"` is OpenAI's recommendation for production voice flows. | +| `input_audio_transcription_model` | `str \| None` | `None` | Override for `audio.input.transcription.model`. `None` keeps the adapter default (`"whisper-1"`). | + +Namespaced form: + +```python +from getpatter.engines import openai_realtime_2 + +engine = openai_realtime_2.Realtime2() +engine = openai_realtime_2.Realtime2(reasoning_effort="low") +``` + + +PCM transport: the GA endpoint accepts only PCM-16-LE at >=24 kHz. Patter transcodes inbound mulaw 8 kHz → PCM 24 kHz and outbound PCM 24 kHz → mulaw 8 kHz transparently on the carrier side; you don't need to configure anything. + + ## ElevenLabsConvAI ElevenLabs Conversational AI — premium voice quality using a managed agent configured in the ElevenLabs dashboard. diff --git a/docs/python-sdk/features.mdx b/docs/python-sdk/features.mdx index 1e1acb8a..6a10d2f0 100644 --- a/docs/python-sdk/features.mdx +++ b/docs/python-sdk/features.mdx @@ -39,20 +39,30 @@ for record in recordings: Detect whether a human or machine answered an outbound call. When a machine is detected, optionally leave a voicemail message and hang up. +AMD is **on by default** since 0.6.2. On Twilio, Patter uses `MachineDetection=DetectMessageEnd` + Async AMD so there is no answer-latency penalty on human pickups — the call connects immediately and the classification arrives via the `/webhooks/twilio/amd` callback. Pass `machine_detection=False` to skip per-call AMD billing when the destination is known to be a human. + ```python -# Enable AMD on outbound calls +# AMD is on by default; just pass a voicemail_message to leave a message +# when a machine answers. await phone.call( to="+15550009876", agent=agent, - machine_detection=True, voicemail_message="Hi, this is Acme Corp calling about your appointment. Please call us back at 555-000-1234.", ) + +# Or opt out explicitly for a known-human destination +await phone.call( + to="+15550009876", + agent=agent, + machine_detection=False, +) ``` | Parameter | Type | Default | Description | |-----------|------|---------|-------------| -| `machine_detection` | `bool` | `False` | Enable answering machine detection. | -| `voicemail_message` | `str` | `""` | Message to speak when a machine is detected. If empty, the call hangs up silently. | +| `machine_detection` | `bool` | `True` | Enable answering machine detection. Defaults on since 0.6.2. Pass `False` to skip AMD billing. | +| `voicemail_message` | `str` | `""` | Message to speak when a machine is detected. If empty, the call hangs up silently. A non-empty value implicitly enables AMD even if `machine_detection=False`. | +| `on_machine_detection` | `Callable[[MachineDetectionResult], Awaitable[None] \| None] \| None` | `None` | Fires once when the carrier reports the AMD outcome (`human` or `machine`). Useful for acceptance tests that need to mark a run INVALID when classification is not `human`. | ### How It Works diff --git a/docs/python-sdk/local-mode.mdx b/docs/python-sdk/local-mode.mdx index 5505280d..d163d0e1 100644 --- a/docs/python-sdk/local-mode.mdx +++ b/docs/python-sdk/local-mode.mdx @@ -117,13 +117,18 @@ asyncio.run(main()) ### call() Parameters (Local Mode) +All keyword arguments are **snake_case** (e.g. `machine_detection=`, `ring_timeout=`, `on_machine_detection=`). + | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `to` | `str` | *required* | Phone number to call (E.164 format). | | `agent` | `Agent` | *required* | Agent instance to use for this call. | +| `first_message` | `str` | `""` | What the AI says when the callee answers. | | `from_number` | `str` | `""` | Override the configured phone number. | -| `machine_detection` | `bool` | `False` | Enable answering machine detection. | -| `voicemail_message` | `str` | `""` | Message to leave on voicemail (requires `machine_detection=True`). | +| `machine_detection` | `bool` | `True` | Enable answering machine detection. Defaults **on** since 0.6.2 — on Twilio Patter uses `MachineDetection=DetectMessageEnd` + Async AMD so there is no answer-latency penalty on human pickups. Pass `False` to skip per-call AMD billing for known destinations. | +| `on_machine_detection` | `Callable[[MachineDetectionResult], Awaitable[None] \| None] \| None` | `None` | Fires once when the carrier reports the AMD outcome (`human` or `machine`). | +| `voicemail_message` | `str` | `""` | Message to leave on voicemail. A non-empty value also implicitly enables `machine_detection`. | +| `ring_timeout` | `int \| None` | `25` | Ring timeout in seconds before treating the call as no-answer. Defaults to 25 s — production-recommended. Pass `60` for legacy carrier-default parity, or `None` to omit the parameter entirely (carrier picks its own default). | --- @@ -158,11 +163,15 @@ The `LocalConfig` dataclass holds all provider credentials for local mode. It is | `twilio_token` | `str` | Twilio Auth Token (unpacked from `Twilio(...)`). | | `telnyx_key` | `str` | Telnyx API key (unpacked from `Telnyx(...)`). | | `telnyx_connection_id` | `str` | Telnyx Call Control Application ID (unpacked from `Telnyx(...)`). | +| `telnyx_public_key` | `str` | Telnyx Ed25519 public key for webhook signature verification (optional). | | `openai_key` | `str` | OpenAI API key (resolved from `OpenAIRealtime(...)` or `OPENAI_API_KEY`). | | `elevenlabs_key` | `str` | ElevenLabs API key. | | `deepgram_key` | `str` | Deepgram API key. | +| `cartesia_key`, `rime_key`, `lmnt_key`, `soniox_key`, `speechmatics_key`, `assemblyai_key` | `str` | Provider-specific keys backfilled from the matching constructor or env var. | | `phone_number` | `str` | Phone number in E.164 format. | | `webhook_url` | `str` | Public hostname (no scheme). | +| `require_signature` | `bool` | When `True` (default), inbound webhooks with missing credentials return HTTP 503 instead of silently accepting. Disable only for local mock-provider testing. | +| `persist_root` | `str \| None` | Resolved persistence path for the dashboard's on-disk call history, or `None` to disable. Set by the `persist=` argument on `Patter(...)` (with `PATTER_LOG_DIR` env fallback). | --- diff --git a/docs/python-sdk/providers/openai-realtime-2.mdx b/docs/python-sdk/providers/openai-realtime-2.mdx new file mode 100644 index 00000000..4e2dee45 --- /dev/null +++ b/docs/python-sdk/providers/openai-realtime-2.mdx @@ -0,0 +1,122 @@ +--- +title: "OpenAI Realtime 2 (GA)" +description: "GA Realtime API engine — separate adapter that speaks the new session.update wire shape required by gpt-realtime-2." +icon: "bolt" +--- + +# OpenAI Realtime 2 + +`OpenAIRealtime2` is the engine marker for OpenAI's **GA Realtime API** (the production endpoint that replaces the beta `OpenAI-Beta: realtime=v1` channel). It targets `gpt-realtime-2` by default and routes through `OpenAIRealtime2Adapter` — a dedicated adapter that speaks the GA `session.update` wire shape and performs bidirectional audio transcoding (mulaw 8 kHz ↔ PCM 24 kHz) required by the GA audio engine. + +For the legacy beta endpoint and the lower-cost `gpt-realtime-mini` model, keep using [`OpenAIRealtime`](/python-sdk/providers/openai-realtime). The two engines coexist — pick `OpenAIRealtime2` only when you specifically want the GA endpoint or the `gpt-realtime-2` model. + + +The GA endpoint rejects the legacy `OpenAI-Beta: realtime=v1` header and expects `output_modalities`, nested `audio.{input,output}` blocks with MIME-type strings, and `session.type = "realtime"`. These wire-shape differences are why GA needs its own adapter — the beta `OpenAIRealtimeAdapter` cannot reach `gpt-realtime-2` reliably. + + +## When to use + +| Use `OpenAIRealtime2` when… | Stick with `OpenAIRealtime` when… | +|----------------------------|-----------------------------------| +| You want `gpt-realtime-2` — strongest instruction following + 128K context + configurable `reasoning_effort`. | You're on `gpt-realtime-mini` for cost / latency reasons. | +| You're hitting the GA endpoint and the beta channel is being deprecated for your account. | You don't need the GA wire shape and want to keep the existing adapter path. | +| You want the bidirectional PCM 24 kHz transcoding handled by the SDK rather than the model silently dropping mulaw frames. | Your audio is already PCM 24 kHz end-to-end and beta works for you. | + +## Quickstart + +```python +import asyncio + +from getpatter import Patter, Twilio, OpenAIRealtime2 + +phone = Patter(carrier=Twilio(), phone_number="+15555550100") # TWILIO_* from env + +agent = phone.agent( + engine=OpenAIRealtime2(reasoning_effort="low"), + system_prompt="You are a friendly receptionist.", + first_message="Hello! How can I help today?", +) + +async def main() -> None: + await phone.serve(agent) + +asyncio.run(main()) +``` + +`reasoning_effort="low"` is OpenAI's recommended production tier for live voice — it gives the best instruction following without measurable per-turn latency. + +## Constructor + +```python +from getpatter import OpenAIRealtime2 + +OpenAIRealtime2( + api_key: str = "", # reads OPENAI_API_KEY + voice: str = "alloy", + model: str = "gpt-realtime-2", + reasoning_effort: Literal["minimal", "low", "medium", "high"] | None = None, + input_audio_transcription_model: str | None = None, # default: whisper-1 +) +``` + +All fields are optional with safe defaults. `api_key` falls back to the `OPENAI_API_KEY` environment variable. + +### Reasoning effort + +| Value | When to use | +|-------|-------------| +| `"minimal"` | Snappy turn-taking. Skips most reasoning. | +| `"low"` | **Recommended for production voice.** Good instruction following without measurable per-turn latency. | +| `"medium"` | Multi-step tool flows where the model should plan. Adds latency. | +| `"high"` | Complex reasoning. Not recommended for live phone calls. | + +When set, Patter injects `session.reasoning = { effort: ... }` into the GA `session.update` payload. When omitted, the field is not sent and OpenAI's server default applies. + +### Streaming transcription + +Set `input_audio_transcription_model` to override `audio.input.transcription.model`. The same identifiers as the beta endpoint apply — see the [streaming-transcription table on the OpenAI Realtime page](/python-sdk/providers/openai-realtime#streaming-transcription) for the full list (`whisper-1`, `gpt-4o-mini-transcribe`, `gpt-4o-transcribe`, `gpt-realtime-whisper`). + +## Audio path + +The GA audio engine speaks PCM 24 kHz and silently drops mulaw frames. Patter handles the conversion transparently inside `OpenAIRealtime2Adapter`: + +- **Inbound** (Twilio/Telnyx → model): mulaw 8 kHz → PCM 24 kHz +- **Outbound** (model → Twilio/Telnyx): PCM 24 kHz → mulaw 8 kHz + +No caller-side change is required — both Twilio Media Streams (mulaw 8 kHz) and Telnyx Call Control (PCM 16 kHz / mulaw 8 kHz) work out of the box. + +## Direct adapter use + +`OpenAIRealtime2Adapter` is exported and may be constructed directly when you need to share connection state across calls or override low-level fields: + +```python +from getpatter import OpenAIRealtime2Adapter + +adapter = OpenAIRealtime2Adapter( + api_key="", # reads OPENAI_API_KEY + model="gpt-realtime-2", + voice="nova", + instructions="You are a helpful assistant.", + reasoning_effort="low", + input_audio_transcription_model="gpt-realtime-whisper", +) + +agent = phone.agent(engine=adapter, system_prompt="...", first_message="...") +``` + +The adapter subclasses `OpenAIRealtimeAdapter` and overrides `connect()`, `send_audio()`, `receive_events()`, and `send_first_message()` for the GA wire shape. + +## Backward compatibility + +- Existing `OpenAIRealtime(...)` callers are **unaffected**. The legacy engine continues to target the beta endpoint with `gpt-realtime-mini` as the default. +- `OpenAIRealtime2` ships as an additive engine — no migration required. Pick it when you want the GA endpoint; otherwise stay where you are. +- Pricing for `gpt-realtime-2` is auto-resolved per model from `DEFAULT_PRICING["openai_realtime"].models["gpt-realtime-2"]` — see [Metrics](/python-sdk/metrics). + +## What's Next + + + The legacy engine for `gpt-realtime-mini` and earlier preview models. + All engine classes side by side. + Configure system prompts, tools, and first messages. + Function calling inside a Realtime session. + diff --git a/docs/python-sdk/providers/openai-realtime.mdx b/docs/python-sdk/providers/openai-realtime.mdx index 9f3d33cf..efdf3faf 100644 --- a/docs/python-sdk/providers/openai-realtime.mdx +++ b/docs/python-sdk/providers/openai-realtime.mdx @@ -113,9 +113,9 @@ asyncio.run(main()) ``` - -The `reasoning_effort` and `input_audio_transcription_model` arguments live on `OpenAIRealtimeAdapter`. The shorthand `OpenAIRealtime(model=...)` engine wrapper currently exposes only `api_key`, `voice`, and `model` — use the adapter directly when you need the new fields. - + +Since 0.6.2 you can pass `reasoning_effort` and `input_audio_transcription_model` directly to the engine wrapper — `OpenAIRealtime(model="gpt-realtime-2", reasoning_effort="low", input_audio_transcription_model="gpt-realtime-whisper")`. Reach for the lower-level `OpenAIRealtimeAdapter` only when you need every field (custom VAD type, modalities, `silence_duration_ms`, etc.). For the GA `gpt-realtime-2` endpoint, prefer the dedicated [`OpenAIRealtime2`](/python-sdk/engines#openairealtime2) marker — it dispatches to a separate adapter that handles the GA-shape `session.update` wire format automatically. + ## Backward compatibility diff --git a/docs/python-sdk/quickstart.mdx b/docs/python-sdk/quickstart.mdx index 4bd7d717..487be9d7 100644 --- a/docs/python-sdk/quickstart.mdx +++ b/docs/python-sdk/quickstart.mdx @@ -110,6 +110,10 @@ You'll see the Patter banner, a Cloudflare tunnel URL, and a log line confirming Pick up your phone, dial your Twilio number, and the agent will answer with `"Hello! How can I help?"`. Start talking. + +Since 0.6.2, `Patter(...)` persists per-call records (`metadata.json`, `transcript.jsonl`, `events.jsonl`) to the platform default data directory by default so the local dashboard's call history survives process restarts. Pass `persist=False` to keep the old ephemeral-RAM-only behaviour, or `persist="/custom/path"` to choose a different location. See [Call logging](/python-sdk/call-logging) for the full layout. + + --- ## Using a different engine diff --git a/docs/python-sdk/reference.mdx b/docs/python-sdk/reference.mdx index ff01bfdb..3b7e1a04 100644 --- a/docs/python-sdk/reference.mdx +++ b/docs/python-sdk/reference.mdx @@ -19,8 +19,9 @@ Patter( carrier: Twilio | Telnyx | None = None, phone_number: str = "", webhook_url: str = "", - tunnel: CloudflareTunnel | Static | bool | None = None, + tunnel: CloudflareTunnel | Static | Ngrok | bool | None = None, pricing: dict | None = None, + persist: bool | str | None = None, ) ``` @@ -29,8 +30,9 @@ Patter( | `carrier` | `Twilio \| Telnyx \| None` | `None` | Telephony carrier instance. Reads credentials from env vars when arguments are omitted. | | `phone_number` | `str` | `""` | Phone number in E.164 format. | | `webhook_url` | `str` | `""` | Public hostname, no scheme. | -| `tunnel` | `CloudflareTunnel \| Static \| bool \| None` | `None` | Tunnel directive. `True` is shorthand for `CloudflareTunnel()`. | +| `tunnel` | `CloudflareTunnel \| Static \| Ngrok \| bool \| None` | `None` | Tunnel directive. `True` is shorthand for `CloudflareTunnel()`. | | `pricing` | `dict \| None` | `None` | Override default provider pricing. See [Metrics & Cost Tracking](/python-sdk/metrics). | +| `persist` | `bool \| str \| None` | `None` | Persistent dashboard history. `None` (default) → falls back to `PATTER_LOG_DIR`, then platform default — i.e. persistence is ON by default since 0.6.2. `False` force-off. `True` → platform default path. String → explicit path (`~` expanded). See [Configuration](/python-sdk/configuration#persistent-dashboard-history). | --- @@ -41,12 +43,12 @@ Patter( ```python def agent( system_prompt: str, - engine: OpenAIRealtime | ElevenLabsConvAI | None = None, + engine: OpenAIRealtime | OpenAIRealtime2 | ElevenLabsConvAI | None = None, stt: STTProvider | None = None, llm: LLMProvider | None = None, tts: TTSProvider | None = None, voice: str = "alloy", - model: str = "gpt-4o-mini-realtime-preview", + model: str = "gpt-realtime-mini", language: str = "en", first_message: str = "", tools: list[Tool] | None = None, @@ -60,20 +62,23 @@ def agent( barge_in_threshold_ms: int = 300, aggressive_first_flush: bool = False, disable_phone_preamble: bool = False, + echo_cancellation: bool = False, + mcp_servers: list | None = None, + prewarm_first_message: bool | None = None, ) -> Agent ``` -Pass `engine=OpenAIRealtime(...)` or `engine=ElevenLabsConvAI(...)` for end-to-end engines; omit `engine=` and pass `stt=`/`tts=` for pipeline mode. +Pass `engine=OpenAIRealtime(...)`, `engine=OpenAIRealtime2(...)`, or `engine=ElevenLabsConvAI(...)` for end-to-end engines; omit `engine=` and pass `stt=`/`tts=` for pipeline mode. | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `system_prompt` | `str` | *required* | Agent instructions. | -| `engine` | `OpenAIRealtime \| ElevenLabsConvAI \| None` | `None` | End-to-end voice runtime. Omit for pipeline mode. | +| `engine` | `OpenAIRealtime \| OpenAIRealtime2 \| ElevenLabsConvAI \| None` | `None` | End-to-end voice runtime. Omit for pipeline mode. | | `stt` | `STTProvider \| None` | `None` | STT instance for pipeline mode (e.g. `DeepgramSTT()`). | | `llm` | `LLMProvider \| None` | `None` | LLM provider instance for pipeline mode (e.g. `AnthropicLLM()`). Mutually exclusive with `on_message` on `serve()`. Ignored when `engine` is set. | | `tts` | `TTSProvider \| None` | `None` | TTS instance for pipeline mode (e.g. `ElevenLabsTTS()`). | | `voice` | `str` | `"alloy"` | TTS voice name (when engine doesn't carry it). | -| `model` | `str` | `"gpt-4o-mini-realtime-preview"` | AI model ID (when engine doesn't carry it). | +| `model` | `str` | `"gpt-realtime-mini"` | AI model ID (when engine doesn't carry it). | | `language` | `str` | `"en"` | BCP-47 language code. | | `first_message` | `str` | `""` | Greeting spoken at call start. | | `tools` | `list[Tool] \| None` | `None` | `Tool(...)` instances for function calling. | @@ -87,6 +92,9 @@ Pass `engine=OpenAIRealtime(...)` or `engine=ElevenLabsConvAI(...)` for end-to-e | `barge_in_threshold_ms` | `int` | `300` | Barge-in hang-over window (ms). Set to `0` to disable. | | `aggressive_first_flush` | `bool` | `False` | Emit the first clause on a soft punctuation boundary (`,`, em/en-dash) once buffer ≥40 chars. Saves 200–500 ms TTFA. Hard-disabled when `language` starts with `"it"`. Pipeline mode only. | | `disable_phone_preamble` | `bool` | `False` | Disable the phone-friendly preamble Patter prepends to `system_prompt` (no markdown / emojis / lists, numbers spelled out, replies kept short). Default `False` keeps the preamble on. | +| `echo_cancellation` | `bool` | `False` | Pipeline mode only. Instantiates an `NlmsEchoCanceller` per call so the agent's own TTS bleed is removed from the inbound mic before VAD/STT. See [Echo Cancellation](/python-sdk/features#echo-cancellation-nlms-aec). | +| `mcp_servers` | `list \| None` | `None` | List of MCP server definitions exposed to the agent as tools. See [MCP](/python-sdk/mcp). | +| `prewarm_first_message` | `bool \| None` | `None` (=`False`) | Opt in to pre-rendering `first_message` TTS during the ringing window so playback starts instantly on pickup. Off by default in 0.6.2 — re-enable per agent when you've validated barge-in interaction. | **Raises:** `ValueError` if required credentials are missing or conflicting options are passed (e.g. both `engine` and `stt`/`tts`). @@ -120,17 +128,21 @@ Start the embedded server. Blocks until stopped. ```python async def call( to: str, + agent: Agent | None = None, first_message: str = "", from_number: str = "", - agent: Agent | None = None, - machine_detection: bool = False, - on_machine: Callable[[dict], Awaitable[None]] | None = None, + machine_detection: bool = True, + on_machine_detection: Callable[[MachineDetectionResult], Awaitable[None] | None] | None = None, voicemail_message: str = "", - ring_timeout: int | None = None, + ring_timeout: int | None = 25, ) -> None ``` -Make an outbound call. +Make an outbound call. Keyword arguments are **snake_case** — e.g. `machine_detection=`, `ring_timeout=`, `on_machine_detection=` (the latter was renamed from `on_machine` in 0.6.2; the callback receives a `MachineDetectionResult` not a raw dict). + +`machine_detection` defaults to **`True`** since 0.6.2 — on Twilio Patter uses `MachineDetection=DetectMessageEnd` + Async AMD so there is no answer-latency penalty on human pickups. Pass `machine_detection=False` to skip per-call AMD billing for known destinations. + +`ring_timeout` defaults to **25 seconds**, the production-recommended value. Pass `60` for legacy carrier-default parity, or `None` to omit the parameter entirely (carrier picks its own default). --- @@ -190,8 +202,8 @@ class Telnyx: ## Engines ```python -from getpatter import OpenAIRealtime, ElevenLabsConvAI # flat aliases -from getpatter.engines import openai, elevenlabs # namespaced +from getpatter import OpenAIRealtime, OpenAIRealtime2, ElevenLabsConvAI # flat aliases +from getpatter.engines import openai, openai_realtime_2, elevenlabs # namespaced ``` ### OpenAIRealtime @@ -201,9 +213,25 @@ from getpatter.engines import openai, elevenlabs # namespace class OpenAIRealtime: api_key: str = "" # reads OPENAI_API_KEY when empty voice: str = "alloy" - model: str = "gpt-4o-mini-realtime-preview" + model: str = "gpt-realtime-mini" + reasoning_effort: Literal["minimal", "low", "medium", "high"] | None = None + input_audio_transcription_model: str | None = None +``` + +### OpenAIRealtime2 + +```python +@dataclass(frozen=True) +class OpenAIRealtime2: + api_key: str = "" # reads OPENAI_API_KEY when empty + voice: str = "alloy" + model: str = "gpt-realtime-2" + reasoning_effort: Literal["minimal", "low", "medium", "high"] | None = None + input_audio_transcription_model: str | None = None ``` +Selects the GA Realtime API. Separate marker from `OpenAIRealtime` because the GA endpoint speaks a different `session.update` wire shape. See [Engines › OpenAIRealtime2](/python-sdk/engines#openairealtime2). + ### ElevenLabsConvAI ```python @@ -315,7 +343,7 @@ All data classes are frozen (immutable) dataclasses. class Agent: system_prompt: str voice: str = "alloy" - model: str = "gpt-4o-mini-realtime-preview" + model: str = "gpt-realtime-mini" language: str = "en" first_message: str = "" tools: list[dict] | None = None @@ -332,9 +360,11 @@ class Agent: barge_in_threshold_ms: int = 300 aggressive_first_flush: bool = False disable_phone_preamble: bool = False + echo_cancellation: bool = False + prewarm_first_message: bool = False ``` -`provider` is a closed string literal — only `"openai_realtime"`, `"elevenlabs_convai"`, or `"pipeline"` are valid. It is normally derived from `engine` / `stt`+`tts` and rarely set by hand. +`provider` is a closed string literal — `"openai_realtime"`, `"openai_realtime_2"`, `"elevenlabs_convai"`, or `"pipeline"`. It is normally derived from `engine` / `stt`+`tts` and rarely set by hand. ### CallEvent @@ -462,7 +492,7 @@ from getpatter import ( TwilioAdapter, TelnyxAdapter, # advanced: direct adapter access # Engines - OpenAIRealtime, ElevenLabsConvAI, + OpenAIRealtime, OpenAIRealtime2, ElevenLabsConvAI, # STT classes DeepgramSTT, WhisperSTT, OpenAITranscribeSTT, @@ -513,7 +543,7 @@ from getpatter import ( ) from getpatter.carriers import twilio, telnyx -from getpatter.engines import openai, elevenlabs +from getpatter.engines import openai, openai_realtime_2, elevenlabs from getpatter.stt import deepgram, whisper, openai_transcribe, cartesia, assemblyai, soniox, speechmatics from getpatter.tts import elevenlabs, openai, cartesia, rime, lmnt from getpatter.llm import openai, anthropic, groq, cerebras, google diff --git a/docs/python-sdk/test-mode.mdx b/docs/python-sdk/test-mode.mdx index f795a6c4..5e9ff2fb 100644 --- a/docs/python-sdk/test-mode.mdx +++ b/docs/python-sdk/test-mode.mdx @@ -31,7 +31,7 @@ This opens an interactive REPL: ============================================================ PATTER TEST MODE ============================================================ - Agent: gpt-4o-mini-realtime-preview / alloy + Agent: gpt-realtime-mini / alloy Provider: openai_realtime Call ID: test_a1b2c3d4e5f6 Caller: +15550000001 → Callee: +15550000002 diff --git a/docs/python-sdk/tts.mdx b/docs/python-sdk/tts.mdx index 987f7350..b9e28a02 100644 --- a/docs/python-sdk/tts.mdx +++ b/docs/python-sdk/tts.mdx @@ -83,7 +83,7 @@ tts = ElevenLabsTTS(api_key="...", voice_id="EXAVITQu4vr4xnSDxMaL", model_id="el | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `api_key` | `str \| None` | `None` | API key — reads from `ELEVENLABS_API_KEY` if omitted. | -| `voice_id` | `str` | `"EXAVITQu4vr4xnSDxMaL"` (Sarah) | ElevenLabs voice ID (or name). | +| `voice_id` | `str` | `"21m00Tcm4TlvDq8ikWAM"` (Rachel) | ElevenLabs voice ID (or name). | | `model_id` | `ElevenLabsModel \| str` | `"eleven_flash_v2_5"` | Typed literal: `eleven_flash_v2_5` / `eleven_turbo_v2_5` / `eleven_v3` / `eleven_multilingual_v2` / `eleven_monolingual_v1`. | | `output_format` | `str` | `"pcm_16000"` | ElevenLabs output format. | diff --git a/docs/typescript-sdk/agents.mdx b/docs/typescript-sdk/agents.mdx index 8ea84ca4..0e11e85a 100644 --- a/docs/typescript-sdk/agents.mdx +++ b/docs/typescript-sdk/agents.mdx @@ -59,7 +59,7 @@ Available LLM providers: `OpenAILLM`, `AnthropicLLM`, `GroqLLM`, `CerebrasLLM`, | Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | `systemPrompt` | `string` | Yes | — | Instructions that define the agent's persona and behavior. | -| `engine` | `OpenAIRealtime \| ElevenLabsConvAI` | No | defaults to `OpenAIRealtime` | End-to-end engine. See [Engines](/typescript-sdk/engines). Omit for pipeline mode. | +| `engine` | `OpenAIRealtime \| OpenAIRealtime2 \| ElevenLabsConvAI` | No | defaults to `OpenAIRealtime` when none provided and pipeline pieces are absent | End-to-end engine. See [Engines](/typescript-sdk/engines). Omit for pipeline mode. | | `stt` | `STTProvider` | No | — | STT instance for pipeline mode (`new DeepgramSTT()`, `new CartesiaSTT()`, ...). | | `llm` | `LLMProvider` | No | — | LLM instance for pipeline mode (`new AnthropicLLM()`, `new GroqLLM()`, ...). Mutually exclusive with `onMessage` on `serve()`. Ignored when `engine` is set. See [LLM](/typescript-sdk/llm). | | `tts` | `TTSProvider` | No | — | TTS instance for pipeline mode (`new ElevenLabsTTS()`, `new RimeTTS()`, ...). | diff --git a/docs/typescript-sdk/call-logging.mdx b/docs/typescript-sdk/call-logging.mdx index b73a6ac3..97473f5f 100644 --- a/docs/typescript-sdk/call-logging.mdx +++ b/docs/typescript-sdk/call-logging.mdx @@ -4,7 +4,7 @@ description: "Opt-in per-call filesystem logs: metadata, transcripts, and operat icon: "folder-open" --- -Patter can persist every call to a directory tree on disk so you can replay transcripts, audit tool calls, and track latency/cost trends without running a hosted dashboard. Logging is **opt-in and off by default** — nothing is written unless you ask for it. +Patter can persist every call to a directory tree on disk so you can replay transcripts, audit tool calls, and track latency/cost trends without running a hosted dashboard. Persistence is **on by default since 0.6.2** (writes land under the platform default location described below) so the dashboard rebuilds across process restarts without extra wiring. Pass `persist: false` to keep the prior ephemeral-RAM-only behaviour. The same on-disk layout also backs the local dashboard's call history: when persistence is enabled, `phone.serve()` rebuilds the in-memory dashboard from disk on startup so call history survives process restarts without an external database. @@ -30,7 +30,7 @@ const phone = new Patter({ | `persist` value | Behaviour | |-----------------|-----------| -| omitted / `undefined` (default) | Falls back to `PATTER_LOG_DIR`; off when env is also unset (backward-compatible). | +| omitted / `undefined` (default) | **On**. Falls back to `PATTER_LOG_DIR` when set; otherwise writes under the platform default location. (Changed from opt-in to default-on in 0.6.2 for dashboard hydrate.) | | `false` | Force-off, even if `PATTER_LOG_DIR` is set. | | `true` | Platform default location (see below). | | `""` | Use the supplied path (`~` expanded). | @@ -53,7 +53,7 @@ Platform defaults for `auto` (and for `persist: true`): - Linux: `$XDG_DATA_HOME/patter` (falls back to `~/.local/share/patter`) - Windows: `%LOCALAPPDATA%\patter` -When `persist` is unset and the env var is unset, the logger is a no-op — no directories are created, no files are written. When `persist` is set explicitly, the env var is ignored. +When `persist` is set explicitly the env var is ignored. When `persist` is left unset (the default) the logger uses `PATTER_LOG_DIR` if set, otherwise the platform default location. Pass `persist: false` to disable disk writes entirely. ## Layout @@ -159,7 +159,7 @@ for (const line of transcript.split('\n').filter(Boolean)) { ## Safety guarantees - File-write errors never raise into the call path — a full disk or a permissions hiccup logs a warning and the call continues uninterrupted. -- When persistence is disabled (`persist: false`, or `persist` unset and `PATTER_LOG_DIR` unset), `CallLogger.enabled` is `false` and every method returns immediately. +- When persistence is disabled (`persist: false`), `CallLogger.enabled` is `false` and every method returns immediately. ## Interop diff --git a/docs/typescript-sdk/carrier.mdx b/docs/typescript-sdk/carrier.mdx index 184cec4d..ee95553f 100644 --- a/docs/typescript-sdk/carrier.mdx +++ b/docs/typescript-sdk/carrier.mdx @@ -36,6 +36,10 @@ const phone = new Patter({ On `serve()`, Patter automatically sets the `voice_url` on the Twilio number to `https:///webhooks/twilio/voice` via the Twilio REST API — no manual Console configuration needed. +### How caller / callee reach the agent + +Inbound Twilio calls deliver the caller and callee numbers via TwiML `` / `` children of `` — Twilio surfaces these on the WS `start` frame as `start.customParameters`. Patter's `/webhooks/twilio/voice` route emits this TwiML automatically. If you construct the TwiML yourself, build it with `TwilioAdapter.generateStreamTwiml(streamUrl, { caller, callee })` so the values land on the WS `start` frame. Query-string parameters on the `` are stripped by Twilio before the WS handshake and will not work. + ### Signature verification The Auth Token is also used to verify every Twilio webhook with HMAC-SHA1 against the `X-Twilio-Signature` header. Requests with invalid signatures are rejected with HTTP 403. @@ -67,6 +71,10 @@ const phone = new Patter({ | `connectionId` | `string` | — | Call Control Application ID. Reads from `TELNYX_CONNECTION_ID` when omitted. | | `publicKey` | `string` | — | Optional. Ed25519 public key for webhook signature verification. Reads from `TELNYX_PUBLIC_KEY` when omitted. | +### How caller / callee reach the agent + +The Telnyx WS upgrade URL carries the metadata as query-string parameters: `wss:///ws/stream/?caller=&callee=`. Telnyx preserves the query string through the WebSocket handshake, so no equivalent of TwiML `` is needed. + ### Signature verification When `publicKey` is set (or `TELNYX_PUBLIC_KEY` is present), every Telnyx webhook is verified with Ed25519. Requests older than 5 minutes are rejected (replay protection). diff --git a/docs/typescript-sdk/configuration.mdx b/docs/typescript-sdk/configuration.mdx index a4ad78cd..39678081 100644 --- a/docs/typescript-sdk/configuration.mdx +++ b/docs/typescript-sdk/configuration.mdx @@ -27,7 +27,7 @@ The carrier instance reads credentials from environment variables when you don't | `webhookUrl` | `string` | Conditional | — | Public hostname for webhooks (no protocol prefix, no path). Required unless using `tunnel: true` in `serve()`. | | `tunnel` | `CloudflareTunnel \| StaticTunnel \| boolean` | No | — | Tunnel directive. `true` is shorthand for `new CloudflareTunnel()`. See [Tunneling](/dev-tools/tunneling). | | `pricing` | `Record>` | No | — | Override default provider pricing estimates. See [Metrics](/typescript-sdk/metrics). | -| `persist` | `boolean \| string` | No | — | Persist the dashboard's call history to disk so it survives process restarts. See [Persistent dashboard history](#persistent-dashboard-history) below. | +| `persist` | `boolean \| string` | No | `true` (on, platform default path) | Persist the dashboard's call history to disk so it survives process restarts. Defaults to ON since 0.6.2 — pass `persist: false` to keep the prior ephemeral-RAM-only behaviour. See [Persistent dashboard history](#persistent-dashboard-history) below. | ## Webhook URL Format @@ -134,7 +134,7 @@ By default the dashboard is an in-memory ring buffer — restart the process and | `persist` value | Behaviour | |-----------------|-----------| -| omitted / `undefined` (default) | Falls back to the `PATTER_LOG_DIR` env var. If the env var is also unset, persistence is **off** — backward-compatible with prior releases. | +| omitted / `undefined` (default) | Persistence is **on**. Falls back to `PATTER_LOG_DIR` when set; otherwise writes under the platform default location. Changed from opt-in to default-on in 0.6.2 so the dashboard's hydrate path can rebuild call history across process restarts without extra wiring. | | `false` | Force-off. Disk writes are skipped even when `PATTER_LOG_DIR` is set. | | `true` | Write under the platform default location (see below). Equivalent to `PATTER_LOG_DIR=auto`. | | `""` (string) | Write under the supplied path (`~` is expanded). Equivalent to `PATTER_LOG_DIR=`. | diff --git a/docs/typescript-sdk/dashboard.mdx b/docs/typescript-sdk/dashboard.mdx index a34fec56..93958402 100644 --- a/docs/typescript-sdk/dashboard.mdx +++ b/docs/typescript-sdk/dashboard.mdx @@ -17,7 +17,8 @@ Patter ships a built-in web dashboard for monitoring calls in real time. It runs The dashboard is enabled by default whenever you start a server in local mode: ```typescript -await phone.serve(agent, { +await phone.serve({ + agent, port: 8000, dashboard: true, // Enable dashboard (default: true) dashboardToken: "secret", // Optional: protect with a token @@ -35,7 +36,8 @@ Once running, open your browser at `http://127.0.0.1:8000/`. Protect the dashboard with a token: ```typescript -await phone.serve(agent, { +await phone.serve({ + agent, port: 8000, dashboardToken: "my-secret-token", }); diff --git a/docs/typescript-sdk/engines.mdx b/docs/typescript-sdk/engines.mdx index 6e8a1afc..21b1f7f8 100644 --- a/docs/typescript-sdk/engines.mdx +++ b/docs/typescript-sdk/engines.mdx @@ -8,12 +8,13 @@ icon: "bolt" An **engine** is an end-to-end speech-to-speech runtime. Pass an engine instance to `phone.agent({ engine })` and Patter wires the audio stream straight through to the provider — no separate STT or TTS is needed. -Patter ships with two engine classes today: +Patter ships with three engine classes today: -- [`OpenAIRealtime`](#openairealtime) — OpenAI's Realtime API +- [`OpenAIRealtime`](#openairealtime) — OpenAI's Realtime API (beta endpoint) +- [`OpenAIRealtime2`](#openairealtime2) — OpenAI's GA Realtime API (targets `gpt-realtime-2`) - [`ElevenLabsConvAI`](#elevenlabsconvai) — ElevenLabs Conversational AI -Both classes are imported by name from the package barrel: `import { OpenAIRealtime, ElevenLabsConvAI } from "getpatter"`. +All three classes are imported by name from the package barrel: `import { OpenAIRealtime, OpenAIRealtime2, ElevenLabsConvAI } from "getpatter"`. If you need full control over STT, LLM, and TTS independently, use [pipeline mode](/typescript-sdk/llm#pipeline-mode) instead and omit `engine`. @@ -41,6 +42,8 @@ await phone.serve({ agent }); | `apiKey` | `string` | — | OpenAI API key. Reads from `OPENAI_API_KEY` when omitted. | | `voice` | `string` | `"alloy"` | One of `"alloy"`, `"ash"`, `"ballad"`, `"coral"`, `"echo"`, `"sage"`, `"shimmer"`, `"verse"`. | | `model` | `string` | `"gpt-4o-mini-realtime-preview"` | OpenAI Realtime model ID. See [supported models](/typescript-sdk/providers/openai-realtime#models). | +| `reasoningEffort` | `"minimal" \| "low" \| "medium" \| "high"` | — | Reasoning-effort tier for `gpt-realtime-2`. When omitted, the field is not sent and the server default applies. OpenAI recommends `"low"` for production voice. | +| `inputAudioTranscriptionModel` | `string` | — | Override for the Realtime session's `input_audio_transcription.model`. Omit to keep `whisper-1`. | ### Supported model identifiers @@ -48,14 +51,45 @@ The `model` option accepts any OpenAI Realtime model ID. Common values: | Model | Notes | |-------|-------| -| `"gpt-realtime-mini"` | Default. Lowest latency / lowest cost. | +| `"gpt-4o-mini-realtime-preview"` | Engine marker default. Earlier preview line — cheap and low-latency. | +| `"gpt-realtime-mini"` | GA mini — recommended cheap default for new deployments. | | `"gpt-realtime"` | GA realtime model (Aug 2025). | -| `"gpt-realtime-2"` | Most-capable: stronger instruction following, configurable `reasoningEffort`, 128K context. | +| `"gpt-realtime-2"` | Most-capable: stronger instruction following, configurable `reasoningEffort`, 128K context. Use [`OpenAIRealtime2`](#openairealtime2) for the GA wire shape. | | `"gpt-4o-realtime-preview"` | Earlier preview line; ~10x the per-token cost of mini. | -| `"gpt-4o-mini-realtime-preview"` | Earlier preview line. | Pricing is auto-resolved per model — see [Metrics](/typescript-sdk/metrics). For `reasoningEffort`, transcription model, and the full configuration surface, see [OpenAI Realtime — full reference](/typescript-sdk/providers/openai-realtime). +## OpenAIRealtime2 + +OpenAI's **GA Realtime API** — separate engine marker because the GA endpoint speaks a different `session.update` wire shape (`output_modalities`, nested `audio.{input,output}` blocks, `session.type = "realtime"`) and rejects the legacy beta header. Targets `gpt-realtime-2` by default and routes through `OpenAIRealtime2Adapter`, which also handles bidirectional mulaw 8 kHz ↔ PCM 24 kHz transcoding (the GA audio engine silently drops mulaw frames). + +```typescript +// npx tsx example.ts +import { Patter, Twilio, OpenAIRealtime2 } from "getpatter"; + +const phone = new Patter({ carrier: new Twilio(), phoneNumber: "+15550001234" }); + +const agent = phone.agent({ + engine: new OpenAIRealtime2({ reasoningEffort: "low" }), // OPENAI_API_KEY from env + systemPrompt: "You are a helpful assistant.", + firstMessage: "Hello!", +}); + +await phone.serve({ agent }); +``` + +| Parameter | Type | Default | Description | +|-----------|------|---------|-------------| +| `apiKey` | `string` | — | OpenAI API key. Reads from `OPENAI_API_KEY` when omitted. | +| `voice` | `string` | `"alloy"` | Voice preset. | +| `model` | `string` | `"gpt-realtime-2"` | GA Realtime model. | +| `reasoningEffort` | `"minimal" \| "low" \| "medium" \| "high"` | — | When omitted, the field is not sent and the server default applies. OpenAI recommends `"low"` for production voice. | +| `inputAudioTranscriptionModel` | `string` | — | Override for `audio.input.transcription.model`. Omit to keep `whisper-1`. | + + +The GA adapter pins `turn_detection.create_response: false` and `interrupt_response: false` in the `session.update` payload. Patter owns response creation (`response.create`) and barge-in cancellation explicitly so the hallucination filter and barge-in pipeline can decide per turn rather than letting the server VAD auto-trigger. See [`OpenAIRealtime2` — full reference](/typescript-sdk/providers/openai-realtime-2). + + ## ElevenLabsConvAI ElevenLabs Conversational AI — premium voice quality using a managed agent configured in the ElevenLabs dashboard. diff --git a/docs/typescript-sdk/local-mode.mdx b/docs/typescript-sdk/local-mode.mdx index 09036bfd..806518f7 100644 --- a/docs/typescript-sdk/local-mode.mdx +++ b/docs/typescript-sdk/local-mode.mdx @@ -78,13 +78,12 @@ Returns `{ "status": "ok", "mode": "local" }`. ## WebSocket Streams -Audio streams are handled over WebSocket: +Audio streams are handled over WebSocket. The server upgrades HTTP connections to WebSocket on the `/ws/stream/` path and each call gets its own connection. How `caller` and `callee` reach the handler depends on the carrier: -``` -wss://{webhookUrl}/ws/stream/{callId}?caller={caller}&callee={callee} -``` +- **Twilio** — the `wss://{webhookUrl}/ws/stream/{callId}` URL has no query string. Twilio strips query-string params during the WS upgrade handshake, so the inbound TwiML emits the caller / callee as `` / `` children of ``. The values are then surfaced in the WS `start` frame as `start.customParameters` and applied by `StreamHandler.handleCallStart`. +- **Telnyx** — `wss://{webhookUrl}/ws/stream/{callControlId}?caller={caller}&callee={callee}`. The Call Control flow includes the metadata in the answer command and the SDK reads the query string on the WS upgrade. -The server upgrades HTTP connections to WebSocket on the `/ws/stream/` path. Each call gets its own WebSocket connection. +If you construct the inbound TwiML yourself (rather than letting Patter's `/webhooks/twilio/voice` route emit it), use `TwilioAdapter.generateStreamTwiml(streamUrl, { caller, callee })` — the `parameters` argument is forwarded as `` children of `` so it lands on `start.customParameters`. ### Rate Limiting diff --git a/docs/typescript-sdk/mcp.mdx b/docs/typescript-sdk/mcp.mdx index 33b33a1a..7833d5cb 100644 --- a/docs/typescript-sdk/mcp.mdx +++ b/docs/typescript-sdk/mcp.mdx @@ -51,7 +51,7 @@ const agent = phone.agent({ ], }); -await phone.serve(agent, { port: 8000 }); +await phone.serve({ agent, port: 8000 }); ``` At call start you'll see a log line: @@ -154,7 +154,7 @@ const agent = phone.agent({ ], }); -await phone.serve(agent, { port: 8000 }); +await phone.serve({ agent, port: 8000 }); ``` ```python Python diff --git a/docs/typescript-sdk/metrics.mdx b/docs/typescript-sdk/metrics.mdx index 9e9cbc2e..adc6ca69 100644 --- a/docs/typescript-sdk/metrics.mdx +++ b/docs/typescript-sdk/metrics.mdx @@ -161,15 +161,14 @@ The most common case: pick a model on your adapter, and Patter bills the right r ```typescript TypeScript -import { Patter, Twilio } from "getpatter"; -import { OpenAIRealtimeAdapter, OpenAIRealtimeModel } from "getpatter"; +import { Patter, Twilio, OpenAIRealtime } from "getpatter"; -const agent = Patter.agent({ +const phone = new Patter({ carrier: new Twilio(), phoneNumber: "+15550001234" }); + +const agent = phone.agent({ systemPrompt: "You are a helpful assistant.", - realtime: new OpenAIRealtimeAdapter({ model: OpenAIRealtimeModel.GPT_REALTIME_2 }), + engine: new OpenAIRealtime({ model: "gpt-realtime-2" }), }); - -const phone = new Patter({ carrier: new Twilio(), phoneNumber: "+15550001234" }); // Billing auto-uses the gpt-realtime-2 rate ($32/M audio in, $64/M audio out). ``` diff --git a/docs/typescript-sdk/providers/anthropic.mdx b/docs/typescript-sdk/providers/anthropic.mdx index 8aac72db..1ee42e38 100644 --- a/docs/typescript-sdk/providers/anthropic.mdx +++ b/docs/typescript-sdk/providers/anthropic.mdx @@ -75,7 +75,7 @@ const agent = phone.agent({ firstMessage: "Hi, how can I help?", }); -await phone.serve(agent); +await phone.serve({ agent }); ``` ```python Python diff --git a/docs/typescript-sdk/providers/cerebras.mdx b/docs/typescript-sdk/providers/cerebras.mdx index 5eee4e88..cefb4ea8 100644 --- a/docs/typescript-sdk/providers/cerebras.mdx +++ b/docs/typescript-sdk/providers/cerebras.mdx @@ -86,7 +86,7 @@ const agent = phone.agent({ firstMessage: "Hi, how can I help?", }); -await phone.serve(agent); +await phone.serve({ agent }); ``` ```python Python diff --git a/docs/typescript-sdk/providers/google.mdx b/docs/typescript-sdk/providers/google.mdx index 341946a4..e927815f 100644 --- a/docs/typescript-sdk/providers/google.mdx +++ b/docs/typescript-sdk/providers/google.mdx @@ -82,7 +82,7 @@ const agent = phone.agent({ firstMessage: "Hi, how can I help?", }); -await phone.serve(agent); +await phone.serve({ agent }); ``` ```python Python diff --git a/docs/typescript-sdk/providers/groq.mdx b/docs/typescript-sdk/providers/groq.mdx index 61139eb7..80f2b453 100644 --- a/docs/typescript-sdk/providers/groq.mdx +++ b/docs/typescript-sdk/providers/groq.mdx @@ -83,7 +83,7 @@ const agent = phone.agent({ firstMessage: "Hi, how can I help?", }); -await phone.serve(agent); +await phone.serve({ agent }); ``` ```python Python diff --git a/docs/typescript-sdk/providers/openai-realtime-2.mdx b/docs/typescript-sdk/providers/openai-realtime-2.mdx new file mode 100644 index 00000000..fba067e8 --- /dev/null +++ b/docs/typescript-sdk/providers/openai-realtime-2.mdx @@ -0,0 +1,134 @@ +--- +title: "OpenAI Realtime 2 (GA)" +description: "GA Realtime API engine — separate adapter that speaks the new session.update wire shape required by gpt-realtime-2." +icon: "bolt" +--- + +# OpenAI Realtime 2 + +`OpenAIRealtime2` is the engine marker for OpenAI's **GA Realtime API** (the production endpoint that replaces the beta `OpenAI-Beta: realtime=v1` channel). It targets `gpt-realtime-2` by default and routes through `OpenAIRealtime2Adapter` — a dedicated adapter that speaks the GA `session.update` wire shape and performs bidirectional audio transcoding (mulaw 8 kHz ↔ PCM 24 kHz) required by the GA audio engine. + +For the legacy beta endpoint and the lower-cost `gpt-realtime-mini` model, keep using [`OpenAIRealtime`](/typescript-sdk/providers/openai-realtime). The two engines coexist — pick `OpenAIRealtime2` only when you specifically want the GA endpoint or the `gpt-realtime-2` model. + + +The GA endpoint rejects the legacy `OpenAI-Beta: realtime=v1` header and expects `output_modalities`, nested `audio.{input,output}` blocks with MIME-type strings, and `session.type = "realtime"`. These wire-shape differences are why GA needs its own adapter — the beta `OpenAIRealtimeAdapter` cannot reach `gpt-realtime-2` reliably. + + +## When to use + +| Use `OpenAIRealtime2` when… | Stick with `OpenAIRealtime` when… | +|----------------------------|-----------------------------------| +| You want `gpt-realtime-2` — strongest instruction following + 128K context + configurable `reasoningEffort`. | You're on `gpt-realtime-mini` for cost / latency reasons. | +| You're hitting the GA endpoint and the beta channel is being deprecated for your account. | You don't need the GA wire shape and want to keep the existing adapter path. | +| You want the bidirectional PCM 24 kHz transcoding handled by the SDK rather than the model silently dropping mulaw frames. | Your audio is already PCM 24 kHz end-to-end and beta works for you. | + +## Quickstart + +```typescript +import { Patter, Twilio, OpenAIRealtime2 } from "getpatter"; + +const phone = new Patter({ + carrier: new Twilio(), // TWILIO_* from env + phoneNumber: "+15555550100", +}); + +const agent = phone.agent({ + engine: new OpenAIRealtime2({ reasoningEffort: "low" }), + systemPrompt: "You are a friendly receptionist.", + firstMessage: "Hello! How can I help today?", +}); + +await phone.serve({ agent }); +``` + +`reasoningEffort: "low"` is OpenAI's recommended production tier for live voice — it gives the best instruction following without measurable per-turn latency. + +## Constructor + +```typescript +import { OpenAIRealtime2, type OpenAIRealtime2Options } from "getpatter"; + +new OpenAIRealtime2({ + apiKey?: string; // reads OPENAI_API_KEY + voice?: string; // default: "alloy" + model?: string; // default: "gpt-realtime-2" + reasoningEffort?: "minimal" | "low" | "medium" | "high"; + inputAudioTranscriptionModel?: string; // default: "whisper-1" +}); +``` + +All fields are optional with safe defaults. `apiKey` falls back to the `OPENAI_API_KEY` environment variable. + +### Reasoning effort + +| Value | When to use | +|-------|-------------| +| `"minimal"` | Snappy turn-taking. Skips most reasoning. | +| `"low"` | **Recommended for production voice.** Good instruction following without measurable per-turn latency. | +| `"medium"` | Multi-step tool flows where the model should plan. Adds latency. | +| `"high"` | Complex reasoning. Not recommended for live phone calls. | + +When set, Patter injects `session.reasoning = { effort: ... }` into the GA `session.update` payload. When omitted, the field is not sent and OpenAI's server default applies. + +### Streaming transcription + +Set `inputAudioTranscriptionModel` to override `audio.input.transcription.model`. The same identifiers as the beta endpoint apply — see the [streaming-transcription table on the OpenAI Realtime page](/typescript-sdk/providers/openai-realtime#streaming-transcription) for the full list (`whisper-1`, `gpt-4o-mini-transcribe`, `gpt-4o-transcribe`, `gpt-realtime-whisper`). + +## Audio path + +The GA audio engine speaks PCM 24 kHz and silently drops mulaw frames. Patter handles the conversion transparently inside `OpenAIRealtime2Adapter`: + +- **Inbound** (Twilio/Telnyx → model): mulaw 8 kHz → PCM 24 kHz +- **Outbound** (model → Twilio/Telnyx): PCM 24 kHz → mulaw 8 kHz + +No caller-side change is required — both Twilio Media Streams (mulaw 8 kHz) and Telnyx Call Control (PCM 16 kHz / mulaw 8 kHz) work out of the box. + +## Direct adapter use + +`OpenAIRealtime2Adapter` is exported and may be constructed directly when you need to share connection state across calls or override low-level fields. The constructor signature is **positional** (inherited from `OpenAIRealtimeAdapter`): + +```typescript +import { OpenAIRealtime2Adapter } from "getpatter"; + +const adapter = new OpenAIRealtime2Adapter( + process.env.OPENAI_API_KEY ?? "", // apiKey + "gpt-realtime-2", // model + "nova", // voice + "You are a helpful assistant.", // instructions + undefined, // tools + "g711_ulaw", // audioFormat — GA adapter emits PCM24 + // internally regardless of this value, + // but the positional arg is required. + { + reasoningEffort: "low", + inputAudioTranscriptionModel: "gpt-realtime-whisper", + }, +); + +const agent = phone.agent({ + engine: adapter, + systemPrompt: "...", + firstMessage: "...", +}); +``` + +The adapter extends `OpenAIRealtimeAdapter` and overrides `connect()`, `sendAudio()`, `receiveEvents()`, and `sendFirstMessage()` for the GA wire shape. + +### GA session config — `create_response: false` / `interrupt_response: false` + +The GA adapter unconditionally pins both flags in `session.update.turn_detection`. Patter owns response creation (`response.create`) and barge-in cancellation explicitly so the hallucination filter and barge-in pipeline can decide per turn rather than letting the server VAD auto-trigger. This is why the GA adapter is required — the legacy beta endpoint did not expose these knobs in the same shape. + +## Backward compatibility + +- Existing `new OpenAIRealtime({...})` callers are **unaffected**. The legacy engine continues to target the beta endpoint with `gpt-realtime-mini` as the default. +- `OpenAIRealtime2` ships as an additive engine — no migration required. Pick it when you want the GA endpoint; otherwise stay where you are. +- Pricing for `gpt-realtime-2` is auto-resolved per model from `DEFAULT_PRICING.openai_realtime.models["gpt-realtime-2"]` — see [Metrics](/typescript-sdk/metrics). + +## What's Next + + + The legacy engine for `gpt-realtime-mini` and earlier preview models. + All engine classes side by side. + Configure system prompts, tools, and first messages. + Function calling inside a Realtime session. + diff --git a/docs/typescript-sdk/providers/openai-realtime.mdx b/docs/typescript-sdk/providers/openai-realtime.mdx index 17e43b3a..8ce960f8 100644 --- a/docs/typescript-sdk/providers/openai-realtime.mdx +++ b/docs/typescript-sdk/providers/openai-realtime.mdx @@ -16,11 +16,11 @@ Pass any of these to `model:` on `new OpenAIRealtime(...)`. Pricing is auto-reso | Model | Audio in / out (per M tokens) | Notes | |-------|-------------------------------|-------| -| `"gpt-realtime-mini"` (default) | $10 / $20 | Fastest + cheapest. Production default for most voice flows. | +| `"gpt-4o-mini-realtime-preview"` (engine marker default) | $10 / $20 | Default when `new OpenAIRealtime()` is constructed without an explicit `model`. Earlier preview line. | +| `"gpt-realtime-mini"` | $10 / $20 | GA mini — recommended cheap default for new deployments. Pass `model: "gpt-realtime-mini"` explicitly. | | `"gpt-realtime"` | $32 / $64 | GA realtime model (Aug 2025). | -| `"gpt-realtime-2"` | $32 / $64 | Most-capable. Stronger instruction following, 128K context, supports `reasoningEffort`. | +| `"gpt-realtime-2"` | $32 / $64 | Most-capable. Stronger instruction following, 128K context, supports `reasoningEffort`. Use the [`OpenAIRealtime2`](/typescript-sdk/providers/openai-realtime-2) engine for the GA wire shape. | | `"gpt-4o-realtime-preview"` | $100 / $200 | Earlier preview, retained for compatibility. | -| `"gpt-4o-mini-realtime-preview"` | $10 / $20 | Earlier preview, retained for compatibility. | The same identifiers are exposed as a const object for editor autocomplete: @@ -123,9 +123,10 @@ The `reasoningEffort` and `inputAudioTranscriptionModel` options live on `OpenAI ## Backward compatibility -- Defaults are unchanged: `model: "gpt-realtime-mini"`, `inputAudioTranscriptionModel: "whisper-1"`, `reasoningEffort: undefined`. +- Engine marker default: `model: "gpt-4o-mini-realtime-preview"` (unchanged since first release). The underlying `OpenAIRealtimeAdapter` falls back to `gpt-realtime-mini` only when constructed without a model — the `OpenAIRealtime` wrapper always passes a model through, so the wire default is `gpt-4o-mini-realtime-preview`. Pass `model: "gpt-realtime-mini"` explicitly to upgrade. +- `inputAudioTranscriptionModel: "whisper-1"`, `reasoningEffort: undefined` (server default). - All existing `new OpenAIRealtime(...)` constructions keep working without code changes. -- Pricing for new models is added under `DEFAULT_PRICING.openai_realtime.models[...]`. The earlier `new Patter({ pricing: { openai_realtime: DEFAULT_PRICING.openai_realtime_2 } })` workaround is no longer needed — just construct with `model: "gpt-realtime-2"`. +- Pricing for new models is added under `DEFAULT_PRICING.openai_realtime.models[...]`. The earlier `new Patter({ pricing: { openai_realtime: DEFAULT_PRICING.openai_realtime_2 } })` workaround is no longer needed — just construct with `model: "gpt-realtime-2"` (or use the [`OpenAIRealtime2`](/typescript-sdk/providers/openai-realtime-2) engine for the GA wire shape). ## What's Next diff --git a/docs/typescript-sdk/reference.mdx b/docs/typescript-sdk/reference.mdx index 84e95a56..ffecf5b6 100644 --- a/docs/typescript-sdk/reference.mdx +++ b/docs/typescript-sdk/reference.mdx @@ -23,6 +23,7 @@ new Patter(options: PatterOptions) | `webhookUrl` | `string` | Conditional | Public hostname, no scheme. Required unless using `tunnel: true` in `serve()`. | | `tunnel` | `CloudflareTunnel \| StaticTunnel \| boolean` | No | Tunnel directive. `true` is shorthand for `new CloudflareTunnel()`. | | `pricing` | `Record>` | No | Custom pricing overrides. | +| `persist` | `boolean \| string` | No | Persist the dashboard's call history to disk. Defaults to ON since 0.6.2 — pass `persist: false` to disable. See [Configuration](/typescript-sdk/configuration#persistent-dashboard-history). | ### Instance Methods @@ -68,7 +69,7 @@ class Telnyx { ## Engines ```typescript -import { OpenAIRealtime, ElevenLabsConvAI } from "getpatter"; +import { OpenAIRealtime, OpenAIRealtime2, ElevenLabsConvAI } from "getpatter"; ``` ### OpenAIRealtime @@ -79,10 +80,40 @@ class OpenAIRealtime { readonly apiKey: string; // reads OPENAI_API_KEY when omitted readonly voice: string; // default "alloy" readonly model: string; // default "gpt-4o-mini-realtime-preview" - constructor(opts?: { apiKey?: string; voice?: string; model?: string }); + readonly reasoningEffort?: "minimal" | "low" | "medium" | "high"; + readonly inputAudioTranscriptionModel?: string; + constructor(opts?: { + apiKey?: string; + voice?: string; + model?: string; + reasoningEffort?: "minimal" | "low" | "medium" | "high"; + inputAudioTranscriptionModel?: string; + }); } ``` +### OpenAIRealtime2 + +```typescript +class OpenAIRealtime2 { + readonly kind: "openai_realtime_2"; + readonly apiKey: string; // reads OPENAI_API_KEY when omitted + readonly voice: string; // default "alloy" + readonly model: string; // default "gpt-realtime-2" + readonly reasoningEffort?: "minimal" | "low" | "medium" | "high"; + readonly inputAudioTranscriptionModel?: string; + constructor(opts?: { + apiKey?: string; + voice?: string; + model?: string; + reasoningEffort?: "minimal" | "low" | "medium" | "high"; + inputAudioTranscriptionModel?: string; + }); +} +``` + +Routes through `OpenAIRealtime2Adapter` and speaks the GA `session.update` wire shape (`output_modalities`, nested `audio.{input,output}`, `session.type = "realtime"`). GA session config pins `turn_detection.create_response: false` and `interrupt_response: false` so Patter owns response creation and barge-in cancellation. See [`OpenAIRealtime2`](/typescript-sdk/providers/openai-realtime-2). + ### ElevenLabsConvAI ```typescript @@ -184,7 +215,7 @@ class Guardrail { ```typescript interface AgentOptions { systemPrompt: string; - engine?: OpenAIRealtime | ElevenLabsConvAI; + engine?: OpenAIRealtime | OpenAIRealtime2 | ElevenLabsConvAI; stt?: STTProvider; llm?: LLMProvider; tts?: TTSProvider; @@ -203,6 +234,7 @@ interface AgentOptions { bargeInThresholdMs?: number; aggressiveFirstFlush?: boolean; disablePhonePreamble?: boolean; + prewarmFirstMessage?: boolean; // default false; pipeline mode only provider?: 'openai_realtime' | 'elevenlabs_convai' | 'pipeline'; } ``` @@ -228,6 +260,7 @@ interface ServeOptions { dashboardToken?: string; dashboardDb?: string; dashboardPersist?: boolean; + manageWebhook?: boolean; // default true; ignored when tunnel: true } ``` @@ -347,7 +380,8 @@ export { Twilio, Telnyx, // Engines - OpenAIRealtime, ElevenLabsConvAI, + OpenAIRealtime, OpenAIRealtime2, ElevenLabsConvAI, + OpenAIRealtimeAdapter, OpenAIRealtime2Adapter, ElevenLabsConvAIAdapter, // STT classes DeepgramSTT, WhisperSTT, CartesiaSTT, AssemblyAISTT, SonioxSTT, diff --git a/docs/typescript-sdk/tts.mdx b/docs/typescript-sdk/tts.mdx index 8c19f17e..d3567f94 100644 --- a/docs/typescript-sdk/tts.mdx +++ b/docs/typescript-sdk/tts.mdx @@ -69,7 +69,7 @@ const tts3 = new ElevenLabsTTS({ apiKey: "...", voiceId: "EXAVITQu4vr4xnSDxMaL", | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `apiKey` | `string` | — | API key — reads from `ELEVENLABS_API_KEY` if omitted. | -| `voiceId` | `string` | `"EXAVITQu4vr4xnSDxMaL"` (Sarah) | ElevenLabs voice ID (or name). | +| `voiceId` | `string` | `"21m00Tcm4TlvDq8ikWAM"` (Rachel) | ElevenLabs voice ID (or name). | | `modelId` | `ElevenLabsModel \| string` | `"eleven_flash_v2_5"` | Typed literal: `eleven_flash_v2_5` / `eleven_turbo_v2_5` / `eleven_v3` / `eleven_multilingual_v2` / `eleven_monolingual_v1`. | | `outputFormat` | `string` | `"pcm_16000"` | ElevenLabs output format. | From 3194c8486b35715c480bbcd4645afbf24cf451c6 Mon Sep 17 00:00:00 2001 From: nicolotognoni Date: Mon, 25 May 2026 11:45:49 +0200 Subject: [PATCH 11/11] fix(0.6.2): TS index re-exports + Realtime engine default model parity MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two follow-ups surfaced by the 0.6.2 docs-accuracy audit; needed for the docs examples to compile as written and to close the last Python↔TS parity gap. src/index.ts re-exports - ``OpenAIRealtimeAudioFormat``, ``OpenAIRealtimeModel``, ``OpenAIRealtimeVADType``, ``OpenAITranscriptionModel``, ``OpenAIVoice`` from ``./providers/openai-realtime`` - ``ElevenLabsModel``, ``ElevenLabsOutputFormat`` from ``./providers/elevenlabs-tts`` - ``DeepgramModel`` from ``./providers/deepgram-stt`` - ``CartesiaTTSModel``, ``CartesiaTTSVoiceMode`` from ``./providers/cartesia-tts`` - ``RimeModel``, ``RimeAudioFormat`` from ``./providers/rime-tts`` - ``PricingUnit``, ``PRICING_VERSION``, ``PRICING_LAST_UPDATED`` + ``PricingUnitValue`` / ``ModelPricing`` types from ``./pricing`` (``ProviderPricing`` was already exported earlier in the file) Pre-fix the docs (``tts.mdx``, ``stt.mdx``, ``metrics.mdx``, ``providers/openai-realtime.mdx``, ``providers/elevenlabs-tts.mdx``) showed ``import { OpenAIRealtimeModel, ... } from "getpatter"`` — those examples now actually compile. Engine default model - ``engines/openai.ts`` ``Realtime.model`` default flipped from ``"gpt-4o-mini-realtime-preview"`` to ``"gpt-realtime-mini"`` for parity with the Python SDK (which moved on 2026-05). The legacy preview model still works when passed explicitly; the GA wave recommends ``gpt-realtime-mini`` (or ``gpt-realtime-2`` via the ``OpenAIRealtime2`` engine for the flagship). Docstring updated to reflect the bump rationale. Lint clean, 1513 tests pass. --- libraries/typescript/src/engines/openai.ts | 8 ++++++-- libraries/typescript/src/index.ts | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/libraries/typescript/src/engines/openai.ts b/libraries/typescript/src/engines/openai.ts index 60818931..a1f855e4 100644 --- a/libraries/typescript/src/engines/openai.ts +++ b/libraries/typescript/src/engines/openai.ts @@ -4,7 +4,11 @@ export interface RealtimeOptions { /** API key. Falls back to OPENAI_API_KEY env var when omitted. */ apiKey?: string; - /** Realtime model. Defaults to gpt-4o-mini-realtime-preview. */ + /** + * Realtime model. Defaults to ``gpt-realtime-mini`` (bumped from the + * deprecated ``gpt-4o-mini-realtime-preview`` on 2026-05-25 for + * parity with the Python SDK and the GA Realtime API surface). + */ model?: string; /** Voice preset. Defaults to alloy. */ voice?: string; @@ -57,7 +61,7 @@ export class Realtime { ); } this.apiKey = key; - this.model = opts.model ?? "gpt-4o-mini-realtime-preview"; + this.model = opts.model ?? "gpt-realtime-mini"; this.voice = opts.voice ?? "alloy"; this.reasoningEffort = opts.reasoningEffort; this.inputAudioTranscriptionModel = opts.inputAudioTranscriptionModel; diff --git a/libraries/typescript/src/index.ts b/libraries/typescript/src/index.ts index 4069c133..9cb30c24 100644 --- a/libraries/typescript/src/index.ts +++ b/libraries/typescript/src/index.ts @@ -109,6 +109,24 @@ export type { AssemblyAIModel, AssemblyAIEncoding } from "./providers/assemblyai export type { CartesiaEncoding } from "./providers/cartesia-stt"; export type { LMNTAudioFormat, LMNTModel, LMNTSampleRate } from "./providers/lmnt-tts"; +// Provider-defined const enums + types. Re-exported here so user code +// can ``import { OpenAIRealtimeModel, ElevenLabsModel, ... } from "getpatter"`` +// without reaching into ``getpatter/providers/*``. Mirrors the Python +// SDK's top-level ``getpatter`` namespace. +export { + OpenAIRealtimeAudioFormat, + OpenAIRealtimeModel, + OpenAIRealtimeVADType, + OpenAITranscriptionModel, + OpenAIVoice, +} from "./providers/openai-realtime"; +export { ElevenLabsModel, ElevenLabsOutputFormat } from "./providers/elevenlabs-tts"; +export { DeepgramModel } from "./providers/deepgram-stt"; +export { CartesiaTTSModel, CartesiaTTSVoiceMode } from "./providers/cartesia-tts"; +export { RimeModel, RimeAudioFormat } from "./providers/rime-tts"; +export { PricingUnit, PRICING_VERSION, PRICING_LAST_UPDATED } from "./pricing"; +export type { PricingUnitValue, ModelPricing } from "./pricing"; + // New namespaced STT classes — options-object constructor with env fallback. export { STT as DeepgramSTT } from "./stt/deepgram"; export type { DeepgramSTTOptions } from "./stt/deepgram";

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 Di#ue$*tj(zhMSnC4hY{i%Mm{IVO9 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%0A7(D}i!dFXlUb-P;?IOag7d4eM&H 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
2+58adTekw*da%oHoA~%I~Wxxc+hBr{Zfj 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