@absolutejs/voice 0.0.22-beta.54 → 0.0.22-beta.540

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (493) hide show
  1. package/README.md +4518 -951
  2. package/dist/angular/index.d.ts +36 -5
  3. package/dist/angular/index.js +4189 -390
  4. package/dist/angular/voice-agent-squad-status.service.d.ts +12 -0
  5. package/dist/angular/voice-call-debugger.service.d.ts +12 -0
  6. package/dist/angular/voice-call-player.service.d.ts +19 -0
  7. package/dist/angular/voice-campaign-dialer-proof.service.d.ts +14 -0
  8. package/dist/angular/voice-controller.service.d.ts +3 -1
  9. package/dist/angular/voice-cost-dashboard.service.d.ts +15 -0
  10. package/dist/angular/voice-delivery-runtime.service.d.ts +16 -0
  11. package/dist/angular/voice-live-agent-console.service.d.ts +16 -0
  12. package/dist/angular/voice-live-call-viewer.service.d.ts +16 -0
  13. package/dist/angular/voice-live-ops.service.d.ts +11 -0
  14. package/dist/angular/voice-ops-action-center.service.d.ts +13 -0
  15. package/dist/angular/voice-ops-status.service.d.ts +12 -0
  16. package/dist/angular/voice-platform-coverage.service.d.ts +12 -0
  17. package/dist/angular/voice-profile-comparison.service.d.ts +12 -0
  18. package/dist/angular/voice-proof-trends.service.d.ts +12 -0
  19. package/dist/angular/voice-provider-capabilities.service.d.ts +12 -0
  20. package/dist/angular/voice-provider-contracts.service.d.ts +12 -0
  21. package/dist/angular/voice-provider-status.service.d.ts +2 -2
  22. package/dist/angular/voice-readiness-failures.service.d.ts +13 -0
  23. package/dist/angular/voice-reconnect-profile-evidence.service.d.ts +12 -0
  24. package/dist/angular/voice-replay-timeline.service.d.ts +13 -0
  25. package/dist/angular/voice-routing-status.service.d.ts +11 -0
  26. package/dist/angular/voice-session-observability.service.d.ts +12 -0
  27. package/dist/angular/voice-session-snapshot.service.d.ts +13 -0
  28. package/dist/angular/voice-stream.service.d.ts +4 -1
  29. package/dist/angular/voice-trace-timeline.service.d.ts +12 -0
  30. package/dist/angular/voice-turn-latency.service.d.ts +13 -0
  31. package/dist/angular/voice-turn-quality.service.d.ts +12 -0
  32. package/dist/angular/voice-widget.service.d.ts +18 -0
  33. package/dist/angular/voice-workflow-status.service.d.ts +2 -2
  34. package/dist/client/actions.d.ts +95 -1
  35. package/dist/client/agentSquadStatus.d.ts +37 -0
  36. package/dist/client/agentSquadStatusWidget.d.ts +24 -0
  37. package/dist/client/audioPlayer.d.ts +2 -2
  38. package/dist/client/bargeInMonitor.d.ts +7 -0
  39. package/dist/client/browserMedia.d.ts +8 -0
  40. package/dist/client/browserNoiseSuppression.d.ts +42 -0
  41. package/dist/client/browserVoiceSupport.d.ts +22 -0
  42. package/dist/client/callDebugger.d.ts +21 -0
  43. package/dist/client/callDebuggerWidget.d.ts +30 -0
  44. package/dist/client/callPlayer.d.ts +41 -0
  45. package/dist/client/campaignDialerProof.d.ts +25 -0
  46. package/dist/client/connection.d.ts +4 -3
  47. package/dist/client/controller.d.ts +1 -1
  48. package/dist/client/conversationAnalytics.d.ts +30 -0
  49. package/dist/client/costDashboard.d.ts +27 -0
  50. package/dist/client/createVoiceStream.d.ts +1 -1
  51. package/dist/client/deliveryRuntime.d.ts +36 -0
  52. package/dist/client/deliveryRuntimeWidget.d.ts +37 -0
  53. package/dist/client/duplex.d.ts +2 -2
  54. package/dist/client/htmx.d.ts +1 -1
  55. package/dist/client/htmxAttributes.d.ts +24 -0
  56. package/dist/client/htmxBootstrap.js +1029 -73
  57. package/dist/client/htmxDashboardRenderers.d.ts +71 -0
  58. package/dist/client/index.d.ts +106 -15
  59. package/dist/client/index.js +10494 -279
  60. package/dist/client/liveAgentConsole.d.ts +28 -0
  61. package/dist/client/liveCallViewer.d.ts +42 -0
  62. package/dist/client/liveOps.d.ts +22 -0
  63. package/dist/client/liveOpsWidget.d.ts +23 -0
  64. package/dist/client/liveTurnLatency.d.ts +41 -0
  65. package/dist/client/microphone.d.ts +4 -4
  66. package/dist/client/opsActionCenter.d.ts +56 -0
  67. package/dist/client/opsActionCenterWidget.d.ts +29 -0
  68. package/dist/client/opsActionHistory.d.ts +21 -0
  69. package/dist/client/opsActionHistoryWidget.d.ts +11 -0
  70. package/dist/client/opsStatus.d.ts +21 -0
  71. package/dist/client/opsStatusWidget.d.ts +10 -10
  72. package/dist/client/platformCoverage.d.ts +21 -0
  73. package/dist/client/platformCoverageWidget.d.ts +38 -0
  74. package/dist/client/profileComparison.d.ts +21 -0
  75. package/dist/client/profileComparisonWidget.d.ts +41 -0
  76. package/dist/client/profileSwitchRecommendation.d.ts +21 -0
  77. package/dist/client/profileSwitchRecommendationWidget.d.ts +12 -0
  78. package/dist/client/proofTrends.d.ts +21 -0
  79. package/dist/client/proofTrendsWidget.d.ts +38 -0
  80. package/dist/client/providerCapabilities.d.ts +21 -0
  81. package/dist/client/providerCapabilitiesWidget.d.ts +32 -0
  82. package/dist/client/providerContracts.d.ts +21 -0
  83. package/dist/client/providerContractsWidget.d.ts +37 -0
  84. package/dist/client/providerSimulationControls.d.ts +33 -0
  85. package/dist/client/providerSimulationControlsWidget.d.ts +20 -0
  86. package/dist/client/providerStatus.d.ts +5 -3
  87. package/dist/client/providerStatusWidget.d.ts +32 -0
  88. package/dist/client/reactiveSource.d.ts +8 -0
  89. package/dist/client/readinessFailures.d.ts +21 -0
  90. package/dist/client/readinessFailuresWidget.d.ts +42 -0
  91. package/dist/client/reconnectProfileEvidence.d.ts +21 -0
  92. package/dist/client/reconnectProfileEvidenceWidget.d.ts +39 -0
  93. package/dist/client/replayTimeline.d.ts +26 -0
  94. package/dist/client/routingStatus.d.ts +21 -0
  95. package/dist/client/routingStatusWidget.d.ts +32 -0
  96. package/dist/client/sessionObservability.d.ts +21 -0
  97. package/dist/client/sessionObservabilityWidget.d.ts +31 -0
  98. package/dist/client/sessionSnapshot.d.ts +23 -0
  99. package/dist/client/sessionSnapshotWidget.d.ts +33 -0
  100. package/dist/client/store.d.ts +1 -1
  101. package/dist/client/traceTimeline.d.ts +21 -0
  102. package/dist/client/traceTimelineWidget.d.ts +36 -0
  103. package/dist/client/turnLatency.d.ts +24 -0
  104. package/dist/client/turnLatencyWidget.d.ts +33 -0
  105. package/dist/client/turnQuality.d.ts +21 -0
  106. package/dist/client/turnQualityWidget.d.ts +32 -0
  107. package/dist/client/voiceWidgetView.d.ts +48 -0
  108. package/dist/client/workflowStatus.d.ts +5 -3
  109. package/dist/{agent.d.ts → core/agent.d.ts} +81 -6
  110. package/dist/core/agentPerformanceReport.d.ts +40 -0
  111. package/dist/core/agentSquadContract.d.ts +98 -0
  112. package/dist/core/agentState.d.ts +12 -0
  113. package/dist/core/agentTools.d.ts +132 -0
  114. package/dist/core/aiScorecard.d.ts +32 -0
  115. package/dist/core/aiVoiceModel.d.ts +15 -0
  116. package/dist/core/amdDetector.d.ts +25 -0
  117. package/dist/{assistant.d.ts → core/assistant.d.ts} +14 -14
  118. package/dist/core/assistantExperiment.d.ts +42 -0
  119. package/dist/{assistantHealth.d.ts → core/assistantHealth.d.ts} +9 -9
  120. package/dist/{assistantMemory.d.ts → core/assistantMemory.d.ts} +10 -10
  121. package/dist/core/assistantMode.d.ts +22 -0
  122. package/dist/{audioConditioning.d.ts → core/audioConditioning.d.ts} +2 -2
  123. package/dist/core/audit.d.ts +131 -0
  124. package/dist/core/auditDeliveryRoutes.d.ts +85 -0
  125. package/dist/core/auditExport.d.ts +34 -0
  126. package/dist/core/auditRoutes.d.ts +66 -0
  127. package/dist/core/auditSinks.d.ts +151 -0
  128. package/dist/core/backchannel.d.ts +18 -0
  129. package/dist/core/bargeInRoutes.d.ts +56 -0
  130. package/dist/core/bookingFlow.d.ts +43 -0
  131. package/dist/core/browserCallProfiles.d.ts +120 -0
  132. package/dist/core/browserMediaRoutes.d.ts +62 -0
  133. package/dist/core/calendarAdapter.d.ts +47 -0
  134. package/dist/core/calendarSlots.d.ts +35 -0
  135. package/dist/core/callDebugger.d.ts +66 -0
  136. package/dist/core/callDisposition.d.ts +38 -0
  137. package/dist/core/callQuota.d.ts +54 -0
  138. package/dist/core/callScorecard.d.ts +53 -0
  139. package/dist/core/callerCRMLinker.d.ts +29 -0
  140. package/dist/core/callerMemory.d.ts +37 -0
  141. package/dist/core/callingWindow.d.ts +26 -0
  142. package/dist/core/campaign.d.ts +795 -0
  143. package/dist/core/campaignControls.d.ts +37 -0
  144. package/dist/core/campaignDialers.d.ts +111 -0
  145. package/dist/core/campaignTemplate.d.ts +16 -0
  146. package/dist/core/competitiveCoverage.d.ts +141 -0
  147. package/dist/core/conversationSimulator.d.ts +73 -0
  148. package/dist/{correction.d.ts → core/correction.d.ts} +5 -4
  149. package/dist/core/costAccounting.d.ts +76 -0
  150. package/dist/core/costPredictor.d.ts +74 -0
  151. package/dist/core/crmCallLogger.d.ts +37 -0
  152. package/dist/core/crmContract.d.ts +70 -0
  153. package/dist/core/dataControl.d.ts +180 -0
  154. package/dist/core/defineVoiceAssistant.d.ts +68 -0
  155. package/dist/core/deliveryRuntime.d.ts +159 -0
  156. package/dist/core/deliverySinkRoutes.d.ts +117 -0
  157. package/dist/core/demoReadyRoutes.d.ts +98 -0
  158. package/dist/{diagnosticsRoutes.d.ts → core/diagnosticsRoutes.d.ts} +2 -2
  159. package/dist/core/dncRegistry.d.ts +38 -0
  160. package/dist/core/dtmfCollector.d.ts +37 -0
  161. package/dist/{evalRoutes.d.ts → core/evalRoutes.d.ts} +26 -20
  162. package/dist/{fileStore.d.ts → core/fileStore.d.ts} +34 -20
  163. package/dist/core/guardrails.d.ts +128 -0
  164. package/dist/{handoff.d.ts → core/handoff.d.ts} +10 -10
  165. package/dist/{handoffHealth.d.ts → core/handoffHealth.d.ts} +9 -9
  166. package/dist/core/holdAudio.d.ts +23 -0
  167. package/dist/{htmx.d.ts → core/htmx.d.ts} +2 -2
  168. package/dist/core/htmxDashboardRoutes.d.ts +250 -0
  169. package/dist/core/iceServers.d.ts +34 -0
  170. package/dist/core/incidentBundle.d.ts +119 -0
  171. package/dist/core/incidentTimeline.d.ts +260 -0
  172. package/dist/core/ivrPlan.d.ts +40 -0
  173. package/dist/core/latencySlo.d.ts +56 -0
  174. package/dist/core/liveCoach.d.ts +43 -0
  175. package/dist/core/liveLatency.d.ts +78 -0
  176. package/dist/core/liveOps.d.ts +190 -0
  177. package/dist/core/llmJudge.d.ts +45 -0
  178. package/dist/{logger.d.ts → core/logger.d.ts} +1 -2
  179. package/dist/core/mcpToolset.d.ts +58 -0
  180. package/dist/core/mediaPipelineRoutes.d.ts +171 -0
  181. package/dist/core/mediaPipelineSurfaces.d.ts +48 -0
  182. package/dist/{memoryStore.d.ts → core/memoryStore.d.ts} +1 -1
  183. package/dist/core/midCallSummary.d.ts +27 -0
  184. package/dist/{modelAdapters.d.ts → core/modelAdapters.d.ts} +59 -7
  185. package/dist/core/monitor.d.ts +148 -0
  186. package/dist/core/multilingualProof.d.ts +77 -0
  187. package/dist/core/noShowPredictor.d.ts +46 -0
  188. package/dist/core/oauth2TokenSource.d.ts +21 -0
  189. package/dist/core/observabilityExport.d.ts +501 -0
  190. package/dist/core/openaiTTS.d.ts +18 -0
  191. package/dist/core/operationalStatus.d.ts +87 -0
  192. package/dist/core/operationsRecord.d.ts +371 -0
  193. package/dist/{ops.d.ts → core/ops.d.ts} +70 -70
  194. package/dist/core/opsActionAuditRoutes.d.ts +99 -0
  195. package/dist/{opsConsoleRoutes.d.ts → core/opsConsoleRoutes.d.ts} +11 -8
  196. package/dist/{opsPresets.d.ts → core/opsPresets.d.ts} +2 -2
  197. package/dist/core/opsRecovery.d.ts +137 -0
  198. package/dist/{opsRuntime.d.ts → core/opsRuntime.d.ts} +6 -6
  199. package/dist/{opsSinks.d.ts → core/opsSinks.d.ts} +19 -19
  200. package/dist/core/opsStatus.d.ts +76 -0
  201. package/dist/core/opsStatusRoutes.d.ts +33 -0
  202. package/dist/{opsWebhook.d.ts → core/opsWebhook.d.ts} +15 -15
  203. package/dist/core/otelExporter.d.ts +83 -0
  204. package/dist/core/outcomeContract.d.ts +146 -0
  205. package/dist/{outcomeRecipes.d.ts → core/outcomeRecipes.d.ts} +4 -4
  206. package/dist/core/pathway.d.ts +94 -0
  207. package/dist/core/pathwayCompiler.d.ts +31 -0
  208. package/dist/core/pathwayGenerator.d.ts +27 -0
  209. package/dist/core/pathwayRuntime.d.ts +57 -0
  210. package/dist/core/pathwaySlotCollector.d.ts +29 -0
  211. package/dist/core/pathwayVisualizer.d.ts +8 -0
  212. package/dist/core/phoneAgent.d.ts +139 -0
  213. package/dist/core/phoneAgentProductionSmoke.d.ts +115 -0
  214. package/dist/core/phoneProvisioning.d.ts +29 -0
  215. package/dist/core/platformCoverage.d.ts +91 -0
  216. package/dist/{plugin.d.ts → core/plugin.d.ts} +2 -2
  217. package/dist/core/postCallAnalysis.d.ts +98 -0
  218. package/dist/core/postCallSurvey.d.ts +41 -0
  219. package/dist/{postgresStore.d.ts → core/postgresStore.d.ts} +20 -9
  220. package/dist/{presets.d.ts → core/presets.d.ts} +3 -3
  221. package/dist/core/productionReadiness.d.ts +757 -0
  222. package/dist/core/profileSwitchRecommendation.d.ts +350 -0
  223. package/dist/core/promptInjectionGuard.d.ts +30 -0
  224. package/dist/core/proofAssertions.d.ts +32 -0
  225. package/dist/core/proofPack.d.ts +211 -0
  226. package/dist/core/proofRunner.d.ts +79 -0
  227. package/dist/core/proofTrends.d.ts +966 -0
  228. package/dist/{providerAdapters.d.ts → core/providerAdapters.d.ts} +16 -5
  229. package/dist/core/providerCapabilities.d.ts +92 -0
  230. package/dist/core/providerDecisionTraces.d.ts +130 -0
  231. package/dist/{providerHealth.d.ts → core/providerHealth.d.ts} +15 -5
  232. package/dist/core/providerOrchestration.d.ts +109 -0
  233. package/dist/core/providerRouterTraces.d.ts +35 -0
  234. package/dist/core/providerRoutingContract.d.ts +71 -0
  235. package/dist/core/providerSlo.d.ts +142 -0
  236. package/dist/core/providerStackRecommendations.d.ts +188 -0
  237. package/dist/core/qualityDriftDetector.d.ts +44 -0
  238. package/dist/{qualityRoutes.d.ts → core/qualityRoutes.d.ts} +7 -7
  239. package/dist/{queue.d.ts → core/queue.d.ts} +48 -39
  240. package/dist/core/ragTool.d.ts +52 -0
  241. package/dist/core/readinessProfiles.d.ts +45 -0
  242. package/dist/core/realtimeChannel.d.ts +136 -0
  243. package/dist/core/realtimeProviderContracts.d.ts +133 -0
  244. package/dist/core/reconnectContract.d.ts +177 -0
  245. package/dist/core/recordingRedaction.d.ts +47 -0
  246. package/dist/core/recordingStore.d.ts +60 -0
  247. package/dist/core/redaction.d.ts +13 -0
  248. package/dist/core/reminderScheduler.d.ts +43 -0
  249. package/dist/{resilienceRoutes.d.ts → core/resilienceRoutes.d.ts} +45 -5
  250. package/dist/core/retention.d.ts +37 -0
  251. package/dist/core/retryPolicy.d.ts +38 -0
  252. package/dist/core/routeAuth.d.ts +58 -0
  253. package/dist/{routing.d.ts → core/routing.d.ts} +2 -2
  254. package/dist/{runtimeOps.d.ts → core/runtimeOps.d.ts} +3 -3
  255. package/dist/{s3Store.d.ts → core/s3Store.d.ts} +12 -3
  256. package/dist/core/scorecardCalibration.d.ts +31 -0
  257. package/dist/core/semanticTurn.d.ts +27 -0
  258. package/dist/{session.d.ts → core/session.d.ts} +1 -1
  259. package/dist/core/sessionObservability.d.ts +145 -0
  260. package/dist/{sessionReplay.d.ts → core/sessionReplay.d.ts} +31 -19
  261. package/dist/core/sessionSnapshot.d.ts +109 -0
  262. package/dist/core/simulationSuite.d.ts +144 -0
  263. package/dist/core/sloCalibration.d.ts +185 -0
  264. package/dist/{sqliteStore.d.ts → core/sqliteStore.d.ts} +20 -9
  265. package/dist/{store.d.ts → core/store.d.ts} +1 -1
  266. package/dist/core/supervisorPermissions.d.ts +33 -0
  267. package/dist/core/supervisorPresence.d.ts +49 -0
  268. package/dist/core/telephonyMediaRoutes.d.ts +72 -0
  269. package/dist/core/telephonyOutcome.d.ts +269 -0
  270. package/dist/core/toolContract.d.ts +161 -0
  271. package/dist/core/toolRuntime.d.ts +50 -0
  272. package/dist/{trace.d.ts → core/trace.d.ts} +61 -22
  273. package/dist/core/traceDeliveryRoutes.d.ts +86 -0
  274. package/dist/core/traceTimeline.d.ts +97 -0
  275. package/dist/core/transcriptAnnotator.d.ts +41 -0
  276. package/dist/{turnDetection.d.ts → core/turnDetection.d.ts} +1 -1
  277. package/dist/core/turnLatency.d.ts +95 -0
  278. package/dist/core/turnProfiles.d.ts +3 -0
  279. package/dist/core/turnQuality.d.ts +94 -0
  280. package/dist/{types.d.ts → core/types.d.ts} +416 -81
  281. package/dist/core/vapiAdapter.d.ts +160 -0
  282. package/dist/core/variableAnalytics.d.ts +47 -0
  283. package/dist/core/voiceConfiguration.d.ts +8 -0
  284. package/dist/core/voiceMonitoring.d.ts +444 -0
  285. package/dist/core/webhookFanout.d.ts +48 -0
  286. package/dist/core/webhookVerification.d.ts +27 -0
  287. package/dist/core/whisperChannel.d.ts +50 -0
  288. package/dist/{workflowContract.d.ts → core/workflowContract.d.ts} +21 -21
  289. package/dist/core/zeroDataRetention.d.ts +31 -0
  290. package/dist/drizzle/assistantMemory.d.ts +112 -0
  291. package/dist/drizzle/eval.d.ts +61 -0
  292. package/dist/drizzle/handoff.d.ts +62 -0
  293. package/dist/drizzle/incidentBundle.d.ts +61 -0
  294. package/dist/drizzle/index.d.ts +1105 -0
  295. package/dist/drizzle/index.js +3059 -0
  296. package/dist/drizzle/observabilityExport.d.ts +61 -0
  297. package/dist/drizzle/proofTrends.d.ts +126 -0
  298. package/dist/drizzle/runtimeStorage.d.ts +1315 -0
  299. package/dist/drizzle/shared.d.ts +76 -0
  300. package/dist/embed/index.d.ts +38 -0
  301. package/dist/embed/index.js +1710 -0
  302. package/dist/embed/voice-widget.js +10 -0
  303. package/dist/index.d.ts +369 -74
  304. package/dist/index.js +45779 -7413
  305. package/dist/internal/evidence.d.ts +10 -0
  306. package/dist/internal/html.d.ts +6 -0
  307. package/dist/internal/status.d.ts +7 -0
  308. package/dist/react/VoiceAgentSquadStatus.d.ts +5 -0
  309. package/dist/react/VoiceCallDebuggerLaunch.d.ts +6 -0
  310. package/dist/react/VoiceCallPlayer.d.ts +11 -0
  311. package/dist/react/VoiceCostDashboard.d.ts +10 -0
  312. package/dist/react/VoiceDeliveryRuntime.d.ts +7 -0
  313. package/dist/react/VoiceLiveAgentConsole.d.ts +11 -0
  314. package/dist/react/VoiceLiveCallViewer.d.ts +9 -0
  315. package/dist/react/VoiceOpsActionCenter.d.ts +5 -0
  316. package/dist/react/VoiceOpsStatus.d.ts +1 -1
  317. package/dist/react/VoicePlatformCoverage.d.ts +6 -0
  318. package/dist/react/VoiceProfileComparison.d.ts +6 -0
  319. package/dist/react/VoiceProfileSwitchRecommendation.d.ts +6 -0
  320. package/dist/react/VoiceProofTrends.d.ts +6 -0
  321. package/dist/react/VoiceProviderCapabilities.d.ts +6 -0
  322. package/dist/react/VoiceProviderContracts.d.ts +6 -0
  323. package/dist/react/VoiceProviderSimulationControls.d.ts +5 -0
  324. package/dist/react/VoiceProviderStatus.d.ts +6 -0
  325. package/dist/react/VoiceReadinessFailures.d.ts +6 -0
  326. package/dist/react/VoiceReconnectProfileEvidence.d.ts +6 -0
  327. package/dist/react/VoiceReplayTimeline.d.ts +6 -0
  328. package/dist/react/VoiceRoutingStatus.d.ts +6 -0
  329. package/dist/react/VoiceSessionObservability.d.ts +6 -0
  330. package/dist/react/VoiceSessionSnapshot.d.ts +6 -0
  331. package/dist/react/VoiceTraceTimeline.d.ts +6 -0
  332. package/dist/react/VoiceTurnLatency.d.ts +6 -0
  333. package/dist/react/VoiceTurnQuality.d.ts +6 -0
  334. package/dist/react/VoiceWidget.d.ts +13 -0
  335. package/dist/react/index.d.ts +80 -6
  336. package/dist/react/index.js +12900 -320
  337. package/dist/react/useVoiceAgentSquadStatus.d.ts +8 -0
  338. package/dist/react/useVoiceCallDebugger.d.ts +8 -0
  339. package/dist/react/useVoiceCampaignDialerProof.d.ts +10 -0
  340. package/dist/react/useVoiceController.d.ts +4 -1
  341. package/dist/react/useVoiceDeliveryRuntime.d.ts +13 -0
  342. package/dist/react/useVoiceLiveOps.d.ts +9 -0
  343. package/dist/react/useVoiceOpsActionCenter.d.ts +11 -0
  344. package/dist/react/useVoiceOpsStatus.d.ts +8 -0
  345. package/dist/react/useVoicePlatformCoverage.d.ts +8 -0
  346. package/dist/react/useVoiceProfileComparison.d.ts +8 -0
  347. package/dist/react/useVoiceProfileSwitchRecommendation.d.ts +8 -0
  348. package/dist/react/useVoiceProofTrends.d.ts +8 -0
  349. package/dist/react/useVoiceProviderCapabilities.d.ts +8 -0
  350. package/dist/react/useVoiceProviderContracts.d.ts +8 -0
  351. package/dist/react/useVoiceProviderSimulationControls.d.ts +10 -0
  352. package/dist/react/useVoiceProviderStatus.d.ts +1 -1
  353. package/dist/react/useVoiceReadinessFailures.d.ts +8 -0
  354. package/dist/react/useVoiceReconnectProfileEvidence.d.ts +8 -0
  355. package/dist/react/useVoiceRoutingStatus.d.ts +8 -0
  356. package/dist/react/useVoiceSessionObservability.d.ts +8 -0
  357. package/dist/react/useVoiceSessionSnapshot.d.ts +9 -0
  358. package/dist/react/useVoiceStream.d.ts +4 -1
  359. package/dist/react/useVoiceTraceTimeline.d.ts +8 -0
  360. package/dist/react/useVoiceTurnLatency.d.ts +9 -0
  361. package/dist/react/useVoiceTurnQuality.d.ts +8 -0
  362. package/dist/react/useVoiceWorkflowStatus.d.ts +1 -1
  363. package/dist/svelte/createVoiceAgentSquadStatus.d.ts +9 -0
  364. package/dist/svelte/createVoiceCallDebugger.d.ts +10 -0
  365. package/dist/svelte/createVoiceCallPlayer.d.ts +33 -0
  366. package/dist/svelte/createVoiceCampaignDialerProof.d.ts +9 -0
  367. package/dist/svelte/createVoiceCostDashboard.d.ts +13 -0
  368. package/dist/svelte/createVoiceDeliveryRuntime.d.ts +11 -0
  369. package/dist/svelte/createVoiceLiveAgentConsole.d.ts +23 -0
  370. package/dist/svelte/createVoiceLiveCallViewer.d.ts +26 -0
  371. package/dist/svelte/createVoiceLiveOps.d.ts +13 -0
  372. package/dist/svelte/createVoiceOpsActionCenter.d.ts +10 -0
  373. package/dist/svelte/createVoiceOpsStatus.d.ts +4 -4
  374. package/dist/svelte/createVoicePlatformCoverage.d.ts +7 -0
  375. package/dist/svelte/createVoiceProfileComparison.d.ts +7 -0
  376. package/dist/svelte/createVoiceProofTrends.d.ts +7 -0
  377. package/dist/svelte/createVoiceProviderCapabilities.d.ts +10 -0
  378. package/dist/svelte/createVoiceProviderContracts.d.ts +10 -0
  379. package/dist/svelte/createVoiceProviderSimulationControls.d.ts +11 -0
  380. package/dist/svelte/createVoiceProviderStatus.d.ts +5 -3
  381. package/dist/svelte/createVoiceReadinessFailures.d.ts +7 -0
  382. package/dist/svelte/createVoiceReconnectProfileEvidence.d.ts +7 -0
  383. package/dist/svelte/createVoiceReplayTimeline.d.ts +13 -0
  384. package/dist/svelte/createVoiceRoutingStatus.d.ts +10 -0
  385. package/dist/svelte/createVoiceSessionObservability.d.ts +10 -0
  386. package/dist/svelte/createVoiceSessionSnapshot.d.ts +11 -0
  387. package/dist/svelte/createVoiceStream.d.ts +1 -1
  388. package/dist/svelte/createVoiceTraceTimeline.d.ts +10 -0
  389. package/dist/svelte/createVoiceTurnLatency.d.ts +11 -0
  390. package/dist/svelte/createVoiceTurnQuality.d.ts +10 -0
  391. package/dist/svelte/createVoiceWidget.d.ts +19 -0
  392. package/dist/svelte/createVoiceWorkflowStatus.d.ts +2 -2
  393. package/dist/svelte/index.d.ts +37 -6
  394. package/dist/svelte/index.js +7047 -768
  395. package/dist/telephony/contract.d.ts +61 -0
  396. package/dist/telephony/matrix.d.ts +97 -0
  397. package/dist/telephony/plivo.d.ts +303 -0
  398. package/dist/telephony/response.d.ts +1 -1
  399. package/dist/telephony/security.d.ts +182 -0
  400. package/dist/telephony/telnyx.d.ts +291 -0
  401. package/dist/telephony/twilio.d.ts +149 -15
  402. package/dist/testing/accuracy.d.ts +1 -1
  403. package/dist/testing/benchmark.d.ts +15 -15
  404. package/dist/testing/corrected.d.ts +9 -9
  405. package/dist/testing/duplex.d.ts +5 -5
  406. package/dist/testing/fixtures.d.ts +4 -4
  407. package/dist/testing/index.d.ts +13 -13
  408. package/dist/testing/index.js +5756 -636
  409. package/dist/testing/ioProviderSimulator.d.ts +5 -5
  410. package/dist/testing/providerSimulator.d.ts +5 -5
  411. package/dist/testing/review.d.ts +8 -8
  412. package/dist/testing/sessionBenchmark.d.ts +13 -13
  413. package/dist/testing/stt.d.ts +3 -3
  414. package/dist/testing/telephony.d.ts +27 -2
  415. package/dist/testing/tts.d.ts +2 -2
  416. package/dist/vue/VoiceCallDebuggerLaunch.d.ts +72 -0
  417. package/dist/vue/VoiceCallPlayer.d.ts +40 -0
  418. package/dist/vue/VoiceCostDashboard.d.ts +57 -0
  419. package/dist/vue/VoiceDeliveryRuntime.d.ts +34 -0
  420. package/dist/vue/VoiceLiveAgentConsole.d.ts +50 -0
  421. package/dist/vue/VoiceLiveCallViewer.d.ts +35 -0
  422. package/dist/vue/VoiceOpsActionCenter.d.ts +13 -0
  423. package/dist/vue/VoiceOpsStatus.d.ts +4 -0
  424. package/dist/vue/VoicePlatformCoverage.d.ts +27 -0
  425. package/dist/vue/VoiceProofTrends.d.ts +25 -0
  426. package/dist/vue/VoiceProviderCapabilities.d.ts +55 -0
  427. package/dist/vue/VoiceProviderContracts.d.ts +25 -0
  428. package/dist/vue/VoiceProviderSimulationControls.d.ts +88 -0
  429. package/dist/vue/VoiceProviderStatus.d.ts +55 -0
  430. package/dist/vue/VoiceReadinessFailures.d.ts +25 -0
  431. package/dist/vue/VoiceReconnectProfileEvidence.d.ts +25 -0
  432. package/dist/vue/VoiceReplayTimeline.d.ts +17 -0
  433. package/dist/vue/VoiceRoutingStatus.d.ts +55 -0
  434. package/dist/vue/VoiceSessionObservability.d.ts +27 -0
  435. package/dist/vue/VoiceSessionSnapshot.d.ts +72 -0
  436. package/dist/vue/VoiceTurnLatency.d.ts +73 -0
  437. package/dist/vue/VoiceTurnQuality.d.ts +55 -0
  438. package/dist/vue/VoiceWidget.d.ts +77 -0
  439. package/dist/vue/index.d.ts +49 -6
  440. package/dist/vue/index.js +12193 -402
  441. package/dist/vue/useVoiceAgentSquadStatus.d.ts +9 -0
  442. package/dist/vue/useVoiceCallDebugger.d.ts +10 -0
  443. package/dist/vue/useVoiceCampaignDialerProof.d.ts +11 -0
  444. package/dist/vue/useVoiceController.d.ts +9 -7
  445. package/dist/vue/useVoiceDeliveryRuntime.d.ts +13 -0
  446. package/dist/vue/useVoiceLiveOps.d.ts +9 -0
  447. package/dist/vue/useVoiceOpsActionCenter.d.ts +11 -0
  448. package/dist/vue/useVoiceOpsStatus.d.ts +9 -0
  449. package/dist/vue/useVoicePlatformCoverage.d.ts +9 -0
  450. package/dist/vue/useVoiceProfileComparison.d.ts +9 -0
  451. package/dist/vue/useVoiceProofTrends.d.ts +9 -0
  452. package/dist/vue/useVoiceProviderCapabilities.d.ts +9 -0
  453. package/dist/vue/useVoiceProviderContracts.d.ts +9 -0
  454. package/dist/vue/useVoiceProviderSimulationControls.d.ts +24 -0
  455. package/dist/vue/useVoiceProviderStatus.d.ts +3 -3
  456. package/dist/vue/useVoiceReadinessFailures.d.ts +959 -0
  457. package/dist/vue/useVoiceReconnectProfileEvidence.d.ts +9 -0
  458. package/dist/vue/useVoiceRoutingStatus.d.ts +8 -0
  459. package/dist/vue/useVoiceSessionObservability.d.ts +9 -0
  460. package/dist/vue/useVoiceSessionSnapshot.d.ts +10 -0
  461. package/dist/vue/useVoiceStream.d.ts +9 -6
  462. package/dist/vue/useVoiceTraceTimeline.d.ts +9 -0
  463. package/dist/vue/useVoiceTurnLatency.d.ts +10 -0
  464. package/dist/vue/useVoiceTurnQuality.d.ts +9 -0
  465. package/dist/vue/useVoiceWorkflowStatus.d.ts +3 -3
  466. package/package.json +154 -256
  467. package/dist/angular/voice-app-kit-status.service.d.ts +0 -12
  468. package/dist/angular/voice-ops-status.component.d.ts +0 -15
  469. package/dist/appKit.d.ts +0 -92
  470. package/dist/client/appKitStatus.d.ts +0 -19
  471. package/dist/react/useVoiceAppKitStatus.d.ts +0 -8
  472. package/dist/svelte/createVoiceAppKitStatus.d.ts +0 -8
  473. package/dist/turnProfiles.d.ts +0 -6
  474. package/dist/vue/useVoiceAppKitStatus.d.ts +0 -9
  475. package/fixtures/README.md +0 -57
  476. package/fixtures/manifest.json +0 -199
  477. package/fixtures/pcm/dialogue-three-clean.pcm +0 -0
  478. package/fixtures/pcm/dialogue-three-mixed.pcm +0 -0
  479. package/fixtures/pcm/dialogue-two-clean.pcm +0 -0
  480. package/fixtures/pcm/dialogue-two-noisy.pcm +0 -0
  481. package/fixtures/pcm/multiturn-three-mixed.pcm +0 -0
  482. package/fixtures/pcm/multiturn-two-clean.pcm +0 -0
  483. package/fixtures/pcm/quietly-alone-clean.pcm +0 -0
  484. package/fixtures/pcm/rainstorms-noisy.pcm +0 -0
  485. package/fixtures/pcm/stella-bulgaria-bulgarian20.pcm +0 -0
  486. package/fixtures/pcm/stella-ghana-english507.pcm +0 -0
  487. package/fixtures/pcm/stella-india-english37.pcm +0 -0
  488. package/fixtures/pcm/stella-jamaica-jamaican-creole-english1.pcm +0 -0
  489. package/fixtures/pcm/stella-liberia-liberian-pidgin-english2.pcm +0 -0
  490. package/fixtures/pcm/stella-pakistan-english519.pcm +0 -0
  491. package/fixtures/pcm/stella-sierra-leone-krio5.pcm +0 -0
  492. package/fixtures/pcm/stella-singapore-english655.pcm +0 -0
  493. package/fixtures/pcm/traveled-back-route-clean.pcm +0 -0
@@ -1,8 +1,8 @@
1
- import type { STTAdapter, STTAdapterOpenOptions, TTSAdapter, TTSAdapterOpenOptions } from './types';
2
- import type { VoiceProviderRouterHealthOptions, VoiceProviderRouterProviderHealth, VoiceProviderRouterProviderProfile } from './modelAdapters';
1
+ import type { STTAdapter, STTAdapterOpenOptions, TTSAdapter, TTSAdapterOpenOptions } from "./types";
2
+ import type { VoiceProviderRouterHealthOptions, VoiceProviderRouterProviderHealth, VoiceProviderRouterProviderProfile, VoiceProviderRouterPolicyPreset, VoiceProviderRouterPolicyWeights, VoiceProviderRouterStrategy } from "./modelAdapters";
3
3
  type MaybePromise<T> = T | Promise<T>;
4
- type VoiceIOProviderKind = 'stt' | 'tts';
5
- type VoiceIOProviderStatus = 'error' | 'fallback' | 'success';
4
+ type VoiceIOProviderKind = "stt" | "tts";
5
+ type VoiceIOProviderStatus = "error" | "fallback" | "success";
6
6
  export type VoiceIOProviderRouterEvent<TProvider extends string = string> = {
7
7
  at: number;
8
8
  attempt: number;
@@ -11,7 +11,7 @@ export type VoiceIOProviderRouterEvent<TProvider extends string = string> = {
11
11
  fallbackProvider?: TProvider;
12
12
  kind: VoiceIOProviderKind;
13
13
  latencyBudgetMs?: number;
14
- operation: 'open' | 'send';
14
+ operation: "open" | "send";
15
15
  provider: TProvider;
16
16
  providerHealth?: VoiceProviderRouterProviderHealth<TProvider>;
17
17
  selectedProvider: TProvider;
@@ -20,11 +20,22 @@ export type VoiceIOProviderRouterEvent<TProvider extends string = string> = {
20
20
  suppressedUntil?: number;
21
21
  timedOut?: boolean;
22
22
  };
23
+ export type VoiceIOProviderRouterPolicyConfig<TOpenOptions = unknown, TProvider extends string = string> = {
24
+ allowProviders?: readonly TProvider[] | ((input: TOpenOptions) => MaybePromise<readonly TProvider[]>);
25
+ maxCost?: number;
26
+ maxLatencyMs?: number;
27
+ minQuality?: number;
28
+ scoreProvider?: (provider: TProvider, profile: VoiceProviderRouterProviderProfile | undefined) => number;
29
+ strategy?: VoiceProviderRouterStrategy;
30
+ weights?: VoiceProviderRouterPolicyWeights;
31
+ };
32
+ export type VoiceIOProviderRouterPolicy<TOpenOptions = unknown, TProvider extends string = string> = VoiceProviderRouterStrategy | VoiceProviderRouterPolicyPreset | VoiceIOProviderRouterPolicyConfig<TOpenOptions, TProvider>;
23
33
  export type VoiceIOProviderRouterOptions<TProvider extends string, TAdapter, TOpenOptions> = {
24
34
  adapters: Partial<Record<TProvider, TAdapter>>;
25
35
  fallback?: readonly TProvider[] | ((input: TOpenOptions) => MaybePromise<readonly TProvider[]>);
26
36
  isProviderError?: (error: unknown, provider: TProvider) => boolean;
27
37
  onProviderEvent?: (event: VoiceIOProviderRouterEvent<TProvider>, input: TOpenOptions) => Promise<void> | void;
38
+ policy?: VoiceIOProviderRouterPolicy<TOpenOptions, TProvider>;
28
39
  providerHealth?: boolean | VoiceProviderRouterHealthOptions;
29
40
  providerProfiles?: Partial<Record<TProvider, VoiceProviderRouterProviderProfile>>;
30
41
  selectProvider?: (input: TOpenOptions) => MaybePromise<TProvider | undefined>;
@@ -0,0 +1,92 @@
1
+ import { Elysia } from "elysia";
2
+ import { type VoiceProviderHealthStatus, type VoiceProviderHealthSummary, type VoiceProviderHealthSummaryOptions } from "./providerHealth";
3
+ export type VoiceProviderCapabilityKind = "llm" | "stt" | "tts" | "custom";
4
+ export type VoiceProviderCapabilityDefinition<TProvider extends string = string> = {
5
+ configured?: boolean;
6
+ description?: string;
7
+ features?: string[];
8
+ kind: VoiceProviderCapabilityKind;
9
+ label?: string;
10
+ model?: string;
11
+ provider: TProvider;
12
+ selected?: boolean;
13
+ };
14
+ export type VoiceProviderCapabilitySummary<TProvider extends string = string> = VoiceProviderCapabilityDefinition<TProvider> & {
15
+ configured: boolean;
16
+ health?: VoiceProviderHealthSummary<TProvider>;
17
+ status: VoiceProviderHealthStatus | "selected" | "unconfigured";
18
+ };
19
+ export type VoiceProviderCapabilityReport<TProvider extends string = string> = {
20
+ capabilities: VoiceProviderCapabilitySummary<TProvider>[];
21
+ checkedAt: number;
22
+ configured: number;
23
+ selected: number;
24
+ total: number;
25
+ unconfigured: number;
26
+ };
27
+ export type VoiceProviderCapabilityOptions<TProvider extends string = string> = VoiceProviderHealthSummaryOptions<TProvider> & {
28
+ features?: Partial<Record<TProvider, string[]>>;
29
+ llmProviders?: readonly TProvider[];
30
+ models?: Partial<Record<TProvider, string>>;
31
+ providers?: readonly VoiceProviderCapabilityDefinition<TProvider>[];
32
+ selected?: Partial<Record<VoiceProviderCapabilityKind, TProvider>>;
33
+ sttProviders?: readonly TProvider[];
34
+ ttsProviders?: readonly TProvider[];
35
+ };
36
+ export type VoiceProviderCapabilityHandlerOptions<TProvider extends string = string> = VoiceProviderCapabilityOptions<TProvider>;
37
+ export type VoiceProviderCapabilityHTMLHandlerOptions<TProvider extends string = string> = VoiceProviderCapabilityHandlerOptions<TProvider> & {
38
+ headers?: HeadersInit;
39
+ render?: (report: VoiceProviderCapabilityReport<TProvider>) => string | Promise<string>;
40
+ title?: string;
41
+ };
42
+ export type VoiceProviderCapabilityRoutesOptions<TProvider extends string = string> = VoiceProviderCapabilityHTMLHandlerOptions<TProvider> & {
43
+ htmlPath?: false | string;
44
+ name?: string;
45
+ path?: string;
46
+ };
47
+ export declare const createVoiceProviderCapabilityHTMLHandler: <TProvider extends string = string>(options: VoiceProviderCapabilityHTMLHandlerOptions<TProvider>) => () => Promise<Response>;
48
+ export declare const createVoiceProviderCapabilityJSONHandler: <TProvider extends string = string>(options: VoiceProviderCapabilityHandlerOptions<TProvider>) => () => Promise<VoiceProviderCapabilityReport<TProvider>>;
49
+ export declare const createVoiceProviderCapabilityRoutes: <TProvider extends string = string>(options: VoiceProviderCapabilityRoutesOptions<TProvider>) => Elysia<"", {
50
+ decorator: {};
51
+ store: {};
52
+ derive: {};
53
+ resolve: {};
54
+ }, {
55
+ typebox: {};
56
+ error: {};
57
+ }, {
58
+ schema: {};
59
+ standaloneSchema: {};
60
+ macro: {};
61
+ macroFn: {};
62
+ parser: {};
63
+ response: {};
64
+ }, {
65
+ [x: string]: {
66
+ get: {
67
+ body: unknown;
68
+ params: {};
69
+ query: unknown;
70
+ headers: unknown;
71
+ response: {
72
+ 200: VoiceProviderCapabilityReport<TProvider>;
73
+ };
74
+ };
75
+ };
76
+ }, {
77
+ derive: {};
78
+ resolve: {};
79
+ schema: {};
80
+ standaloneSchema: {};
81
+ response: {};
82
+ }, {
83
+ derive: {};
84
+ resolve: {};
85
+ schema: {};
86
+ standaloneSchema: {};
87
+ response: {};
88
+ }>;
89
+ export declare const renderVoiceProviderCapabilityHTML: <TProvider extends string = string>(report: VoiceProviderCapabilityReport<TProvider>, options?: {
90
+ title?: string;
91
+ }) => string;
92
+ export declare const summarizeVoiceProviderCapabilities: <TProvider extends string = string>(options: VoiceProviderCapabilityOptions<TProvider>) => Promise<VoiceProviderCapabilityReport<TProvider>>;
@@ -0,0 +1,130 @@
1
+ import { Elysia } from "elysia";
2
+ import { type VoiceRoutingEventKind } from "./resilienceRoutes";
3
+ import type { StoredVoiceTraceEvent, VoiceTraceEvent, VoiceTraceEventStore } from "./trace";
4
+ export type VoiceProviderDecisionStatus = "degraded" | "error" | "fallback" | "selected" | "skipped" | "success";
5
+ export type VoiceProviderDecisionTrace = {
6
+ at: number;
7
+ elapsedMs?: number;
8
+ error?: string;
9
+ fallbackProvider?: string;
10
+ kind?: VoiceRoutingEventKind;
11
+ latencyBudgetMs?: number;
12
+ provider: string;
13
+ reason: string;
14
+ scenarioId?: string;
15
+ selectedProvider?: string;
16
+ sessionId: string;
17
+ status: VoiceProviderDecisionStatus;
18
+ surface: string;
19
+ turnId?: string;
20
+ };
21
+ export type VoiceProviderDecisionTraceInput = Omit<VoiceProviderDecisionTrace, "at" | "reason" | "sessionId" | "surface"> & {
22
+ at?: number;
23
+ reason?: string;
24
+ sessionId?: string;
25
+ surface?: string;
26
+ };
27
+ export type VoiceProviderDecisionTraceIssue = {
28
+ code: string;
29
+ message: string;
30
+ status: "fail" | "warn";
31
+ surface?: string;
32
+ };
33
+ export type VoiceProviderDecisionSurfaceReport = {
34
+ degraded: number;
35
+ decisions: number;
36
+ errors: number;
37
+ fallbacks: number;
38
+ issues: VoiceProviderDecisionTraceIssue[];
39
+ latestAt?: number;
40
+ providers: string[];
41
+ reasons: string[];
42
+ selected: number;
43
+ status: "fail" | "pass" | "warn";
44
+ surface: string;
45
+ };
46
+ export type VoiceProviderDecisionTraceReport = {
47
+ checkedAt: number;
48
+ decisions: VoiceProviderDecisionTrace[];
49
+ issues: VoiceProviderDecisionTraceIssue[];
50
+ status: "fail" | "pass" | "warn";
51
+ summary: {
52
+ degraded: number;
53
+ decisions: number;
54
+ errors: number;
55
+ fallbacks: number;
56
+ providers: number;
57
+ selected: number;
58
+ surfaces: number;
59
+ };
60
+ surfaces: VoiceProviderDecisionSurfaceReport[];
61
+ };
62
+ export type VoiceProviderDecisionTraceReportOptions = {
63
+ events?: StoredVoiceTraceEvent[] | VoiceProviderDecisionTrace[];
64
+ maxAgeMs?: number;
65
+ minDegraded?: number;
66
+ minDecisions?: number;
67
+ minFallbacks?: number;
68
+ now?: number;
69
+ requiredFallbackProviders?: readonly string[];
70
+ requiredProviders?: readonly string[];
71
+ requiredReasonIncludes?: readonly string[];
72
+ requiredSurfaces?: readonly string[];
73
+ requiredStatuses?: readonly VoiceProviderDecisionStatus[];
74
+ sessionId?: string;
75
+ store?: VoiceTraceEventStore;
76
+ };
77
+ export type VoiceProviderDecisionTraceRoutesOptions = VoiceProviderDecisionTraceReportOptions & {
78
+ headers?: HeadersInit;
79
+ htmlPath?: false | string;
80
+ markdownPath?: false | string;
81
+ name?: string;
82
+ path?: string;
83
+ render?: (report: VoiceProviderDecisionTraceReport) => string | Promise<string>;
84
+ title?: string;
85
+ };
86
+ export declare const buildVoiceProviderDecisionTraceReport: (options: VoiceProviderDecisionTraceReportOptions) => Promise<VoiceProviderDecisionTraceReport>;
87
+ export declare const createVoiceProviderDecisionTraceEvent: (input: VoiceProviderDecisionTraceInput) => VoiceTraceEvent;
88
+ export declare const createVoiceProviderDecisionTraceRoutes: (options: VoiceProviderDecisionTraceRoutesOptions) => Elysia<"", {
89
+ decorator: {};
90
+ store: {};
91
+ derive: {};
92
+ resolve: {};
93
+ }, {
94
+ typebox: {};
95
+ error: {};
96
+ }, {
97
+ schema: {};
98
+ standaloneSchema: {};
99
+ macro: {};
100
+ macroFn: {};
101
+ parser: {};
102
+ response: {};
103
+ }, {
104
+ [x: string]: {
105
+ get: {
106
+ body: unknown;
107
+ params: {};
108
+ query: unknown;
109
+ headers: unknown;
110
+ response: {
111
+ 200: Response;
112
+ };
113
+ };
114
+ };
115
+ }, {
116
+ derive: {};
117
+ resolve: {};
118
+ schema: {};
119
+ standaloneSchema: {};
120
+ response: {};
121
+ }, {
122
+ derive: {};
123
+ resolve: {};
124
+ schema: {};
125
+ standaloneSchema: {};
126
+ response: {};
127
+ }>;
128
+ export declare const listVoiceProviderDecisionTraces: (events: StoredVoiceTraceEvent[] | VoiceProviderDecisionTrace[]) => VoiceProviderDecisionTrace[];
129
+ export declare const renderVoiceProviderDecisionTraceHTML: (report: VoiceProviderDecisionTraceReport, title?: string) => string;
130
+ export declare const renderVoiceProviderDecisionTraceMarkdown: (report: VoiceProviderDecisionTraceReport) => string;
@@ -1,6 +1,6 @@
1
- import { Elysia } from 'elysia';
2
- import type { StoredVoiceTraceEvent, VoiceTraceEventStore } from './trace';
3
- export type VoiceProviderHealthStatus = 'healthy' | 'idle' | 'rate-limited' | 'degraded' | 'recoverable' | 'suppressed';
1
+ import { Elysia } from "elysia";
2
+ import type { StoredVoiceTraceEvent, VoiceTraceEventStore } from "./trace";
3
+ export type VoiceProviderHealthStatus = "healthy" | "idle" | "rate-limited" | "degraded" | "recoverable" | "suppressed";
4
4
  export type VoiceProviderHealthSummary<TProvider extends string = string> = {
5
5
  averageElapsedMs?: number;
6
6
  errorCount: number;
@@ -34,9 +34,17 @@ export type VoiceProviderHealthRoutesOptions<TProvider extends string = string>
34
34
  path?: string;
35
35
  };
36
36
  export declare const summarizeVoiceProviderHealth: <TProvider extends string = string>(input: StoredVoiceTraceEvent[] | VoiceProviderHealthSummaryOptions<TProvider>) => Promise<VoiceProviderHealthSummary<TProvider>[]>;
37
- export declare const renderVoiceProviderHealthHTML: (providers: VoiceProviderHealthSummary[]) => string;
38
- export declare const createVoiceProviderHealthJSONHandler: <TProvider extends string = string>(options: VoiceProviderHealthHandlerOptions<TProvider>) => () => Promise<VoiceProviderHealthSummary<TProvider>[]>;
37
+ export type VoiceProviderHealthByModalityOptions = {
38
+ llmProviders?: readonly string[];
39
+ sttProviders?: readonly string[];
40
+ ttsProviders?: readonly string[];
41
+ };
42
+ /**
43
+ * Provider-health summary across LLM/STT/TTS, scoping STT and TTS to their
44
+ * respective trace-event kinds. Returns the three groups flattened.
45
+ */
39
46
  export declare const createVoiceProviderHealthHTMLHandler: <TProvider extends string = string>(options: VoiceProviderHealthHTMLHandlerOptions<TProvider>) => () => Promise<Response>;
47
+ export declare const createVoiceProviderHealthJSONHandler: <TProvider extends string = string>(options: VoiceProviderHealthHandlerOptions<TProvider>) => () => Promise<VoiceProviderHealthSummary<TProvider>[]>;
40
48
  export declare const createVoiceProviderHealthRoutes: <TProvider extends string = string>(options: VoiceProviderHealthRoutesOptions<TProvider>) => Elysia<"", {
41
49
  decorator: {};
42
50
  store: {};
@@ -77,3 +85,5 @@ export declare const createVoiceProviderHealthRoutes: <TProvider extends string
77
85
  standaloneSchema: {};
78
86
  response: {};
79
87
  }>;
88
+ export declare const renderVoiceProviderHealthHTML: (providers: VoiceProviderHealthSummary[]) => string;
89
+ export declare const summarizeVoiceProviderHealthByModality: (events: StoredVoiceTraceEvent[], { llmProviders, sttProviders, ttsProviders, }: VoiceProviderHealthByModalityOptions) => Promise<VoiceProviderHealthSummary[]>;
@@ -0,0 +1,109 @@
1
+ import { Elysia } from "elysia";
2
+ import type { VoiceProviderOrchestrationProfile, VoiceProviderRouterProviderProfile } from "./modelAdapters";
3
+ import type { VoiceSessionRecord } from "./types";
4
+ export type VoiceProviderOrchestrationStatus = "fail" | "pass" | "warn";
5
+ export type VoiceProviderOrchestrationRequirement = {
6
+ minProviders?: number;
7
+ requireBudgetPolicy?: boolean;
8
+ requireCircuitBreaker?: boolean;
9
+ requireFallback?: boolean;
10
+ requireTimeoutBudget?: boolean;
11
+ };
12
+ export type VoiceProviderOrchestrationIssue = {
13
+ code: string;
14
+ message: string;
15
+ status: Exclude<VoiceProviderOrchestrationStatus, "pass">;
16
+ surface?: string;
17
+ };
18
+ export type VoiceProviderOrchestrationSurfaceReport = {
19
+ allowProviders: string[];
20
+ budgetPolicy: {
21
+ maxCost?: number;
22
+ maxLatencyMs?: number;
23
+ minQuality?: number;
24
+ };
25
+ circuitBreaker: boolean;
26
+ fallbackMode?: string;
27
+ fallbackProviders: string[];
28
+ issues: VoiceProviderOrchestrationIssue[];
29
+ providerProfiles: Record<string, VoiceProviderRouterProviderProfile>;
30
+ providers: string[];
31
+ status: VoiceProviderOrchestrationStatus;
32
+ strategy?: string;
33
+ surface: string;
34
+ timeoutBudget: boolean;
35
+ timeoutMs?: number;
36
+ };
37
+ export type VoiceProviderOrchestrationReport = {
38
+ checkedAt: number;
39
+ issues: VoiceProviderOrchestrationIssue[];
40
+ profileId: string;
41
+ status: VoiceProviderOrchestrationStatus;
42
+ summary: {
43
+ failed: number;
44
+ passed: number;
45
+ providers: number;
46
+ surfaces: number;
47
+ warned: number;
48
+ };
49
+ surfaces: VoiceProviderOrchestrationSurfaceReport[];
50
+ };
51
+ export type VoiceProviderOrchestrationReportOptions<TProvider extends string = string, TSurface extends string = string> = {
52
+ defaultRequirement?: VoiceProviderOrchestrationRequirement;
53
+ profile: VoiceProviderOrchestrationProfile<unknown, VoiceSessionRecord, TProvider, TSurface>;
54
+ requirements?: Partial<Record<TSurface, VoiceProviderOrchestrationRequirement>>;
55
+ };
56
+ export type VoiceProviderOrchestrationRoutesOptions<TProvider extends string = string, TSurface extends string = string> = VoiceProviderOrchestrationReportOptions<TProvider, TSurface> & {
57
+ headers?: HeadersInit;
58
+ htmlPath?: false | string;
59
+ markdownPath?: false | string;
60
+ name?: string;
61
+ path?: string;
62
+ render?: (report: VoiceProviderOrchestrationReport) => string | Promise<string>;
63
+ title?: string;
64
+ };
65
+ export declare const buildVoiceProviderOrchestrationReport: <TProvider extends string = string, TSurface extends string = string>(options: VoiceProviderOrchestrationReportOptions<TProvider, TSurface>) => VoiceProviderOrchestrationReport;
66
+ export declare const createVoiceProviderOrchestrationRoutes: <TProvider extends string = string, TSurface extends string = string>(options: VoiceProviderOrchestrationRoutesOptions<TProvider, TSurface>) => Elysia<"", {
67
+ decorator: {};
68
+ store: {};
69
+ derive: {};
70
+ resolve: {};
71
+ }, {
72
+ typebox: {};
73
+ error: {};
74
+ }, {
75
+ schema: {};
76
+ standaloneSchema: {};
77
+ macro: {};
78
+ macroFn: {};
79
+ parser: {};
80
+ response: {};
81
+ }, {
82
+ [x: string]: {
83
+ get: {
84
+ body: unknown;
85
+ params: {};
86
+ query: unknown;
87
+ headers: unknown;
88
+ response: {
89
+ 200: VoiceProviderOrchestrationReport;
90
+ };
91
+ };
92
+ };
93
+ }, {
94
+ derive: {};
95
+ resolve: {};
96
+ schema: {};
97
+ standaloneSchema: {};
98
+ response: {};
99
+ }, {
100
+ derive: {};
101
+ resolve: {};
102
+ schema: {};
103
+ standaloneSchema: {};
104
+ response: {};
105
+ }>;
106
+ export declare const renderVoiceProviderOrchestrationHTML: (report: VoiceProviderOrchestrationReport, options?: {
107
+ title?: string;
108
+ }) => string;
109
+ export declare const renderVoiceProviderOrchestrationMarkdown: (report: VoiceProviderOrchestrationReport) => string;
@@ -0,0 +1,35 @@
1
+ import type { VoiceProviderRouterEvent } from "./modelAdapters";
2
+ import type { VoiceIOProviderRouterEvent } from "./providerAdapters";
3
+ import type { StoredVoiceTraceEvent, VoiceTraceEvent, VoiceTraceEventStore } from "./trace";
4
+ export type VoiceProviderRouterTraceEventOptions<TProvider extends string = string> = {
5
+ at?: number;
6
+ event: VoiceProviderRouterEvent<TProvider>;
7
+ id?: string;
8
+ metadata?: Record<string, unknown>;
9
+ payload?: Record<string, unknown>;
10
+ scenarioId?: string;
11
+ sessionId: string;
12
+ turnId?: string;
13
+ type?: VoiceTraceEvent["type"];
14
+ };
15
+ export type VoiceIOProviderRouterTraceEventOptions<TProvider extends string = string> = {
16
+ at?: number;
17
+ event: VoiceIOProviderRouterEvent<TProvider>;
18
+ id?: string;
19
+ metadata?: Record<string, unknown>;
20
+ payload?: Record<string, unknown>;
21
+ scenarioId?: string;
22
+ sessionId: string;
23
+ turnId?: string;
24
+ type?: VoiceTraceEvent["type"];
25
+ };
26
+ export type VoiceProviderRouterTraceAppendOptions<TEvent extends StoredVoiceTraceEvent = StoredVoiceTraceEvent, TProvider extends string = string> = VoiceProviderRouterTraceEventOptions<TProvider> & {
27
+ store: Pick<VoiceTraceEventStore<TEvent>, "append">;
28
+ };
29
+ export type VoiceIOProviderRouterTraceAppendOptions<TEvent extends StoredVoiceTraceEvent = StoredVoiceTraceEvent, TProvider extends string = string> = VoiceIOProviderRouterTraceEventOptions<TProvider> & {
30
+ store: Pick<VoiceTraceEventStore<TEvent>, "append">;
31
+ };
32
+ export declare const appendVoiceIOProviderRouterTraceEvent: <TEvent extends StoredVoiceTraceEvent = StoredVoiceTraceEvent, TProvider extends string = string>(options: VoiceIOProviderRouterTraceAppendOptions<TEvent, TProvider>) => Promise<TEvent>;
33
+ export declare const appendVoiceProviderRouterTraceEvent: <TEvent extends StoredVoiceTraceEvent = StoredVoiceTraceEvent, TProvider extends string = string>(options: VoiceProviderRouterTraceAppendOptions<TEvent, TProvider>) => Promise<TEvent>;
34
+ export declare const buildVoiceIOProviderRouterTraceEvent: <TProvider extends string = string>(options: VoiceIOProviderRouterTraceEventOptions<TProvider>) => StoredVoiceTraceEvent;
35
+ export declare const buildVoiceProviderRouterTraceEvent: <TProvider extends string = string>(options: VoiceProviderRouterTraceEventOptions<TProvider>) => StoredVoiceTraceEvent;
@@ -0,0 +1,71 @@
1
+ import { type VoiceRoutingEvent, type VoiceRoutingEventKind } from "./resilienceRoutes";
2
+ import type { StoredVoiceTraceEvent, VoiceTraceEventStore } from "./trace";
3
+ export type VoiceProviderRoutingStatus = "error" | "fallback" | "success";
4
+ export type VoiceProviderRoutingExpectation = {
5
+ fallbackProvider?: string;
6
+ kind?: VoiceRoutingEventKind;
7
+ operation?: string;
8
+ provider?: string;
9
+ selectedProvider?: string;
10
+ status?: VoiceProviderRoutingStatus;
11
+ };
12
+ export type VoiceProviderRoutingContractDefinition = {
13
+ description?: string;
14
+ expect: VoiceProviderRoutingExpectation[];
15
+ id: string;
16
+ label?: string;
17
+ scenarioId?: string;
18
+ sessionId?: string;
19
+ };
20
+ export type VoiceProviderRoutingContractIssue = {
21
+ code: string;
22
+ message: string;
23
+ };
24
+ export type VoiceProviderRoutingContractReport = {
25
+ contractId: string;
26
+ events: VoiceRoutingEvent[];
27
+ issues: VoiceProviderRoutingContractIssue[];
28
+ pass: boolean;
29
+ scenarioId?: string;
30
+ sessionId?: string;
31
+ };
32
+ export type VoiceProviderRoutingContractRunOptions = {
33
+ contract: VoiceProviderRoutingContractDefinition;
34
+ events?: StoredVoiceTraceEvent[] | VoiceRoutingEvent[];
35
+ store?: VoiceTraceEventStore;
36
+ };
37
+ export type VoiceProviderRoutingContractAssertionInput = {
38
+ maxFailed?: number;
39
+ maxIssues?: number;
40
+ minContracts?: number;
41
+ minEvents?: number;
42
+ requiredContractIds?: string[];
43
+ requiredFallbackProviders?: string[];
44
+ requiredKinds?: VoiceRoutingEventKind[];
45
+ requiredOperations?: string[];
46
+ requiredProviders?: string[];
47
+ requiredScenarioIds?: string[];
48
+ requiredSelectedProviders?: string[];
49
+ requiredStatuses?: VoiceProviderRoutingStatus[];
50
+ };
51
+ export type VoiceProviderRoutingContractAssertionReport = {
52
+ contractIds: string[];
53
+ events: number;
54
+ failed: number;
55
+ fallbackProviders: string[];
56
+ issues: string[];
57
+ issueCount: number;
58
+ kinds: VoiceRoutingEventKind[];
59
+ ok: boolean;
60
+ operations: string[];
61
+ passed: number;
62
+ providers: string[];
63
+ scenarioIds: string[];
64
+ selectedProviders: string[];
65
+ statuses: VoiceProviderRoutingStatus[];
66
+ total: number;
67
+ };
68
+ export declare const assertVoiceProviderRoutingContract: (options: VoiceProviderRoutingContractRunOptions) => Promise<VoiceProviderRoutingContractReport>;
69
+ export declare const assertVoiceProviderRoutingContractEvidence: (reports: readonly VoiceProviderRoutingContractReport[], input?: VoiceProviderRoutingContractAssertionInput) => VoiceProviderRoutingContractAssertionReport;
70
+ export declare const evaluateVoiceProviderRoutingContractEvidence: (reports: readonly VoiceProviderRoutingContractReport[], input?: VoiceProviderRoutingContractAssertionInput) => VoiceProviderRoutingContractAssertionReport;
71
+ export declare const runVoiceProviderRoutingContract: (options: VoiceProviderRoutingContractRunOptions) => Promise<VoiceProviderRoutingContractReport>;
@@ -0,0 +1,142 @@
1
+ import { Elysia } from "elysia";
2
+ import { type VoiceRoutingEvent, type VoiceRoutingEventKind } from "./resilienceRoutes";
3
+ import type { StoredVoiceTraceEvent, VoiceTraceEventStore } from "./trace";
4
+ export type VoiceProviderSloStatus = "fail" | "pass" | "warn";
5
+ export type VoiceProviderSloThresholds = {
6
+ maxAverageElapsedMs?: number;
7
+ maxErrorRate?: number;
8
+ maxFallbackRate?: number;
9
+ maxP95ElapsedMs?: number;
10
+ maxTimeoutRate?: number;
11
+ minSamples?: number;
12
+ };
13
+ export type VoiceProviderSloThresholdConfig = Partial<Record<VoiceRoutingEventKind, VoiceProviderSloThresholds>>;
14
+ export type VoiceProviderSloMetric = {
15
+ actual: number;
16
+ label: string;
17
+ pass: boolean;
18
+ threshold: number;
19
+ unit: "count" | "ms" | "rate";
20
+ };
21
+ export type VoiceProviderSloIssue = {
22
+ code: string;
23
+ detail?: string;
24
+ kind?: VoiceRoutingEventKind;
25
+ label: string;
26
+ sessionId?: string;
27
+ status: Exclude<VoiceProviderSloStatus, "pass">;
28
+ value?: number | string;
29
+ };
30
+ export type VoiceProviderSloKindReport = {
31
+ events: number;
32
+ eventsWithLatency: number;
33
+ fallbacks: number;
34
+ issues: VoiceProviderSloIssue[];
35
+ kind: VoiceRoutingEventKind;
36
+ metrics: Record<string, VoiceProviderSloMetric>;
37
+ providers: string[];
38
+ status: VoiceProviderSloStatus;
39
+ thresholds: Required<VoiceProviderSloThresholds>;
40
+ timeouts: number;
41
+ unresolvedErrors: number;
42
+ };
43
+ export type VoiceProviderSloSessionReport = {
44
+ errorCount: number;
45
+ fallbackCount: number;
46
+ kinds: VoiceRoutingEventKind[];
47
+ lastEventAt: number;
48
+ maxElapsedMs?: number;
49
+ sessionId: string;
50
+ status: VoiceProviderSloStatus;
51
+ timeoutCount: number;
52
+ };
53
+ export type VoiceProviderSloReport = {
54
+ checkedAt: number;
55
+ events: number;
56
+ eventsWithLatency: number;
57
+ issues: VoiceProviderSloIssue[];
58
+ kinds: Record<VoiceRoutingEventKind, VoiceProviderSloKindReport>;
59
+ sessions: VoiceProviderSloSessionReport[];
60
+ status: VoiceProviderSloStatus;
61
+ thresholds: Record<VoiceRoutingEventKind, Required<VoiceProviderSloThresholds>>;
62
+ };
63
+ export type VoiceProviderSloReportOptions = {
64
+ events?: StoredVoiceTraceEvent[] | VoiceRoutingEvent[];
65
+ maxAgeMs?: number;
66
+ now?: number;
67
+ requiredKinds?: readonly VoiceRoutingEventKind[];
68
+ scenarioId?: string;
69
+ sessionId?: string;
70
+ store?: VoiceTraceEventStore;
71
+ thresholds?: VoiceProviderSloThresholdConfig;
72
+ };
73
+ export type VoiceProviderSloRoutesOptions = VoiceProviderSloReportOptions & {
74
+ headers?: HeadersInit;
75
+ htmlPath?: false | string;
76
+ markdownPath?: false | string;
77
+ name?: string;
78
+ path?: string;
79
+ render?: (report: VoiceProviderSloReport) => string | Promise<string>;
80
+ title?: string;
81
+ };
82
+ export type VoiceProviderSloAssertionInput = {
83
+ fallbackKinds?: VoiceRoutingEventKind[];
84
+ maxAverageElapsedMs?: Partial<Record<VoiceRoutingEventKind, number>>;
85
+ maxIssues?: number;
86
+ maxP95ElapsedMs?: Partial<Record<VoiceRoutingEventKind, number>>;
87
+ maxStatus?: VoiceProviderSloStatus;
88
+ maxTimeouts?: number;
89
+ maxUnresolvedErrors?: number;
90
+ minEvents?: number;
91
+ minFallbacks?: number;
92
+ minLatencySamples?: number;
93
+ requiredKinds?: VoiceRoutingEventKind[];
94
+ requiredProviders?: string[];
95
+ };
96
+ export type VoiceProviderSloAssertionReport = {
97
+ events: number;
98
+ eventsWithLatency: number;
99
+ fallbacks: number;
100
+ issues: string[];
101
+ kinds: VoiceRoutingEventKind[];
102
+ ok: boolean;
103
+ providers: string[];
104
+ status: VoiceProviderSloStatus;
105
+ timeouts: number;
106
+ unresolvedErrors: number;
107
+ };
108
+ export declare const assertVoiceProviderSloEvidence: (report: VoiceProviderSloReport, input?: VoiceProviderSloAssertionInput) => VoiceProviderSloAssertionReport;
109
+ export declare const buildVoiceProviderSloReport: (options?: VoiceProviderSloReportOptions) => Promise<VoiceProviderSloReport>;
110
+ export declare const evaluateVoiceProviderSloEvidence: (report: VoiceProviderSloReport, input?: VoiceProviderSloAssertionInput) => VoiceProviderSloAssertionReport;
111
+ export declare const createVoiceProviderSloRoutes: (options: VoiceProviderSloRoutesOptions) => Elysia<"", {
112
+ decorator: {};
113
+ store: {};
114
+ derive: {};
115
+ resolve: {};
116
+ }, {
117
+ typebox: {};
118
+ error: {};
119
+ }, {
120
+ schema: {};
121
+ standaloneSchema: {};
122
+ macro: {};
123
+ macroFn: {};
124
+ parser: {};
125
+ response: {};
126
+ }, {}, {
127
+ derive: {};
128
+ resolve: {};
129
+ schema: {};
130
+ standaloneSchema: {};
131
+ response: {};
132
+ }, {
133
+ derive: {};
134
+ resolve: {};
135
+ schema: {};
136
+ standaloneSchema: {};
137
+ response: {};
138
+ }>;
139
+ export declare const renderVoiceProviderSloHTML: (report: VoiceProviderSloReport, options?: {
140
+ title?: string;
141
+ }) => string;
142
+ export declare const renderVoiceProviderSloMarkdown: (report: VoiceProviderSloReport) => string;