Files
call-center/docs/runbooks/track10-live-voice-reliability.md
T

1.9 KiB

Runbook - Track 10 Live Voice Reliability

Use this runbook to validate lifecycle latency after Track 9 integration.

Preconditions

  • Platform stack is running.
  • Asterisk bridge is connected (/proxy/asterisk-bridge/asterisk/status).
  • Real lab calls are already made (1001 -> 7000).

1) Generate latency report

python scripts\track10_voice_latency_report.py `
  --database-url sqlite:///.data_local/mvp_cc.db `
  --since-hours 8 `
  --breach-mode direct `
  --json-out .artifacts/track10/voice-latency-latest.json

For post-fix short-window validation use minutes:

python scripts\track10_voice_latency_report.py `
  --database-url sqlite:///.data_local/mvp_cc.db `
  --since-minutes 30 `
  --breach-mode direct `
  --json-out .artifacts/track10/voice-latency-30m.json

Optional strict gate mode:

python scripts\track10_voice_latency_report.py `
  --database-url sqlite:///.data_local/mvp_cc.db `
  --since-hours 8 `
  --max-started-to-ended-seconds 30 `
  --max-ended-to-recording-seconds 45 `
  --breach-mode direct `
  --fail-on-breach

2) Review report fields

Mandatory fields:

  • summary.total_calls
  • summary.active_no_end
  • summary.ended_no_recording_upload
  • summary.start_to_end.p95
  • summary.end_to_recording_upload.p95
  • summary.ended_direct_calls
  • summary.ended_reconciled_calls
  • summary.direct_start_to_end.p95
  • summary.direct_end_to_recording_upload.p95

3) Save acceptance evidence

Create a timestamp folder:

docs/acceptance/track10/<timestamp>/

Place:

  • voice-latency-latest.json
  • command output log
  • note with latest call IDs included in report

4) Decision guidance

GO candidate:

  • active_no_end = 0
  • ended_no_recording_upload = 0
  • direct p95 metrics within Track 10 thresholds

NO-GO candidate:

  • repeated high latency outside thresholds,
  • stale active calls without call.ended,
  • missing recordings after completed calls.