# Контрольная серия после переработки выполнения

06.10.2026. Поставлены `9fa55c5cc118166c644c06e98c83e2b2a3134088`
и исправление запуска Agent `a4956b98c9bcff1d2869e97cb910ab8fac8cc930`.
[CI 4912](<https://git.giscloud.ru/voice-chat/webrtc-komaroff/-/pipelines/4912>)
собрал backend и потребителей; preflight/deploy прошли. Agent обновлён
[CI 4913](<https://git.giscloud.ru/voice-chat/webrtc-komaroff/-/pipelines/4913>).
Runtime revision каждого приложения проверен отдельно. Agent работает 1/1;
служебный UpdateStatus сохраняет `paused` от предыдущей неуспешной task.

Корпус и синтетический WAV те же, что в [базе C0](</experiments/voice-ai/archive/w/DOCS/CHAT_AGENT_BASELINE_C0.md>).
33 хода: 12 обычных, 3 запросa инструментов, 6 ходов уточнения, 12 аудиоходов
в раундах 1/2/3/1/2/3. Получены 33 ответа; транспортных ошибок в этой серии нет.
Небольшая серия показывает результат на текущей сети, а не универсальный SLA.

| Показатель | C0: p50 / p95 | C1: p50 / p95 | Образцов C0 / C1 |
|---|---:|---:|---:|
| Обычный текст → полный ответ | 14,969 / 20,951 с | 3,452 / 4,464 с | 12 / 12 |
| Запросы инструментов из корпуса | 11,366 / 12,995 с | 2,305 / 2,320 с | 3 / 3 |
| Ходы уточнения | 19,902 / 24,072 с | 9,094 / 13,194 с | 6 / 6 |
| Local SDP → WebRTC connected | 1,394 / 1,559 с | 1,554 / 1,598 с | 12 / 12 |
| Начало WAV → ASR final | 3,803 / 3,993 с | 3,749 / 3,947 с | 11 / 12 |
| ASR final → полный ответ, все нагрузки | 46,007 / 89,399 с | 14,083 / 35,177 с | 11 / 12 |

Percentiles — R7. Потерянный C0 audio sample исключён из времён ASR/ответа,
но сохранён в числе ошибок. Наблюдаемое изменение ASR p95 — −1,17%,
порог деградации +10% не достигнут. Разрешение микрофона fixture не измеряет.

Tempo связывает 33 request_id с 36 реальными генерациями провайдера:
12 обычных + 12 в инструментальных/уточняющих ходах + 12 голосовых.
В C0 было 62 попытки на 32 ответа, в том числе повторения после неверного JSON.
Для всех 12 обычных ответов подтверждена ровно одна генерация. UI generation UUID
не использовался как замена счётчику провайдера.

Три отдельных запроса инструментов без города получили уточнение. Эти ходы сами
по себе не доказывают выполнение инструмента. Вторые ходы уточнения использовали
по две генерации; реальный цикл инструментов дополнительно проверяется отдельно.

Agent больше не ожидает предыдущий независимый чат: клиентские queue timings
12 аудиоходов находятся в пределах 0–4,47 мс. Ожидание единственной активной
генерации осталось в ограниченной очереди LLM. При трёх потоках ответ всё ещё
может ждать модель; снятие этой очереди потребовало бы изменения GPU scheduling,
которое не входит в разрешённую область.

Все 12 подключений подтвердили DTLS connected, TURN relay на стороне сервера,
растущие RTP counters, partial → final → ответ. Синтетическое произношение иногда
искажено ASR: узкая проверка ответа «4» успешна в 7/12 ходов. Это не оценка WER
и не доказательство исправления качества Whisper. WebRTC/PCM ещё использует
прежний тракт Core; перенос ingress и FIFO проверяется следующим этапом.

У модели `qwen3:30b` используется Qwen3-30B-A3B-Thinking-2507. `think=false`
не отменяет её внутреннее рассуждение. Load timings 90–136 мс показывают
прогретую модель; холодных запусков в серии нет. Первый видимый фрагмент
появляется после скрытой части рассуждения и почти совпадает с окончанием
короткого ответа. Это ограничивает выигрыш от streaming на выбранном корпусе.

VictoriaMetrics содержит working set и CPU для всех 13 контейнеров. Ряды
сняты с шагом 15 с, CPU — rate за 60 с. Аудиоокно включает длительные паузы
на настройку теста; его средние нельзя выдавать за matched load comparison.
Flush прежнего тракта достигает 150/с при трёх потоках. Следующий этап
заменяет flush каждого кадра одним таймером 250 мс на connection.

Числовые свидетельства без текста разговоров, аудио, SDP и credentials:

- [Обычные ответы](</experiments/voice-ai/archive/w/DOCS/evidence/chat-agent-c1-ordinary.json>).
- [Запросы инструментов и уточнения](</experiments/voice-ai/archive/w/DOCS/evidence/chat-agent-c1-cases.json>).
- [Аудио, ICE/DTLS/RTP и границы ASR](</experiments/voice-ai/archive/w/DOCS/evidence/chat-agent-c1-audio.json>).
- [36 provider spans](</experiments/voice-ai/archive/w/DOCS/evidence/chat-agent-c1-telemetry.json>).
- [CPU/RAM всего состава](</experiments/voice-ai/archive/w/DOCS/evidence/chat-agent-c1-resources.json>).

Эта серия подтверждает этап выполнения C1. Она не подтверждает будущий состав
`chat-agent`, новые ingress, WSS, удаление legacy-кода или итоговую миграцию данных.
