# V3 Voice Latency Validation

Canonical source: `libs/oshun/analytics/src/v3-voice-latency-budget.ts`

Evidence artifact: `V3/validation/voice-latency-validation.json`

Manifest version: `v3-voice-latency-budget.v1`

The native V3 voice latency gate validates regional mouth-to-ear p95 latency
through the Lilith Realtime Gateway SFU and UE `V3Voice`. The p95 budget is 80
ms. The probe includes the 20 ms Opus capture frame, the 8 ms gateway-to-SFU
hop, the 5 ms SFU fanout, regional RTT, and native spatialization delivery.

| Region           | SFU | Regional RTT p95 | Mouth-to-ear p95 | Mouth-to-ear p99 | Packet loss |
| ---------------- | --- | ---------------- | ---------------- | ---------------- | ----------- |
| `us-east-1`      | iad | 44 ms            | 55 ms            | 57 ms            | 0.0007      |
| `us-west-2`      | pdx | 46 ms            | 56 ms            | 58 ms            | 0.0008      |
| `eu-west-1`      | dub | 45 ms            | 55 ms            | 57 ms            | 0.0007      |
| `ap-northeast-1` | nrt | 49 ms            | 57 ms            | 62 ms            | 0.0009      |
| `ap-south-1`     | bom | 50 ms            | 58 ms            | 63 ms            | 0.0010      |
| `ap-southeast-2` | syd | 48 ms            | 57 ms            | 61 ms            | 0.0009      |
| `sa-east-1`      | gru | 49 ms            | 57 ms            | 62 ms            | 0.0009      |

The release gate is anchored to:

- `apps/v3/lilith-realtime-gateway/src/lib.rs`, where the LiveKit-compatible SFU
  route now includes the Opus capture frame in mouth-to-ear latency and
  validates a 64-participant regional load probe.
- `V3/ue/Source/V3Voice/Private/V3VoiceRealtimeGateway.cpp`, where UE `V3Voice`
  computes the same mouth-to-ear budget and publishes a regional validation
  report.
- `V3/ue/Source/V3Tests/Private/V3VoiceRealtimeGatewayTests.cpp`, where UE
  automation asserts all seven regions stay inside the 80 ms p95 budget.
- `libs/v3/aja-pose/src/voice-cue.ts`, where Aja instructor cues route through
  `v3voice`.

`pnpm verify:v3 voice-latency` fails closed when a required region is missing,
regional RTT p95 exceeds 50 ms, mouth-to-ear p95 exceeds 80 ms, the sample
window is shorter than 24 hours, sample count is below the release-gate floor,
CI is not green, percentiles are inconsistent, packet loss exceeds 0.005, or the
UE/Rust source hooks are missing.
