@qcobro/common 1.39.2 → 1.39.3
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/config.d.ts +7 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +53 -13
- package/dist/config.js.map +1 -1
- package/dist/schemas/agentEvaluations.d.ts +9 -9
- package/dist/schemas/agentEvaluations.d.ts.map +1 -1
- package/dist/schemas/agentEvaluations.js +7 -6
- package/dist/schemas/agentEvaluations.js.map +1 -1
- package/dist/schemas/agentTemplates.js +1 -1
- package/dist/schemas/contactLog.d.ts +106 -29
- package/dist/schemas/contactLog.d.ts.map +1 -1
- package/dist/schemas/contactLog.js +58 -32
- package/dist/schemas/contactLog.js.map +1 -1
- package/dist/schemas/email.d.ts +6 -6
- package/dist/schemas/email.js +6 -6
- package/dist/schemas/email.js.map +1 -1
- package/dist/schemas/voiceEvent.d.ts +1 -1
- package/dist/schemas/voiceEvent.js +1 -1
- package/dist/types/agentEvaluations.d.ts +1 -1
- package/dist/types/agentEvaluations.d.ts.map +1 -1
- package/dist/types/campaigns.d.ts +4 -4
- package/dist/types/campaigns.d.ts.map +1 -1
- package/dist/types/dispatch.d.ts +35 -0
- package/dist/types/dispatch.d.ts.map +1 -1
- package/dist/types/email.d.ts +2 -2
- package/dist/types/email.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/config.d.ts
CHANGED
|
@@ -518,8 +518,13 @@ export declare const qcobroConfigSchema: z.ZodObject<{
|
|
|
518
518
|
leaseTtlSeconds: z.ZodOptional<z.ZodNumber>;
|
|
519
519
|
eventsRetentionDays: z.ZodDefault<z.ZodNumber>;
|
|
520
520
|
consecutiveSystemErrorPauseThreshold: z.ZodDefault<z.ZodNumber>;
|
|
521
|
-
|
|
522
|
-
|
|
521
|
+
}, z.core.$strip>>;
|
|
522
|
+
voiceCompletionSweep: z.ZodPrefault<z.ZodObject<{
|
|
523
|
+
floorMinutes: z.ZodDefault<z.ZodNumber>;
|
|
524
|
+
graceSeconds: z.ZodDefault<z.ZodNumber>;
|
|
525
|
+
notOriginatedMinutes: z.ZodDefault<z.ZodNumber>;
|
|
526
|
+
backstopMinutes: z.ZodDefault<z.ZodNumber>;
|
|
527
|
+
intervalSeconds: z.ZodDefault<z.ZodNumber>;
|
|
523
528
|
}, z.core.$strip>>;
|
|
524
529
|
}, z.core.$strip>;
|
|
525
530
|
export type IdentityConfig = z.infer<typeof identityConfigSchema>;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -106,11 +106,11 @@ export const fonosterConfigSchema = z
|
|
|
106
106
|
* **Required whenever a `fonoster` section is present.** The section itself stays
|
|
107
107
|
* optional — omitting it disables the voice channels entirely. What is not allowed is
|
|
108
108
|
* the in-between: dispatching calls with no callback registered, which strands every
|
|
109
|
-
* gestión at `
|
|
109
|
+
* gestión at `delivery: DISPATCHED` forever with no way to learn what happened.
|
|
110
110
|
*/
|
|
111
111
|
webhookBaseUrl: z.string().url({
|
|
112
112
|
message: "fonoster.webhookBaseUrl is required. Voice dispatch without a callback URL strands " +
|
|
113
|
-
"every gestión at
|
|
113
|
+
"every gestión at delivery=DISPATCHED with no way to learn the call result. Set it to " +
|
|
114
114
|
"the apiserver's externally reachable base URL, or remove the whole `fonoster` " +
|
|
115
115
|
"section to disable the voice channels."
|
|
116
116
|
}),
|
|
@@ -245,12 +245,12 @@ export const twilioConfigSchema = z
|
|
|
245
245
|
* **Required whenever a `twilio` section is present.** The section itself stays
|
|
246
246
|
* optional — omitting it disables SMS entirely. Fire-and-forget SMS is no longer a
|
|
247
247
|
* supported configuration: without the callback every SMS gestión sits at
|
|
248
|
-
* `
|
|
248
|
+
* `delivery: DISPATCHED` permanently, which is indistinguishable from a message still
|
|
249
249
|
* in flight and makes delivery rate uncomputable.
|
|
250
250
|
*/
|
|
251
251
|
webhookBaseUrl: z.string().url({
|
|
252
252
|
message: "twilio.webhookBaseUrl is required. SMS dispatch without a status callback strands " +
|
|
253
|
-
"every gestión at
|
|
253
|
+
"every gestión at delivery=DISPATCHED, which is indistinguishable from a message still " +
|
|
254
254
|
"in flight. Set it to the apiserver's externally reachable base URL, or remove the " +
|
|
255
255
|
"whole `twilio` section to disable SMS."
|
|
256
256
|
})
|
|
@@ -609,17 +609,57 @@ export const qcobroConfigSchema = z.object({
|
|
|
609
609
|
* any success or `DELIVERY_REJECTED` failure. Sized to ride out a short blip without
|
|
610
610
|
* silently burning through every account's attempt cap during a real outage.
|
|
611
611
|
*/
|
|
612
|
-
consecutiveSystemErrorPauseThreshold: z.number().int().positive().default(10)
|
|
612
|
+
consecutiveSystemErrorPauseThreshold: z.number().int().positive().default(10)
|
|
613
|
+
})
|
|
614
|
+
.prefault({}),
|
|
615
|
+
/**
|
|
616
|
+
* Voice completion sweep. Finalizes a VOICE_AI/VOICE_PRERECORDED gestión stuck at
|
|
617
|
+
* `delivery: DISPATCHED` once its own completion signal (autopilot conversation.ended
|
|
618
|
+
* webhook / pre-recorded VoiceServer onCompleted) never arrives, by classifying it from
|
|
619
|
+
* Fonoster's call detail record (CDR) instead of guessing. Runs on its own interval,
|
|
620
|
+
* independent of `engine.enabled` — manual/ad-hoc voice dispatch needs this finalization
|
|
621
|
+
* too, and must not depend on the campaigns engine happening to be running.
|
|
622
|
+
*/
|
|
623
|
+
voiceCompletionSweep: z
|
|
624
|
+
.object({
|
|
625
|
+
/**
|
|
626
|
+
* Minutes a VOICE_AI/VOICE_PRERECORDED gestión may sit at `delivery: DISPATCHED`
|
|
627
|
+
* before the sweep starts consulting the CDR for it. Short on purpose: a CDR lookup
|
|
628
|
+
* is cheap, and the point is closing out a call that has genuinely ended, not
|
|
629
|
+
* waiting out a grace period — see `graceSeconds` below for that.
|
|
630
|
+
*/
|
|
631
|
+
floorMinutes: z.number().int().positive().default(2),
|
|
632
|
+
/**
|
|
633
|
+
* Seconds a terminal CDR must have been ended for before the sweep will finalize the
|
|
634
|
+
* gestión from it. The CDR write and the channel's own live completion signal (the
|
|
635
|
+
* autopilot webhook, the co-located VoiceServer) fire off the same event and race; the
|
|
636
|
+
* sweep's DB-guarded write is final for whichever side reaches it first, so without
|
|
637
|
+
* this grace a sweep pass that lands in that race window can permanently discard a
|
|
638
|
+
* real answered outcome. Measured from the CDR's own `endedAt`, not from dispatch or
|
|
639
|
+
* from when the sweep happens to poll.
|
|
640
|
+
*/
|
|
641
|
+
graceSeconds: z.number().int().nonnegative().default(60),
|
|
642
|
+
/**
|
|
643
|
+
* Minutes past dispatch before a gestión with no CDR at all (Fonoster's `NOT_FOUND`)
|
|
644
|
+
* is finalized `deliveryReason: NOT_ORIGINATED`. Deliberately longer than
|
|
645
|
+
* `floorMinutes`: that write is irreversible, and while there's no live signal to
|
|
646
|
+
* race against here, the CDR's start record can lag dispatch (Influx read lag, a
|
|
647
|
+
* queueing hiccup) — finalizing too early risks recording a call that is still just
|
|
648
|
+
* about to exist as one that never happened.
|
|
649
|
+
*/
|
|
650
|
+
notOriginatedMinutes: z.number().int().positive().default(5),
|
|
613
651
|
/**
|
|
614
|
-
* Minutes a
|
|
615
|
-
*
|
|
616
|
-
*
|
|
617
|
-
*
|
|
618
|
-
*
|
|
652
|
+
* Minutes past which a gestión whose CDR still carries no status (the provider lost
|
|
653
|
+
* the end-of-call record, or never writes one) is finalized anyway — `deliveryReason:
|
|
654
|
+
* OUTCOME_UNKNOWN`, or the CDR's own mapped reason if it has a terminal status but an
|
|
655
|
+
* unparseable `endedAt` — rather than polled forever. 70 is not a round default: the
|
|
656
|
+
* platform's dialplan sets `TIMEOUT(absolute)=3600`, so no channel survives past 60
|
|
657
|
+
* minutes — past that plus a margin, an uncleared CDR has genuinely lost its end
|
|
658
|
+
* record rather than still being a live call.
|
|
619
659
|
*/
|
|
620
|
-
|
|
621
|
-
/** How often the
|
|
622
|
-
|
|
660
|
+
backstopMinutes: z.number().int().positive().default(70),
|
|
661
|
+
/** How often the sweep itself runs. */
|
|
662
|
+
intervalSeconds: z.number().int().positive().default(120)
|
|
623
663
|
})
|
|
624
664
|
.prefault({})
|
|
625
665
|
});
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,7 +37,7 @@ export declare const evalExpectedToolSchema: z.ZodObject<{
|
|
|
37
37
|
}, z.core.$strip>;
|
|
38
38
|
/**
|
|
39
39
|
* A single turn's optional expectation. `tools` is graded for `VOICE_AI` only (relayed from
|
|
40
|
-
* Fonoster); `action`/`
|
|
40
|
+
* Fonoster); `action`/`outcome` are graded for `EMAIL`/`WHATSAPP` (the behavioral analog of
|
|
41
41
|
* an expected tool call — see design.md). `text` is graded for all three: VOICE_AI relays it
|
|
42
42
|
* to Fonoster's own `evaluateIntelligence` judge; EMAIL/WHATSAPP grade it in-process —
|
|
43
43
|
* `EXACT` is a literal match, `SIMILAR` runs QCobro's own judge (`TextSimilarityJudge`),
|
|
@@ -69,7 +69,7 @@ export declare const evalExpectedSchema: z.ZodObject<{
|
|
|
69
69
|
resolve: "resolve";
|
|
70
70
|
escalate: "escalate";
|
|
71
71
|
}>>;
|
|
72
|
-
|
|
72
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
73
73
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
74
74
|
NEW_TERMS: "NEW_TERMS";
|
|
75
75
|
PAID: "PAID";
|
|
@@ -102,7 +102,7 @@ export declare const evalTurnSchema: z.ZodObject<{
|
|
|
102
102
|
resolve: "resolve";
|
|
103
103
|
escalate: "escalate";
|
|
104
104
|
}>>;
|
|
105
|
-
|
|
105
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
106
106
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
107
107
|
NEW_TERMS: "NEW_TERMS";
|
|
108
108
|
PAID: "PAID";
|
|
@@ -155,7 +155,7 @@ export declare const evalScenarioSchema: z.ZodObject<{
|
|
|
155
155
|
resolve: "resolve";
|
|
156
156
|
escalate: "escalate";
|
|
157
157
|
}>>;
|
|
158
|
-
|
|
158
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
159
159
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
160
160
|
NEW_TERMS: "NEW_TERMS";
|
|
161
161
|
PAID: "PAID";
|
|
@@ -226,7 +226,7 @@ export declare const evalTemplateSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
226
226
|
resolve: "resolve";
|
|
227
227
|
escalate: "escalate";
|
|
228
228
|
}>>;
|
|
229
|
-
|
|
229
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
230
230
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
231
231
|
NEW_TERMS: "NEW_TERMS";
|
|
232
232
|
PAID: "PAID";
|
|
@@ -287,7 +287,7 @@ export declare const evalTemplateSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
287
287
|
resolve: "resolve";
|
|
288
288
|
escalate: "escalate";
|
|
289
289
|
}>>;
|
|
290
|
-
|
|
290
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
291
291
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
292
292
|
NEW_TERMS: "NEW_TERMS";
|
|
293
293
|
PAID: "PAID";
|
|
@@ -348,7 +348,7 @@ export declare const evalTemplateSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
348
348
|
resolve: "resolve";
|
|
349
349
|
escalate: "escalate";
|
|
350
350
|
}>>;
|
|
351
|
-
|
|
351
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
352
352
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
353
353
|
NEW_TERMS: "NEW_TERMS";
|
|
354
354
|
PAID: "PAID";
|
|
@@ -408,7 +408,7 @@ export declare const evaluateExistingTargetSchema: z.ZodObject<{
|
|
|
408
408
|
resolve: "resolve";
|
|
409
409
|
escalate: "escalate";
|
|
410
410
|
}>>;
|
|
411
|
-
|
|
411
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
412
412
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
413
413
|
NEW_TERMS: "NEW_TERMS";
|
|
414
414
|
PAID: "PAID";
|
|
@@ -469,7 +469,7 @@ export declare const evaluateInputSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
469
469
|
resolve: "resolve";
|
|
470
470
|
escalate: "escalate";
|
|
471
471
|
}>>;
|
|
472
|
-
|
|
472
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
473
473
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
474
474
|
NEW_TERMS: "NEW_TERMS";
|
|
475
475
|
PAID: "PAID";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentEvaluations.d.ts","sourceRoot":"","sources":["../../src/schemas/agentEvaluations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;iBAe5B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE,2FAA2F;AAC3F,eAAO,MAAM,sBAAsB;;;;;;iBAGjC,CAAC;AAEH,kGAAkG;AAClG,eAAO,MAAM,sBAAsB;;;iBAGjC,CAAC;AAEH;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"agentEvaluations.d.ts","sourceRoot":"","sources":["../../src/schemas/agentEvaluations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;iBAe5B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE,2FAA2F;AAC3F,eAAO,MAAM,sBAAsB;;;;;;iBAGjC,CAAC;AAEH,kGAAkG;AAClG,eAAO,MAAM,sBAAsB;;;iBAGjC,CAAC;AAEH;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAWpB,CAAC;AAEZ,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGzB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AA0BtD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAI7B,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEnE;8CAC8C;AAC9C,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGvC,CAAC;AAEH,iGAAiG;AACjG,eAAO,MAAM,wBAAwB;;iBAEnC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAG9B,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AACjF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACzE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;qFACqF;AACrF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;2BAGjC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;iBAGtC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;iBAGlC,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAkE,CAAC;AAClG,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { createAgentTemplateSchema } from "./agentTemplates.js";
|
|
3
|
-
import {
|
|
3
|
+
import { outcomeSchema } from "./contactLog.js";
|
|
4
4
|
/**
|
|
5
5
|
* The account context an eval scenario runs against — author-facing fields only
|
|
6
6
|
* (no id/portfolioId/timestamps). The apiserver fills those bookkeeping fields with
|
|
@@ -35,7 +35,7 @@ export const evalExpectedToolSchema = z.object({
|
|
|
35
35
|
});
|
|
36
36
|
/**
|
|
37
37
|
* A single turn's optional expectation. `tools` is graded for `VOICE_AI` only (relayed from
|
|
38
|
-
* Fonoster); `action`/`
|
|
38
|
+
* Fonoster); `action`/`outcome` are graded for `EMAIL`/`WHATSAPP` (the behavioral analog of
|
|
39
39
|
* an expected tool call — see design.md). `text` is graded for all three: VOICE_AI relays it
|
|
40
40
|
* to Fonoster's own `evaluateIntelligence` judge; EMAIL/WHATSAPP grade it in-process —
|
|
41
41
|
* `EXACT` is a literal match, `SIMILAR` runs QCobro's own judge (`TextSimilarityJudge`),
|
|
@@ -54,11 +54,12 @@ export const evalExpectedSchema = z
|
|
|
54
54
|
text: evalExpectedTextSchema.optional(),
|
|
55
55
|
tools: z.array(evalExpectedToolSchema).optional(),
|
|
56
56
|
action: z.enum(["reply", "ignore", "resolve", "escalate"]).optional(),
|
|
57
|
-
|
|
57
|
+
outcome: outcomeSchema.optional()
|
|
58
58
|
})
|
|
59
|
-
// Strict so
|
|
60
|
-
//
|
|
61
|
-
// every turn as passing - a
|
|
59
|
+
// Strict so an eval suite still using `resultado` (this field's name before the
|
|
60
|
+
// contact-log-axes English rename) fails loudly. A permissive object would strip that
|
|
61
|
+
// legacy key, leave the expectation unevaluated, and report every turn as passing - a
|
|
62
|
+
// silently green suite that checks nothing.
|
|
62
63
|
.strict();
|
|
63
64
|
export const evalTurnSchema = z.object({
|
|
64
65
|
input: z.string().min(1),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentEvaluations.js","sourceRoot":"","sources":["../../src/schemas/agentEvaluations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"agentEvaluations.js","sourceRoot":"","sources":["../../src/schemas/agentEvaluations.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ const baseFields = {
|
|
|
20
20
|
const digitSchema = z.string().regex(/^[0-9]$/, "must be a single digit 0-9");
|
|
21
21
|
/**
|
|
22
22
|
* Fields for the optional DTMF menu offered after a pre-recorded script plays: a "repeat"
|
|
23
|
-
* digit that replays it and an "opt-out" digit that ends the call and records `
|
|
23
|
+
* digit that replays it and an "opt-out" digit that ends the call and records `outcome:
|
|
24
24
|
* OPT_OUT` (see the `prerecorded-audio` and `account-contact-log` specs). Both pairs are
|
|
25
25
|
* independently optional; neither set means no menu is offered at all.
|
|
26
26
|
*/
|
|
@@ -1,22 +1,31 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
/**
|
|
3
3
|
* A gestión answers up to three independent questions, one per axis. They were previously
|
|
4
|
-
* flattened into a single
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* flattened into a single enum (then also confusingly called `outcome`, before the axis
|
|
5
|
+
* split introduced `resultado` — since renamed to today's `outcome` below, a coincidence of
|
|
6
|
+
* naming across two unrelated eras, not the same field), which is why no value meant one
|
|
7
|
+
* thing: `WRONG_NUMBER` described both a carrier rejection (a delivery failure) and a human
|
|
8
|
+
* saying "that's not me" (a delivery *success* carrying a valuable finding), and `OTHER`
|
|
9
|
+
* served as dispatch placeholder, escalation marker, and unclassifiable-conversation
|
|
10
|
+
* catch-all at once.
|
|
8
11
|
*/
|
|
9
12
|
/** Did the attempt reach the account holder's device or inbox? Never null. */
|
|
10
|
-
export declare const
|
|
13
|
+
export declare const deliverySchema: z.ZodEnum<{
|
|
11
14
|
DISPATCHED: "DISPATCHED";
|
|
12
15
|
DELIVERED: "DELIVERED";
|
|
13
16
|
FAILED: "FAILED";
|
|
14
17
|
}>;
|
|
15
|
-
export type
|
|
18
|
+
export type Delivery = z.infer<typeof deliverySchema>;
|
|
16
19
|
/**
|
|
17
|
-
* Why delivery failed. Set if and only if `
|
|
20
|
+
* Why delivery failed. Set if and only if `delivery` is `FAILED`. The values are chosen so a
|
|
18
21
|
* retry policy can branch on them: `NO_ANSWER` and `BUSY` are transient, `INVALID_DESTINATION`
|
|
19
22
|
* and `CHANNEL_UNSUPPORTED` are permanent for that contact point.
|
|
23
|
+
*
|
|
24
|
+
* `OUTCOME_UNKNOWN` and `NOT_ORIGINATED` are voice-only, both written by the voice
|
|
25
|
+
* completion sweep from Fonoster's call detail record rather than a live completion
|
|
26
|
+
* signal: `OUTCOME_UNKNOWN` when the call connected and cleared normally but QCobro's own
|
|
27
|
+
* completion signal never arrived, `NOT_ORIGINATED` when the provider has no record of the
|
|
28
|
+
* call at all. Both are transient — the account stays eligible for a retry.
|
|
20
29
|
*/
|
|
21
30
|
export declare const deliveryReasonSchema: z.ZodEnum<{
|
|
22
31
|
NO_ANSWER: "NO_ANSWER";
|
|
@@ -26,6 +35,8 @@ export declare const deliveryReasonSchema: z.ZodEnum<{
|
|
|
26
35
|
CHANNEL_UNSUPPORTED: "CHANNEL_UNSUPPORTED";
|
|
27
36
|
INVALID_DESTINATION: "INVALID_DESTINATION";
|
|
28
37
|
REJECTED: "REJECTED";
|
|
38
|
+
OUTCOME_UNKNOWN: "OUTCOME_UNKNOWN";
|
|
39
|
+
NOT_ORIGINATED: "NOT_ORIGINATED";
|
|
29
40
|
}>;
|
|
30
41
|
export type DeliveryReason = z.infer<typeof deliveryReasonSchema>;
|
|
31
42
|
/**
|
|
@@ -34,17 +45,17 @@ export type DeliveryReason = z.infer<typeof deliveryReasonSchema>;
|
|
|
34
45
|
* `VOICEMAIL` is reachable only on `VOICE_AI` and needs AMD before it can actually be
|
|
35
46
|
* detected (issue #83); it is defined now so the enum needs no second migration later.
|
|
36
47
|
*/
|
|
37
|
-
export declare const
|
|
48
|
+
export declare const pathSchema: z.ZodEnum<{
|
|
38
49
|
ENGAGED: "ENGAGED";
|
|
39
50
|
ABANDONED: "ABANDONED";
|
|
40
51
|
VOICEMAIL: "VOICEMAIL";
|
|
41
52
|
}>;
|
|
42
|
-
export type
|
|
53
|
+
export type Path = z.infer<typeof pathSchema>;
|
|
43
54
|
/**
|
|
44
55
|
* What came of the engagement. Nullable and single-valued; null is the common case and means
|
|
45
56
|
* nothing came of it, which is a real and frequent answer rather than missing data.
|
|
46
57
|
*/
|
|
47
|
-
export declare const
|
|
58
|
+
export declare const outcomeSchema: z.ZodEnum<{
|
|
48
59
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
49
60
|
NEW_TERMS: "NEW_TERMS";
|
|
50
61
|
PAID: "PAID";
|
|
@@ -56,15 +67,15 @@ export declare const resultadoSchema: z.ZodEnum<{
|
|
|
56
67
|
WRONG_PARTY: "WRONG_PARTY";
|
|
57
68
|
RESOLVED: "RESOLVED";
|
|
58
69
|
}>;
|
|
59
|
-
export type
|
|
70
|
+
export type Outcome = z.infer<typeof outcomeSchema>;
|
|
60
71
|
/**
|
|
61
|
-
* Channels with an inbound path, and therefore the only ones that can observe a `
|
|
62
|
-
* produce
|
|
72
|
+
* Channels with an inbound path, and therefore the only ones that can observe a `path` or
|
|
73
|
+
* produce an `outcome`. `SMS` has no inbound ingestion at all, so both axes are not merely
|
|
63
74
|
* usually-null there — they are unreachable. `VOICE_PRERECORDED` is the one exception: it has
|
|
64
75
|
* no inbound path of its own, but reaching call completion (the script played to the end,
|
|
65
76
|
* with or without an optional DTMF menu — see `prerecorded-audio`) always sets
|
|
66
|
-
* `
|
|
67
|
-
* other
|
|
77
|
+
* `path: ENGAGED`, and the opt-out digit specifically also sets `outcome: OPT_OUT` — no
|
|
78
|
+
* other path/outcome value is reachable. See {@link isAllowedOnPrerecorded} for that
|
|
68
79
|
* narrow carve-out.
|
|
69
80
|
*/
|
|
70
81
|
export declare const CHANNEL_CAN_ENGAGE: readonly ["VOICE_AI", "EMAIL", "WHATSAPP"];
|
|
@@ -91,17 +102,6 @@ export declare const paymentPromiseStatusSchema: z.ZodEnum<{
|
|
|
91
102
|
CANCELLED: "CANCELLED";
|
|
92
103
|
}>;
|
|
93
104
|
export type PaymentPromiseStatus = z.infer<typeof paymentPromiseStatusSchema>;
|
|
94
|
-
/**
|
|
95
|
-
* The axes are independent, but two combinations are incoherent rather than merely unusual,
|
|
96
|
-
* so they are rejected before the write rather than stored and worked around by every reader:
|
|
97
|
-
*
|
|
98
|
-
* - a failure reason without a failure (or a failure without a reason) — the reason is the
|
|
99
|
-
* only thing that makes `FAILED` actionable;
|
|
100
|
-
* - an interaction recorded on a channel that cannot observe one.
|
|
101
|
-
*
|
|
102
|
-
* Note there is deliberately no rule tying `resultado` to `entrega`: a `FAILED` delivery can
|
|
103
|
-
* still carry a `resultado` when someone answers and hangs up on a wrong-party identification.
|
|
104
|
-
*/
|
|
105
105
|
export declare const createContactLogSchema: z.ZodObject<{
|
|
106
106
|
portfolioAccountId: z.ZodString;
|
|
107
107
|
campaignId: z.ZodOptional<z.ZodString>;
|
|
@@ -116,7 +116,7 @@ export declare const createContactLogSchema: z.ZodObject<{
|
|
|
116
116
|
}>;
|
|
117
117
|
contactedAt: z.ZodString;
|
|
118
118
|
durationSeconds: z.ZodOptional<z.ZodNumber>;
|
|
119
|
-
|
|
119
|
+
delivery: z.ZodDefault<z.ZodEnum<{
|
|
120
120
|
DISPATCHED: "DISPATCHED";
|
|
121
121
|
DELIVERED: "DELIVERED";
|
|
122
122
|
FAILED: "FAILED";
|
|
@@ -129,13 +129,15 @@ export declare const createContactLogSchema: z.ZodObject<{
|
|
|
129
129
|
CHANNEL_UNSUPPORTED: "CHANNEL_UNSUPPORTED";
|
|
130
130
|
INVALID_DESTINATION: "INVALID_DESTINATION";
|
|
131
131
|
REJECTED: "REJECTED";
|
|
132
|
+
OUTCOME_UNKNOWN: "OUTCOME_UNKNOWN";
|
|
133
|
+
NOT_ORIGINATED: "NOT_ORIGINATED";
|
|
132
134
|
}>>;
|
|
133
|
-
|
|
135
|
+
path: z.ZodOptional<z.ZodEnum<{
|
|
134
136
|
ENGAGED: "ENGAGED";
|
|
135
137
|
ABANDONED: "ABANDONED";
|
|
136
138
|
VOICEMAIL: "VOICEMAIL";
|
|
137
139
|
}>>;
|
|
138
|
-
|
|
140
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
139
141
|
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
140
142
|
NEW_TERMS: "NEW_TERMS";
|
|
141
143
|
PAID: "PAID";
|
|
@@ -165,6 +167,81 @@ export declare const createContactLogSchema: z.ZodObject<{
|
|
|
165
167
|
providerMessageId: z.ZodOptional<z.ZodString>;
|
|
166
168
|
}, z.core.$strip>;
|
|
167
169
|
export type CreateContactLogInput = z.infer<typeof createContactLogSchema>;
|
|
170
|
+
/**
|
|
171
|
+
* REST-facing variant of {@link createContactLogSchema}. `.strict()` rejects any key that
|
|
172
|
+
* isn't one of the known fields — named in a `400` — rather than the base schema's default
|
|
173
|
+
* of silently stripping it. Internal callers (tRPC, the campaigns engine) are TypeScript-typed
|
|
174
|
+
* against `CreateContactLogInput` already, so a stray key there is a compile error, not
|
|
175
|
+
* something worth defending against at runtime; `POST /api/contact-logs` is the one boundary
|
|
176
|
+
* an integrator outside this codebase posts to directly. It exists specifically to catch an
|
|
177
|
+
* integrator still posting the pre-rename Spanish field names (`entrega`/`camino`/`resultado`)
|
|
178
|
+
* — silently stripped by the lenient schema, which would write a `DISPATCHED` row with no
|
|
179
|
+
* outcome and still answer `201`.
|
|
180
|
+
*/
|
|
181
|
+
export declare const createContactLogSchemaStrict: z.ZodObject<{
|
|
182
|
+
portfolioAccountId: z.ZodString;
|
|
183
|
+
campaignId: z.ZodOptional<z.ZodString>;
|
|
184
|
+
agentTemplateId: z.ZodOptional<z.ZodString>;
|
|
185
|
+
paymentPromiseId: z.ZodOptional<z.ZodString>;
|
|
186
|
+
agentType: z.ZodEnum<{
|
|
187
|
+
SMS: "SMS";
|
|
188
|
+
VOICE_PRERECORDED: "VOICE_PRERECORDED";
|
|
189
|
+
VOICE_AI: "VOICE_AI";
|
|
190
|
+
EMAIL: "EMAIL";
|
|
191
|
+
WHATSAPP: "WHATSAPP";
|
|
192
|
+
}>;
|
|
193
|
+
contactedAt: z.ZodString;
|
|
194
|
+
durationSeconds: z.ZodOptional<z.ZodNumber>;
|
|
195
|
+
delivery: z.ZodDefault<z.ZodEnum<{
|
|
196
|
+
DISPATCHED: "DISPATCHED";
|
|
197
|
+
DELIVERED: "DELIVERED";
|
|
198
|
+
FAILED: "FAILED";
|
|
199
|
+
}>>;
|
|
200
|
+
deliveryReason: z.ZodOptional<z.ZodEnum<{
|
|
201
|
+
NO_ANSWER: "NO_ANSWER";
|
|
202
|
+
BUSY: "BUSY";
|
|
203
|
+
UNREACHABLE: "UNREACHABLE";
|
|
204
|
+
PROVIDER_ERROR: "PROVIDER_ERROR";
|
|
205
|
+
CHANNEL_UNSUPPORTED: "CHANNEL_UNSUPPORTED";
|
|
206
|
+
INVALID_DESTINATION: "INVALID_DESTINATION";
|
|
207
|
+
REJECTED: "REJECTED";
|
|
208
|
+
OUTCOME_UNKNOWN: "OUTCOME_UNKNOWN";
|
|
209
|
+
NOT_ORIGINATED: "NOT_ORIGINATED";
|
|
210
|
+
}>>;
|
|
211
|
+
path: z.ZodOptional<z.ZodEnum<{
|
|
212
|
+
ENGAGED: "ENGAGED";
|
|
213
|
+
ABANDONED: "ABANDONED";
|
|
214
|
+
VOICEMAIL: "VOICEMAIL";
|
|
215
|
+
}>>;
|
|
216
|
+
outcome: z.ZodOptional<z.ZodEnum<{
|
|
217
|
+
PAYMENT_PROMISE: "PAYMENT_PROMISE";
|
|
218
|
+
NEW_TERMS: "NEW_TERMS";
|
|
219
|
+
PAID: "PAID";
|
|
220
|
+
CALLBACK_REQUESTED: "CALLBACK_REQUESTED";
|
|
221
|
+
DISPUTE_RAISED: "DISPUTE_RAISED";
|
|
222
|
+
INFORMATION_REQUEST: "INFORMATION_REQUEST";
|
|
223
|
+
REFUSED: "REFUSED";
|
|
224
|
+
OPT_OUT: "OPT_OUT";
|
|
225
|
+
WRONG_PARTY: "WRONG_PARTY";
|
|
226
|
+
RESOLVED: "RESOLVED";
|
|
227
|
+
}>>;
|
|
228
|
+
notes: z.ZodOptional<z.ZodString>;
|
|
229
|
+
debtAmountSnapshot: z.ZodOptional<z.ZodNumber>;
|
|
230
|
+
aiSummary: z.ZodOptional<z.ZodString>;
|
|
231
|
+
aiSentiment: z.ZodOptional<z.ZodEnum<{
|
|
232
|
+
POSITIVE: "POSITIVE";
|
|
233
|
+
NEUTRAL: "NEUTRAL";
|
|
234
|
+
NEGATIVE: "NEGATIVE";
|
|
235
|
+
HOSTILE: "HOSTILE";
|
|
236
|
+
}>>;
|
|
237
|
+
aiDebtReason: z.ZodOptional<z.ZodString>;
|
|
238
|
+
aiResult: z.ZodOptional<z.ZodString>;
|
|
239
|
+
aiNextStep: z.ZodOptional<z.ZodString>;
|
|
240
|
+
intentMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
241
|
+
channelData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
242
|
+
providerRef: z.ZodOptional<z.ZodString>;
|
|
243
|
+
providerMessageId: z.ZodOptional<z.ZodString>;
|
|
244
|
+
}, z.core.$strict>;
|
|
168
245
|
/**
|
|
169
246
|
* Input to reserve a campaign attempt before the provider call (the engine's
|
|
170
247
|
* at-most-once step). Increments the attempt counters; writes no gestión.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contactLog.d.ts","sourceRoot":"","sources":["../../src/schemas/contactLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB
|
|
1
|
+
{"version":3,"file":"contactLog.d.ts","sourceRoot":"","sources":["../../src/schemas/contactLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;;;GASG;AAEH,8EAA8E;AAC9E,eAAO,MAAM,cAAc;;;;EAAgD,CAAC;AAC5E,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;EAU/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;EAAgD,CAAC;AACxE,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;EAWxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,4CAA6C,CAAC;AAE7E,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAiBD,eAAO,MAAM,iBAAiB;;;;;EAAyD,CAAC;AACxF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B;;;;;EAAqD,CAAC;AAC7F,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAyF9E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA2D,CAAC;AAC/F,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE3E;;;;;;;;;;GAUG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEL,CAAC;AAErC;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;iBAK/B,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,0BAA0B;;;;;;iBAGrC,CAAC;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAEnF;;;GAGG;AACH,eAAO,MAAM,4BAA4B;;;iBAGvC,CAAC;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
|
|
@@ -2,17 +2,26 @@ import { z } from "zod";
|
|
|
2
2
|
import { agentTypeSchema } from "./agentTemplates.js";
|
|
3
3
|
/**
|
|
4
4
|
* A gestión answers up to three independent questions, one per axis. They were previously
|
|
5
|
-
* flattened into a single
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
5
|
+
* flattened into a single enum (then also confusingly called `outcome`, before the axis
|
|
6
|
+
* split introduced `resultado` — since renamed to today's `outcome` below, a coincidence of
|
|
7
|
+
* naming across two unrelated eras, not the same field), which is why no value meant one
|
|
8
|
+
* thing: `WRONG_NUMBER` described both a carrier rejection (a delivery failure) and a human
|
|
9
|
+
* saying "that's not me" (a delivery *success* carrying a valuable finding), and `OTHER`
|
|
10
|
+
* served as dispatch placeholder, escalation marker, and unclassifiable-conversation
|
|
11
|
+
* catch-all at once.
|
|
9
12
|
*/
|
|
10
13
|
/** Did the attempt reach the account holder's device or inbox? Never null. */
|
|
11
|
-
export const
|
|
14
|
+
export const deliverySchema = z.enum(["DISPATCHED", "DELIVERED", "FAILED"]);
|
|
12
15
|
/**
|
|
13
|
-
* Why delivery failed. Set if and only if `
|
|
16
|
+
* Why delivery failed. Set if and only if `delivery` is `FAILED`. The values are chosen so a
|
|
14
17
|
* retry policy can branch on them: `NO_ANSWER` and `BUSY` are transient, `INVALID_DESTINATION`
|
|
15
18
|
* and `CHANNEL_UNSUPPORTED` are permanent for that contact point.
|
|
19
|
+
*
|
|
20
|
+
* `OUTCOME_UNKNOWN` and `NOT_ORIGINATED` are voice-only, both written by the voice
|
|
21
|
+
* completion sweep from Fonoster's call detail record rather than a live completion
|
|
22
|
+
* signal: `OUTCOME_UNKNOWN` when the call connected and cleared normally but QCobro's own
|
|
23
|
+
* completion signal never arrived, `NOT_ORIGINATED` when the provider has no record of the
|
|
24
|
+
* call at all. Both are transient — the account stays eligible for a retry.
|
|
16
25
|
*/
|
|
17
26
|
export const deliveryReasonSchema = z.enum([
|
|
18
27
|
"NO_ANSWER",
|
|
@@ -21,7 +30,9 @@ export const deliveryReasonSchema = z.enum([
|
|
|
21
30
|
"PROVIDER_ERROR",
|
|
22
31
|
"CHANNEL_UNSUPPORTED",
|
|
23
32
|
"INVALID_DESTINATION",
|
|
24
|
-
"REJECTED"
|
|
33
|
+
"REJECTED",
|
|
34
|
+
"OUTCOME_UNKNOWN",
|
|
35
|
+
"NOT_ORIGINATED"
|
|
25
36
|
]);
|
|
26
37
|
/**
|
|
27
38
|
* What path the interaction took once delivered. Null when no interaction was observed —
|
|
@@ -29,12 +40,12 @@ export const deliveryReasonSchema = z.enum([
|
|
|
29
40
|
* `VOICEMAIL` is reachable only on `VOICE_AI` and needs AMD before it can actually be
|
|
30
41
|
* detected (issue #83); it is defined now so the enum needs no second migration later.
|
|
31
42
|
*/
|
|
32
|
-
export const
|
|
43
|
+
export const pathSchema = z.enum(["ENGAGED", "ABANDONED", "VOICEMAIL"]);
|
|
33
44
|
/**
|
|
34
45
|
* What came of the engagement. Nullable and single-valued; null is the common case and means
|
|
35
46
|
* nothing came of it, which is a real and frequent answer rather than missing data.
|
|
36
47
|
*/
|
|
37
|
-
export const
|
|
48
|
+
export const outcomeSchema = z.enum([
|
|
38
49
|
"PAYMENT_PROMISE",
|
|
39
50
|
"NEW_TERMS",
|
|
40
51
|
"PAID",
|
|
@@ -47,13 +58,13 @@ export const resultadoSchema = z.enum([
|
|
|
47
58
|
"RESOLVED"
|
|
48
59
|
]);
|
|
49
60
|
/**
|
|
50
|
-
* Channels with an inbound path, and therefore the only ones that can observe a `
|
|
51
|
-
* produce
|
|
61
|
+
* Channels with an inbound path, and therefore the only ones that can observe a `path` or
|
|
62
|
+
* produce an `outcome`. `SMS` has no inbound ingestion at all, so both axes are not merely
|
|
52
63
|
* usually-null there — they are unreachable. `VOICE_PRERECORDED` is the one exception: it has
|
|
53
64
|
* no inbound path of its own, but reaching call completion (the script played to the end,
|
|
54
65
|
* with or without an optional DTMF menu — see `prerecorded-audio`) always sets
|
|
55
|
-
* `
|
|
56
|
-
* other
|
|
66
|
+
* `path: ENGAGED`, and the opt-out digit specifically also sets `outcome: OPT_OUT` — no
|
|
67
|
+
* other path/outcome value is reachable. See {@link isAllowedOnPrerecorded} for that
|
|
57
68
|
* narrow carve-out.
|
|
58
69
|
*/
|
|
59
70
|
export const CHANNEL_CAN_ENGAGE = ["VOICE_AI", "EMAIL", "WHATSAPP"];
|
|
@@ -61,18 +72,18 @@ export const CHANNEL_CAN_ENGAGE = ["VOICE_AI", "EMAIL", "WHATSAPP"];
|
|
|
61
72
|
export function channelCanEngage(agentType) {
|
|
62
73
|
return CHANNEL_CAN_ENGAGE.includes(agentType);
|
|
63
74
|
}
|
|
64
|
-
const
|
|
65
|
-
const
|
|
75
|
+
const PRERECORDED_ALLOWED_PATH = new Set(["ENGAGED"]);
|
|
76
|
+
const PRERECORDED_ALLOWED_OUTCOME = new Set(["OPT_OUT"]);
|
|
66
77
|
/**
|
|
67
78
|
* `VOICE_PRERECORDED`'s one carve-out from {@link channelCanEngage}: call completion sets
|
|
68
|
-
* `
|
|
69
|
-
* nothing else. `ABANDONED`/`VOICEMAIL` and every other `
|
|
79
|
+
* `path: ENGAGED`, and the opt-out digit specifically also sets `outcome: OPT_OUT` — and
|
|
80
|
+
* nothing else. `ABANDONED`/`VOICEMAIL` and every other `outcome` value stay unreachable,
|
|
70
81
|
* exactly as for any other one-way channel.
|
|
71
82
|
*/
|
|
72
83
|
function isAllowedOnPrerecorded(field, value) {
|
|
73
|
-
return field === "
|
|
74
|
-
?
|
|
75
|
-
:
|
|
84
|
+
return field === "path"
|
|
85
|
+
? PRERECORDED_ALLOWED_PATH.has(value)
|
|
86
|
+
: PRERECORDED_ALLOWED_OUTCOME.has(value);
|
|
76
87
|
}
|
|
77
88
|
export const aiSentimentSchema = z.enum(["POSITIVE", "NEUTRAL", "NEGATIVE", "HOSTILE"]);
|
|
78
89
|
/**
|
|
@@ -94,10 +105,10 @@ const createContactLogFields = z.object({
|
|
|
94
105
|
contactedAt: z.string().min(1),
|
|
95
106
|
durationSeconds: z.number().int().nonnegative().optional(),
|
|
96
107
|
/** Defaults to the dispatch-time state, so a dispatch call site need not spell it out. */
|
|
97
|
-
|
|
108
|
+
delivery: deliverySchema.default("DISPATCHED"),
|
|
98
109
|
deliveryReason: deliveryReasonSchema.optional(),
|
|
99
|
-
|
|
100
|
-
|
|
110
|
+
path: pathSchema.optional(),
|
|
111
|
+
outcome: outcomeSchema.optional(),
|
|
101
112
|
notes: z.string().optional(),
|
|
102
113
|
debtAmountSnapshot: z.number().nonnegative().optional(),
|
|
103
114
|
aiSummary: z.string().optional(),
|
|
@@ -130,26 +141,26 @@ const createContactLogFields = z.object({
|
|
|
130
141
|
* only thing that makes `FAILED` actionable;
|
|
131
142
|
* - an interaction recorded on a channel that cannot observe one.
|
|
132
143
|
*
|
|
133
|
-
* Note there is deliberately no rule tying `
|
|
134
|
-
* still carry
|
|
144
|
+
* Note there is deliberately no rule tying `outcome` to `delivery`: a `FAILED` delivery can
|
|
145
|
+
* still carry an `outcome` when someone answers and hangs up on a wrong-party identification.
|
|
135
146
|
*/
|
|
136
|
-
|
|
137
|
-
if (value.
|
|
147
|
+
function refineContactLogAxes(value, ctx) {
|
|
148
|
+
if (value.delivery === "FAILED" && !value.deliveryReason) {
|
|
138
149
|
ctx.addIssue({
|
|
139
150
|
code: "custom",
|
|
140
151
|
path: ["deliveryReason"],
|
|
141
|
-
message: "deliveryReason is required when
|
|
152
|
+
message: "deliveryReason is required when delivery is FAILED"
|
|
142
153
|
});
|
|
143
154
|
}
|
|
144
|
-
if (value.
|
|
155
|
+
if (value.delivery !== "FAILED" && value.deliveryReason) {
|
|
145
156
|
ctx.addIssue({
|
|
146
157
|
code: "custom",
|
|
147
158
|
path: ["deliveryReason"],
|
|
148
|
-
message: `deliveryReason is only valid when
|
|
159
|
+
message: `deliveryReason is only valid when delivery is FAILED (got ${value.delivery})`
|
|
149
160
|
});
|
|
150
161
|
}
|
|
151
162
|
if (!channelCanEngage(value.agentType)) {
|
|
152
|
-
for (const field of ["
|
|
163
|
+
for (const field of ["path", "outcome"]) {
|
|
153
164
|
const fieldValue = value[field];
|
|
154
165
|
if (!fieldValue)
|
|
155
166
|
continue;
|
|
@@ -163,7 +174,22 @@ export const createContactLogSchema = createContactLogFields.superRefine((value,
|
|
|
163
174
|
});
|
|
164
175
|
}
|
|
165
176
|
}
|
|
166
|
-
}
|
|
177
|
+
}
|
|
178
|
+
export const createContactLogSchema = createContactLogFields.superRefine(refineContactLogAxes);
|
|
179
|
+
/**
|
|
180
|
+
* REST-facing variant of {@link createContactLogSchema}. `.strict()` rejects any key that
|
|
181
|
+
* isn't one of the known fields — named in a `400` — rather than the base schema's default
|
|
182
|
+
* of silently stripping it. Internal callers (tRPC, the campaigns engine) are TypeScript-typed
|
|
183
|
+
* against `CreateContactLogInput` already, so a stray key there is a compile error, not
|
|
184
|
+
* something worth defending against at runtime; `POST /api/contact-logs` is the one boundary
|
|
185
|
+
* an integrator outside this codebase posts to directly. It exists specifically to catch an
|
|
186
|
+
* integrator still posting the pre-rename Spanish field names (`entrega`/`camino`/`resultado`)
|
|
187
|
+
* — silently stripped by the lenient schema, which would write a `DISPATCHED` row with no
|
|
188
|
+
* outcome and still answer `201`.
|
|
189
|
+
*/
|
|
190
|
+
export const createContactLogSchemaStrict = createContactLogFields
|
|
191
|
+
.strict()
|
|
192
|
+
.superRefine(refineContactLogAxes);
|
|
167
193
|
/**
|
|
168
194
|
* Input to reserve a campaign attempt before the provider call (the engine's
|
|
169
195
|
* at-most-once step). Increments the attempt counters; writes no gestión.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contactLog.js","sourceRoot":"","sources":["../../src/schemas/contactLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD
|
|
1
|
+
{"version":3,"file":"contactLog.js","sourceRoot":"","sources":["../../src/schemas/contactLog.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas/email.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
/**
|
|
3
3
|
* The structured decision the EMAIL/WHATSAPP autopilots return for an inbound reply.
|
|
4
|
-
* Validated so a model can't drive the loop with malformed output. `
|
|
5
|
-
* contact-log
|
|
4
|
+
* Validated so a model can't drive the loop with malformed output. `outcome` mirrors the
|
|
5
|
+
* contact-log outcome axis; `objective` carries promise details when the reply implies one.
|
|
6
6
|
*
|
|
7
|
-
* `replyBody`/`
|
|
7
|
+
* `replyBody`/`outcome`/`objective` use `.nullish()`, not `.optional()`: Gemini's
|
|
8
8
|
* `responseMimeType: "application/json"` mode fills every key it considered rather than
|
|
9
|
-
* omitting the ones that don't apply, so a plain reply with no
|
|
10
|
-
* `"
|
|
9
|
+
* omitting the ones that don't apply, so a plain reply with no outcome comes back as
|
|
10
|
+
* `"outcome": null` (not an absent key) — `.optional()` alone rejects that.
|
|
11
11
|
*/
|
|
12
12
|
export declare const emailAutopilotDecisionSchema: z.ZodObject<{
|
|
13
13
|
action: z.ZodEnum<{
|
|
@@ -17,7 +17,7 @@ export declare const emailAutopilotDecisionSchema: z.ZodObject<{
|
|
|
17
17
|
escalate: "escalate";
|
|
18
18
|
}>;
|
|
19
19
|
replyBody: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
20
|
-
|
|
20
|
+
outcome: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
21
21
|
objective: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
22
22
|
amount: z.ZodOptional<z.ZodNumber>;
|
|
23
23
|
dueDate: z.ZodOptional<z.ZodString>;
|
package/dist/schemas/email.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
/**
|
|
3
3
|
* The structured decision the EMAIL/WHATSAPP autopilots return for an inbound reply.
|
|
4
|
-
* Validated so a model can't drive the loop with malformed output. `
|
|
5
|
-
* contact-log
|
|
4
|
+
* Validated so a model can't drive the loop with malformed output. `outcome` mirrors the
|
|
5
|
+
* contact-log outcome axis; `objective` carries promise details when the reply implies one.
|
|
6
6
|
*
|
|
7
|
-
* `replyBody`/`
|
|
7
|
+
* `replyBody`/`outcome`/`objective` use `.nullish()`, not `.optional()`: Gemini's
|
|
8
8
|
* `responseMimeType: "application/json"` mode fills every key it considered rather than
|
|
9
|
-
* omitting the ones that don't apply, so a plain reply with no
|
|
10
|
-
* `"
|
|
9
|
+
* omitting the ones that don't apply, so a plain reply with no outcome comes back as
|
|
10
|
+
* `"outcome": null` (not an absent key) — `.optional()` alone rejects that.
|
|
11
11
|
*/
|
|
12
12
|
export const emailAutopilotDecisionSchema = z.object({
|
|
13
13
|
action: z.enum(["reply", "ignore", "resolve", "escalate"]),
|
|
14
14
|
replyBody: z.string().nullish(),
|
|
15
|
-
|
|
15
|
+
outcome: z.string().nullish(),
|
|
16
16
|
objective: z
|
|
17
17
|
.object({
|
|
18
18
|
amount: z.number().optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/schemas/email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;IAC/B,
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/schemas/email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;IAC7B,SAAS,EAAE,CAAC;SACT,MAAM,CAAC;QACN,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC5B,CAAC;SACD,OAAO,EAAE;CACb,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1C,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACrD,CAAC,CAAC"}
|
|
@@ -35,7 +35,7 @@ export type VoiceConversationEvent = z.infer<typeof voiceConversationEventSchema
|
|
|
35
35
|
* `answered` says the callee picked up, `scriptCompleted` says the message actually
|
|
36
36
|
* played out to the end. A call can be answered and play nothing — a network element
|
|
37
37
|
* that answers and clears immediately, or a session that dies mid-verb — and only the
|
|
38
|
-
* pair distinguishes that from a real delivery. `
|
|
38
|
+
* pair distinguishes that from a real delivery. `delivery` is DELIVERED only when both
|
|
39
39
|
* hold; see `recordPrerecordedOutcome`.
|
|
40
40
|
*
|
|
41
41
|
* `scriptCompleted` is never a claim that a human listened, only that we played it.
|
|
@@ -27,7 +27,7 @@ export const voiceConversationEventSchema = z.object({
|
|
|
27
27
|
* `answered` says the callee picked up, `scriptCompleted` says the message actually
|
|
28
28
|
* played out to the end. A call can be answered and play nothing — a network element
|
|
29
29
|
* that answers and clears immediately, or a session that dies mid-verb — and only the
|
|
30
|
-
* pair distinguishes that from a real delivery. `
|
|
30
|
+
* pair distinguishes that from a real delivery. `delivery` is DELIVERED only when both
|
|
31
31
|
* hold; see `recordPrerecordedOutcome`.
|
|
32
32
|
*
|
|
33
33
|
* `scriptCompleted` is never a claim that a human listened, only that we played it.
|
|
@@ -22,7 +22,7 @@ export interface EvalStepResult {
|
|
|
22
22
|
}[];
|
|
23
23
|
/** EMAIL/WHATSAPP (the autopilot decision actually taken). */
|
|
24
24
|
action?: EmailAutopilotAction;
|
|
25
|
-
|
|
25
|
+
outcome?: string | null;
|
|
26
26
|
}
|
|
27
27
|
export interface EvalScenarioSummary {
|
|
28
28
|
ref: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentEvaluations.d.ts","sourceRoot":"","sources":["../../src/types/agentEvaluations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;yFACqF;IACrF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,eAAe,CAAC,EAAE;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,OAAO,CAAC;KACjB,EAAE,CAAC;IACJ,8DAA8D;IAC9D,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,
|
|
1
|
+
{"version":3,"file":"agentEvaluations.d.ts","sourceRoot":"","sources":["../../src/types/agentEvaluations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AgentType } from "../schemas/agentTemplates.js";
|
|
2
2
|
import type { CampaignStatus, CampaignPauseReason, CreateCampaignInput, UpdateCampaignInput, UpdateCampaignStatusInput, DeleteCampaignInput } from "../schemas/campaigns.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { Delivery, DeliveryReason, Path, Outcome, PaymentPromiseStatus, CreateContactLogInput, UpdatePaymentPromiseInput, FollowUpPaymentPromiseInput } from "../schemas/contactLog.js";
|
|
4
4
|
export interface CampaignRecord {
|
|
5
5
|
id: string;
|
|
6
6
|
workspaceRef: string;
|
|
@@ -39,10 +39,10 @@ export interface AccountContactLogRecord {
|
|
|
39
39
|
agentType: AgentType;
|
|
40
40
|
contactedAt: Date;
|
|
41
41
|
durationSeconds: number | null;
|
|
42
|
-
|
|
42
|
+
delivery: Delivery;
|
|
43
43
|
deliveryReason: DeliveryReason | null;
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
path: Path | null;
|
|
45
|
+
outcome: Outcome | null;
|
|
46
46
|
notes: string | null;
|
|
47
47
|
debtAmountSnapshot: number | null;
|
|
48
48
|
aiSummary: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"campaigns.d.ts","sourceRoot":"","sources":["../../src/types/campaigns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"campaigns.d.ts","sourceRoot":"","sources":["../../src/types/campaigns.ts"],"names":[],"mappings":"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"}
|
package/dist/types/dispatch.d.ts
CHANGED
|
@@ -36,11 +36,46 @@ export interface OutboundCallInput {
|
|
|
36
36
|
*/
|
|
37
37
|
metadata: Record<string, string>;
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Fonoster's per-call clearing status (the call detail record, or CDR), consulted only once
|
|
41
|
+
* a gestión has sat at `delivery: DISPATCHED` past the voice completion sweep's floor.
|
|
42
|
+
* Mirrors `@fonoster/types`' `CallStatus`, plus `UNKNOWN`: the protobuf zero-value the SDK's
|
|
43
|
+
* own type declarations omit, but that Fonoster still returns for a call that has not
|
|
44
|
+
* cleared yet (only the start portion of the CDR has been written).
|
|
45
|
+
*/
|
|
46
|
+
export type VoiceCallStatus = "NORMAL_CLEARING" | "CALL_REJECTED" | "UNALLOCATED" | "NO_USER_RESPONSE" | "NO_ROUTE_DESTINATION" | "NO_ANSWER" | "USER_BUSY" | "NOT_ACCEPTABLE_HERE" | "SERVICE_UNAVAILABLE" | "INVALID_NUMBER_FORMAT" | "UNKNOWN";
|
|
47
|
+
/**
|
|
48
|
+
* Result of looking up a call's CDR by provider ref. `found: false` is Fonoster's own
|
|
49
|
+
* `NOT_FOUND` (the call never originated at all) — surfaced as a typed result rather than a
|
|
50
|
+
* thrown error, since it is an expected, distinct outcome the sweep branches on.
|
|
51
|
+
*
|
|
52
|
+
* `setupToClearSeconds` is the CDR's own duration, measured from call setup and therefore
|
|
53
|
+
* including ring time. It is informational only: a gestión's own `durationSeconds` is the
|
|
54
|
+
* answered duration recorded by the channel's live completion signal, and must never be
|
|
55
|
+
* overwritten by this figure.
|
|
56
|
+
*
|
|
57
|
+
* `endedAt` is when the CDR itself says the call cleared — `null` when the CDR doesn't carry
|
|
58
|
+
* one yet (or a valid one at all), which the sweep treats as "not resolved" rather than
|
|
59
|
+
* guessing. It exists so the sweep can wait out a grace period from the call's real end
|
|
60
|
+
* rather than from when it happened to poll: the CDR write and the channel's own live
|
|
61
|
+
* completion signal (the autopilot webhook, the co-located VoiceServer) are triggered by the
|
|
62
|
+
* same event and race, and only `endedAt` says how far into that race the sweep actually is.
|
|
63
|
+
*/
|
|
64
|
+
export type VoiceCallLookupResult = {
|
|
65
|
+
found: true;
|
|
66
|
+
status: VoiceCallStatus;
|
|
67
|
+
setupToClearSeconds: number;
|
|
68
|
+
endedAt: Date | null;
|
|
69
|
+
} | {
|
|
70
|
+
found: false;
|
|
71
|
+
};
|
|
39
72
|
export interface OutboundCallClient {
|
|
40
73
|
/** Originate a call; resolves with the provider call ref. */
|
|
41
74
|
createCall(input: OutboundCallInput): Promise<{
|
|
42
75
|
ref: string;
|
|
43
76
|
}>;
|
|
77
|
+
/** Look up a call's CDR by provider ref (the voice completion sweep's only consumer). */
|
|
78
|
+
getCall(ref: string): Promise<VoiceCallLookupResult>;
|
|
44
79
|
}
|
|
45
80
|
export interface SmsClient {
|
|
46
81
|
/** Send an SMS; resolves with the provider message ref/sid. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/types/dispatch.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+CAA+C;AAC/C,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,mBAAmB,GAAG,KAAK,GAAG,OAAO,GAAG,UAAU,CAAC;AAE9F,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG,cAAc,CAAC;AAErE;;;;;;;GAOG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;gBAErB,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAKpF;AAED,gEAAgE;AAChE,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,6DAA6D;IAC7D,UAAU,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/types/dispatch.ts"],"names":[],"mappings":"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"}
|
package/dist/types/email.d.ts
CHANGED
|
@@ -29,8 +29,8 @@ export interface EmailAutopilotDecision {
|
|
|
29
29
|
action: EmailAutopilotAction;
|
|
30
30
|
/** Present when `action === "reply"`. Gemini's JSON mode may send `null` instead of omitting. */
|
|
31
31
|
replyBody?: string | null;
|
|
32
|
-
/**
|
|
33
|
-
|
|
32
|
+
/** Outcome to record on the gestión, when the reply implies one. May come back `null`. */
|
|
33
|
+
outcome?: string | null;
|
|
34
34
|
/** Promise/objective details to capture, when applicable. */
|
|
35
35
|
objective?: {
|
|
36
36
|
amount?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/types/email.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sCAAsC;AACtC,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,UAAU,GAAG,SAAS,CAAC;IAClC,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qFAAqF;AACrF,MAAM,WAAW,WAAW;IAC1B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,8EAA8E;IAC9E,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAE/E,sEAAsE;AACtE,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,iGAAiG;IACjG,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,
|
|
1
|
+
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/types/email.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sCAAsC;AACtC,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,UAAU,GAAG,SAAS,CAAC;IAClC,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qFAAqF;AACrF,MAAM,WAAW,WAAW;IAC1B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,8EAA8E;IAC9E,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAE/E,sEAAsE;AACtE,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,iGAAiG;IACjG,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,0FAA0F;IAC1F,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,6DAA6D;IAC7D,SAAS,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACzE;AAED,gDAAgD;AAChD,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,sFAAsF;AACtF,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACrE;AAED,sEAAsE;AACtE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,yFAAyF;IACzF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC"}
|