@absolutejs/voice 0.0.22-beta.225 → 0.0.22-beta.227

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/README.md CHANGED
@@ -1299,8 +1299,8 @@ app.use(
1299
1299
  Built-in profiles:
1300
1300
 
1301
1301
  - `meeting-recorder`: live latency, session health, provider fallback, routing contracts, reconnect proof, and barge-in interruption proof.
1302
- - `phone-agent`: carrier readiness, phone-agent smoke proof, campaign readiness proof, handoffs, provider routing contracts, audit/trace delivery health, and delivery runtime proof.
1303
- - `ops-heavy`: audit evidence, operator action history, audit/trace delivery health, delivery runtime proof, and deploy-gate support.
1302
+ - `phone-agent`: carrier readiness, phone-agent smoke proof, campaign readiness proof, handoffs, provider routing contracts, audit/trace delivery health, customer-owned observability export delivery history, and delivery runtime proof.
1303
+ - `ops-heavy`: audit evidence, operator action history, audit/trace delivery health, customer-owned observability export delivery history, delivery runtime proof, and deploy-gate support.
1304
1304
 
1305
1305
  Phone-agent fast path:
1306
1306
 
@@ -1316,6 +1316,11 @@ app.use(
1316
1316
  carriers: loadCarrierMatrixInputs,
1317
1317
  deliveryRuntime,
1318
1318
  explain: true,
1319
+ observabilityExportDeliveryHistory: {
1320
+ store: observabilityExportDeliveryReceipts,
1321
+ maxAgeMs: 60 * 60 * 1000,
1322
+ failOnStale: true
1323
+ },
1319
1324
  phoneAgentSmokes: async () => [await runPhoneSmoke()],
1320
1325
  providerRoutingContracts: async () => [await runProviderRoutingContract()],
1321
1326
  traceDeliveries: runtime.traceDeliveries
@@ -1334,6 +1339,9 @@ app.use(
1334
1339
  audit: runtime.audit,
1335
1340
  auditDeliveries: runtime.auditDeliveries,
1336
1341
  deliveryRuntime,
1342
+ observabilityExportDeliveryHistory: {
1343
+ store: observabilityExportDeliveryReceipts
1344
+ },
1337
1345
  traceDeliveries: runtime.traceDeliveries
1338
1346
  }),
1339
1347
  gate: {
@@ -2816,18 +2824,31 @@ The route helper exposes JSON at `/api/voice/observability-export`, an artifact
2816
2824
  Pass the same report into production readiness when export health should block deploys:
2817
2825
 
2818
2826
  ```ts
2827
+ const observabilityExportDeliveryReceipts =
2828
+ createVoiceFileObservabilityExportDeliveryReceiptStore({
2829
+ directory: '.voice-runtime/observability-export-receipts'
2830
+ });
2831
+
2819
2832
  app.use(
2820
2833
  createVoiceProductionReadinessRoutes({
2821
2834
  links: {
2822
- observabilityExport: '/voice/observability-export'
2835
+ observabilityExport: '/voice/observability-export',
2836
+ observabilityExportDeliveries:
2837
+ '/api/voice/observability-export/deliveries'
2823
2838
  },
2824
2839
  observabilityExport: exportReport,
2840
+ observabilityExportDeliveryHistory: {
2841
+ failOnMissing: true,
2842
+ failOnStale: true,
2843
+ maxAgeMs: 60 * 60 * 1000,
2844
+ store: observabilityExportDeliveryReceipts
2845
+ },
2825
2846
  store: runtimeStorage.traces
2826
2847
  })
2827
2848
  );
2828
2849
  ```
2829
2850
 
2830
- Readiness adds an `Observability export` check. Failed export deliveries fail the deploy gate; pending or missing evidence can warn through the export report instead of becoming an untracked dashboard task.
2851
+ Readiness adds `Observability export` and `Observability export delivery` checks. Failed export manifests fail the deploy gate, and delivery receipt history can fail or warn when no successful delivery exists or the latest success is older than your configured freshness window.
2831
2852
 
2832
2853
  ## Production Voice Ops
2833
2854