@absolutejs/voice 0.0.22-beta.158 → 0.0.22-beta.159

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.
package/dist/index.d.ts CHANGED
@@ -45,6 +45,7 @@ export { createVoiceProviderCapabilityHTMLHandler, createVoiceProviderCapability
45
45
  export { assertVoiceProviderRoutingContract, runVoiceProviderRoutingContract } from './providerRoutingContract';
46
46
  export { createVoicePhoneAgentProductionSmokeHTMLHandler, createVoicePhoneAgentProductionSmokeJSONHandler, createVoicePhoneAgentProductionSmokeRoutes, renderVoicePhoneAgentProductionSmokeHTML, runVoicePhoneAgentProductionSmokeContract } from './phoneAgentProductionSmoke';
47
47
  export { buildVoiceProductionReadinessGate, buildVoiceProductionReadinessReport, createVoiceProductionReadinessRoutes, renderVoiceProductionReadinessHTML, summarizeVoiceProductionReadinessGate } from './productionReadiness';
48
+ export { createVoiceReadinessProfile } from './readinessProfiles';
48
49
  export { buildVoiceOpsConsoleReport, createVoiceOpsConsoleRoutes, renderVoiceOpsConsoleHTML } from './opsConsoleRoutes';
49
50
  export { summarizeVoiceOpsStatus } from './opsStatus';
50
51
  export { createVoiceOpsStatusRoutes, renderVoiceOpsStatusHTML } from './opsStatusRoutes';
@@ -103,6 +104,7 @@ export type { VoicePhoneAgentProductionSmokeIssue, VoicePhoneAgentProductionSmok
103
104
  export type { VoiceOpsConsoleLink, VoiceOpsConsoleReport, VoiceOpsConsoleRoutesOptions } from './opsConsoleRoutes';
104
105
  export type { VoiceOpsStatus, VoiceOpsStatusLink, VoiceOpsStatusOptions, VoiceOpsStatusReport, VoiceOpsStatusRoutesOptions } from './opsStatus';
105
106
  export type { VoiceProductionReadinessAction, VoiceProductionReadinessAuditOptions, VoiceProductionReadinessAuditRequirement, VoiceProductionReadinessAuditSummary, VoiceProductionReadinessCheck, VoiceProductionReadinessGateIssue, VoiceProductionReadinessGateOptions, VoiceProductionReadinessGateReport, VoiceProductionReadinessOpsActionHistoryOptions, VoiceProductionReadinessOpsActionHistorySummary, VoiceProductionReadinessProofSource, VoiceProductionReadinessReport, VoiceProductionReadinessRoutesOptions, VoiceProductionReadinessTraceDeliverySummary, VoiceProductionReadinessAuditDeliveryOptions, VoiceProductionReadinessAuditDeliverySummary, VoiceProductionReadinessTraceDeliveryOptions, VoiceProductionReadinessStatus } from './productionReadiness';
107
+ export type { VoiceReadinessProfileName, VoiceReadinessProfileOptions, VoiceReadinessProfileRoutesOptions } from './readinessProfiles';
106
108
  export type { VoiceQualityLink, VoiceQualityMetric, VoiceQualityReport, VoiceQualityRoutesOptions, VoiceQualityStatus, VoiceQualityThresholds } from './qualityRoutes';
107
109
  export type { VoiceResilienceIOSimulator, VoiceResilienceLink, VoiceResiliencePageData, VoiceResilienceRoutesOptions, VoiceResilienceSimulationProvider, VoiceRoutingKindSummary, VoiceRoutingDecisionSummary, VoiceRoutingDecisionSummaryOptions, VoiceRoutingEvent, VoiceRoutingEventKind, VoiceRoutingSessionSummary, VoiceRoutingSessionSummaryOptions } from './resilienceRoutes';
108
110
  export type { VoiceIOProviderRouterEvent, VoiceIOProviderRouterOptions, VoiceIOProviderRouterPolicy, VoiceIOProviderRouterPolicyConfig, VoiceSTTProviderRouterOptions, VoiceTTSProviderRouterOptions } from './providerAdapters';
package/dist/index.js CHANGED
@@ -20944,6 +20944,78 @@ var createVoiceProductionReadinessRoutes = (options) => {
20944
20944
  }
20945
20945
  return routes;
20946
20946
  };
20947
+ // src/readinessProfiles.ts
20948
+ var auditStoreFromOptions = (audit) => {
20949
+ if (!audit) {
20950
+ return;
20951
+ }
20952
+ return "list" in audit ? audit : audit.store;
20953
+ };
20954
+ var withDefined = (options) => Object.fromEntries(Object.entries(options).filter(([, value]) => value !== undefined));
20955
+ var mergeLinks = (defaults, links) => ({
20956
+ ...defaults,
20957
+ ...links
20958
+ });
20959
+ var createVoiceReadinessProfile = (profile, options = {}) => {
20960
+ if (profile === "meeting-recorder") {
20961
+ return withDefined({
20962
+ bargeInReports: options.bargeInReports,
20963
+ gate: options.gate,
20964
+ links: mergeLinks({
20965
+ bargeIn: "/barge-in",
20966
+ liveLatency: "/live-latency",
20967
+ providerRoutingContracts: "/resilience",
20968
+ quality: "/quality",
20969
+ reconnectContracts: "/voice/reconnect-contract",
20970
+ resilience: "/resilience",
20971
+ sessions: "/sessions"
20972
+ }, options.links),
20973
+ proofSources: options.proofSources,
20974
+ providerRoutingContracts: options.providerRoutingContracts,
20975
+ reconnectContracts: options.reconnectContracts
20976
+ });
20977
+ }
20978
+ if (profile === "phone-agent") {
20979
+ return withDefined({
20980
+ auditDeliveries: options.auditDeliveries,
20981
+ carriers: options.carriers,
20982
+ deliveryRuntime: options.deliveryRuntime,
20983
+ gate: options.gate,
20984
+ links: mergeLinks({
20985
+ auditDeliveries: "/audit/deliveries",
20986
+ carriers: "/carriers",
20987
+ deliveryRuntime: "/delivery-runtime",
20988
+ handoffs: "/handoffs",
20989
+ phoneAgentSmoke: "/sessions",
20990
+ providerRoutingContracts: "/resilience",
20991
+ resilience: "/resilience",
20992
+ sessions: "/sessions",
20993
+ traceDeliveries: "/traces/deliveries"
20994
+ }, options.links),
20995
+ phoneAgentSmokes: options.phoneAgentSmokes,
20996
+ proofSources: options.proofSources,
20997
+ providerRoutingContracts: options.providerRoutingContracts,
20998
+ traceDeliveries: options.traceDeliveries
20999
+ });
21000
+ }
21001
+ const opsActionHistory = options.opsActionHistory ?? auditStoreFromOptions(options.audit);
21002
+ return withDefined({
21003
+ audit: options.audit,
21004
+ auditDeliveries: options.auditDeliveries,
21005
+ deliveryRuntime: options.deliveryRuntime,
21006
+ gate: options.gate,
21007
+ links: mergeLinks({
21008
+ audit: "/audit",
21009
+ auditDeliveries: "/audit/deliveries",
21010
+ deliveryRuntime: "/delivery-runtime",
21011
+ opsActions: "/voice/ops-actions",
21012
+ traceDeliveries: "/traces/deliveries"
21013
+ }, options.links),
21014
+ opsActionHistory,
21015
+ proofSources: options.proofSources,
21016
+ traceDeliveries: options.traceDeliveries
21017
+ });
21018
+ };
20947
21019
  // src/opsConsoleRoutes.ts
20948
21020
  import { Elysia as Elysia34 } from "elysia";
20949
21021
  var DEFAULT_LINKS = [
@@ -23868,6 +23940,7 @@ export {
23868
23940
  createVoiceRedisTaskLeaseCoordinator,
23869
23941
  createVoiceRedisIdempotencyStore,
23870
23942
  createVoiceReconnectContractRoutes,
23943
+ createVoiceReadinessProfile,
23871
23944
  createVoiceQualityRoutes,
23872
23945
  createVoiceProviderRouter,
23873
23946
  createVoiceProviderHealthRoutes,
@@ -0,0 +1,19 @@
1
+ import type { VoiceProductionReadinessAuditOptions, VoiceProductionReadinessAuditDeliveryOptions, VoiceProductionReadinessOpsActionHistoryOptions, VoiceProductionReadinessRoutesOptions, VoiceProductionReadinessTraceDeliveryOptions } from './productionReadiness';
2
+ export type VoiceReadinessProfileName = 'meeting-recorder' | 'ops-heavy' | 'phone-agent';
3
+ export type VoiceReadinessProfileOptions = {
4
+ audit?: VoiceProductionReadinessAuditOptions;
5
+ auditDeliveries?: VoiceProductionReadinessAuditDeliveryOptions;
6
+ bargeInReports?: VoiceProductionReadinessRoutesOptions['bargeInReports'];
7
+ carriers?: VoiceProductionReadinessRoutesOptions['carriers'];
8
+ deliveryRuntime?: VoiceProductionReadinessRoutesOptions['deliveryRuntime'];
9
+ gate?: VoiceProductionReadinessRoutesOptions['gate'];
10
+ links?: VoiceProductionReadinessRoutesOptions['links'];
11
+ opsActionHistory?: VoiceProductionReadinessOpsActionHistoryOptions;
12
+ phoneAgentSmokes?: VoiceProductionReadinessRoutesOptions['phoneAgentSmokes'];
13
+ proofSources?: VoiceProductionReadinessRoutesOptions['proofSources'];
14
+ providerRoutingContracts?: VoiceProductionReadinessRoutesOptions['providerRoutingContracts'];
15
+ reconnectContracts?: VoiceProductionReadinessRoutesOptions['reconnectContracts'];
16
+ traceDeliveries?: VoiceProductionReadinessTraceDeliveryOptions;
17
+ };
18
+ export type VoiceReadinessProfileRoutesOptions = Partial<Omit<VoiceProductionReadinessRoutesOptions, 'store'>>;
19
+ export declare const createVoiceReadinessProfile: (profile: VoiceReadinessProfileName, options?: VoiceReadinessProfileOptions) => VoiceReadinessProfileRoutesOptions;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@absolutejs/voice",
3
- "version": "0.0.22-beta.158",
3
+ "version": "0.0.22-beta.159",
4
4
  "description": "Voice primitives and Elysia plugin for AbsoluteJS",
5
5
  "repository": {
6
6
  "type": "git",