evo360-types 1.3.644 → 1.3.651

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.
@@ -143,6 +143,16 @@ exports.zCsqAlertSchema = zod_1.z.object({
143
143
  resolved_note: zod_1.z.string().optional(),
144
144
  appointment_id: zod_1.z.string().optional(),
145
145
  calendar_id: zod_1.z.string().optional(),
146
+ /** feat-206 F6a: claim que gerou o alerta de agenda (rechecagem tardia). */
147
+ appointment_claim: zod_1.z
148
+ .object({
149
+ date: zod_1.z.string(),
150
+ time: zod_1.z.string().optional(),
151
+ professional: zod_1.z.string().optional(),
152
+ patient_name: zod_1.z.string().optional(),
153
+ modality: zod_1.z.string().optional(),
154
+ })
155
+ .optional(),
146
156
  first_seen_ticket_id: zod_1.z.string(),
147
157
  created_at: zod_schemas_1.zFirestoreDateSchema,
148
158
  });
@@ -212,6 +222,8 @@ exports.zCsqClaimAppointmentInformedSchema = zod_1.z.object({
212
222
  modality: zod_1.z.string().optional(),
213
223
  /** Nome do PACIENTE informado na conversa (pode diferir do lead: mae/filho). */
214
224
  patient_name: zod_1.z.string().optional(),
225
+ /** feat-206 F6: cancelado ou substituido depois, na mesma jornada. */
226
+ superseded: zod_1.z.boolean().optional(),
215
227
  evidence: zod_1.z.array(exports.zCsqEvidenceSchema),
216
228
  });
217
229
  exports.zCsqClaimPromiseSchema = zod_1.z.object({
@@ -286,13 +298,14 @@ exports.zCsqClaimTypeSchema = zod_1.z.enum([
286
298
  /** Linha da tabela "o que foi dito x o que consta" (report-spec §2.5). */
287
299
  exports.zCsqCrossCheckSchema = zod_1.z.object({
288
300
  claim_type: exports.zCsqClaimTypeSchema,
289
- result: zod_1.z.enum(["match", "mismatch", "missing", "inconclusive"]),
301
+ result: zod_1.z.enum(["match", "mismatch", "missing", "inconclusive", "cancelled_after"]),
290
302
  expected: zod_1.z.string(),
291
303
  found: zod_1.z.string().nullable(),
292
304
  alert_code: exports.zCsqAlertCodeSchema.optional(),
293
305
  note: zod_1.z.string().optional(),
294
306
  appointment_id: zod_1.z.string().optional(),
295
307
  calendar_id: zod_1.z.string().optional(),
308
+ matched_by: zod_1.z.enum(["linked", "phone", "name", "name_fuzzy"]).optional(),
296
309
  });
297
310
  // ───────── Avaliacao (report-spec §4) ─────────
298
311
  exports.zCsqCriterionScoreSchema = zod_1.z.object({
@@ -375,6 +388,8 @@ exports.zCsqTriageReasonSchema = zod_1.z.enum([
375
388
  "reopen_without_new_messages",
376
389
  "automation_only",
377
390
  "ack_only",
391
+ "no_attendant_message",
392
+ "attendant_ack_only",
378
393
  "forced",
379
394
  ]);
380
395
  exports.zCsqTriageDecisionSchema = zod_1.z.object({
@@ -468,6 +483,8 @@ exports.zCsqAppointmentFactSchema = zod_1.z.object({
468
483
  professional_name: zod_1.z.string().optional(),
469
484
  modality: zod_1.z.string().optional(),
470
485
  created_at: zod_schemas_1.zFirestoreDateSchema.optional(),
486
+ removed: zod_1.z.enum(["deleted", "cancelled"]).optional(),
487
+ removed_at: zod_schemas_1.zFirestoreDateSchema.optional(),
471
488
  });
472
489
  exports.zCsqOverlapAppointmentFactSchema = zod_1.z.object({
473
490
  id: zod_1.z.string(),
@@ -163,6 +163,16 @@ export const zCsqAlertSchema = z.object({
163
163
  resolved_note: z.string().optional(),
164
164
  appointment_id: z.string().optional(),
165
165
  calendar_id: z.string().optional(),
166
+ /** feat-206 F6a: claim que gerou o alerta de agenda (rechecagem tardia). */
167
+ appointment_claim: z
168
+ .object({
169
+ date: z.string(),
170
+ time: z.string().optional(),
171
+ professional: z.string().optional(),
172
+ patient_name: z.string().optional(),
173
+ modality: z.string().optional(),
174
+ })
175
+ .optional(),
166
176
  first_seen_ticket_id: z.string(),
167
177
  created_at: zFirestoreDateSchema,
168
178
  });
@@ -242,6 +252,8 @@ export const zCsqClaimAppointmentInformedSchema = z.object({
242
252
  modality: z.string().optional(),
243
253
  /** Nome do PACIENTE informado na conversa (pode diferir do lead: mae/filho). */
244
254
  patient_name: z.string().optional(),
255
+ /** feat-206 F6: cancelado ou substituido depois, na mesma jornada. */
256
+ superseded: z.boolean().optional(),
245
257
  evidence: z.array(zCsqEvidenceSchema),
246
258
  });
247
259
 
@@ -327,13 +339,14 @@ export const zCsqClaimTypeSchema = z.enum([
327
339
  /** Linha da tabela "o que foi dito x o que consta" (report-spec §2.5). */
328
340
  export const zCsqCrossCheckSchema = z.object({
329
341
  claim_type: zCsqClaimTypeSchema,
330
- result: z.enum(["match", "mismatch", "missing", "inconclusive"]),
342
+ result: z.enum(["match", "mismatch", "missing", "inconclusive", "cancelled_after"]),
331
343
  expected: z.string(),
332
344
  found: z.string().nullable(),
333
345
  alert_code: zCsqAlertCodeSchema.optional(),
334
346
  note: z.string().optional(),
335
347
  appointment_id: z.string().optional(),
336
348
  calendar_id: z.string().optional(),
349
+ matched_by: z.enum(["linked", "phone", "name", "name_fuzzy"]).optional(),
337
350
  });
338
351
 
339
352
  // ───────── Avaliacao (report-spec §4) ─────────
@@ -432,6 +445,8 @@ export const zCsqTriageReasonSchema = z.enum([
432
445
  "reopen_without_new_messages",
433
446
  "automation_only",
434
447
  "ack_only",
448
+ "no_attendant_message",
449
+ "attendant_ack_only",
435
450
  "forced",
436
451
  ]);
437
452
 
@@ -538,6 +553,8 @@ export const zCsqAppointmentFactSchema = z.object({
538
553
  professional_name: z.string().optional(),
539
554
  modality: z.string().optional(),
540
555
  created_at: zFirestoreDateSchema.optional(),
556
+ removed: z.enum(["deleted", "cancelled"]).optional(),
557
+ removed_at: zFirestoreDateSchema.optional(),
541
558
  });
542
559
 
543
560
  export const zCsqOverlapAppointmentFactSchema = z.object({