@tmlmobilidade/types 20250915.1655.9 → 20250916.1050.43

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.
@@ -19,7 +19,446 @@ export declare const RideJustificationSchema: z.ZodObject<{
19
19
  updated_by: z.ZodOptional<z.ZodString>;
20
20
  } & {
21
21
  acceptance_status: z.ZodEnum<["justification_required", "under_review", "accepted", "rejected"]>;
22
- analysis: z.ZodObject<{
22
+ analysis: z.ZodNullable<z.ZodObject<{
23
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: z.ZodObject<{
24
+ error_message: z.ZodOptional<z.ZodString>;
25
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
26
+ } & {
27
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "NO_VEHICLE_EVENTS_ON_FIRST_STOP", "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP"]>;
28
+ value: z.ZodNullable<z.ZodNumber>;
29
+ }, "strict", z.ZodTypeAny, {
30
+ value: number | null;
31
+ grade: "error" | "pass" | "fail" | "skip";
32
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
33
+ error_message?: string | undefined;
34
+ }, {
35
+ value: number | null;
36
+ grade: "error" | "pass" | "fail" | "skip";
37
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
38
+ error_message?: string | undefined;
39
+ }>;
40
+ ENDED_AT_LAST_STOP: z.ZodObject<{
41
+ error_message: z.ZodOptional<z.ZodString>;
42
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
43
+ } & {
44
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "ENDED_AT_LAST_STOP", "ENDED_OUTSIDE_OF_LAST_STOP"]>;
45
+ }, "strict", z.ZodTypeAny, {
46
+ grade: "error" | "pass" | "fail" | "skip";
47
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
48
+ error_message?: string | undefined;
49
+ }, {
50
+ grade: "error" | "pass" | "fail" | "skip";
51
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
52
+ error_message?: string | undefined;
53
+ }>;
54
+ EXPECTED_APEX_VALIDATION_INTERVAL: z.ZodObject<{
55
+ error_message: z.ZodOptional<z.ZodString>;
56
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
57
+ } & {
58
+ reason: z.ZodEnum<["NO_APEX_VALIDATIONS", "NOT_ENOUGH_VALIDATIONS", "INTERVALS_TOO_SHORT", "NON_ORGANIC_INTERVALS", "EXPECTED_VALIDATION_INTERVALS"]>;
59
+ }, "strict", z.ZodTypeAny, {
60
+ grade: "error" | "pass" | "fail" | "skip";
61
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
62
+ error_message?: string | undefined;
63
+ }, {
64
+ grade: "error" | "pass" | "fail" | "skip";
65
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
66
+ error_message?: string | undefined;
67
+ }>;
68
+ EXPECTED_DRIVER_ID_QTY: z.ZodObject<{
69
+ error_message: z.ZodOptional<z.ZodString>;
70
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
71
+ } & {
72
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "UNEXPECTED_DRIVER_ID_QTY", "EXPECTED_DRIVER_ID_QTY"]>;
73
+ value: z.ZodNullable<z.ZodNumber>;
74
+ }, "strict", z.ZodTypeAny, {
75
+ value: number | null;
76
+ grade: "error" | "pass" | "fail" | "skip";
77
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
78
+ error_message?: string | undefined;
79
+ }, {
80
+ value: number | null;
81
+ grade: "error" | "pass" | "fail" | "skip";
82
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
83
+ error_message?: string | undefined;
84
+ }>;
85
+ EXPECTED_START_TIME: z.ZodObject<{
86
+ error_message: z.ZodOptional<z.ZodString>;
87
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
88
+ } & {
89
+ reason: z.ZodEnum<["NO_START_TIME_SCHEDULED", "NO_VEHICLE_EVENTS", "UNKNOWN_START", "EARLY_START", "LATE_START", "START_ON_TIME"]>;
90
+ value: z.ZodNullable<z.ZodNumber>;
91
+ }, "strict", z.ZodTypeAny, {
92
+ value: number | null;
93
+ grade: "error" | "pass" | "fail" | "skip";
94
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
95
+ error_message?: string | undefined;
96
+ }, {
97
+ value: number | null;
98
+ grade: "error" | "pass" | "fail" | "skip";
99
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
100
+ error_message?: string | undefined;
101
+ }>;
102
+ EXPECTED_VEHICLE_EVENT_DELAY: z.ZodObject<{
103
+ error_message: z.ZodOptional<z.ZodString>;
104
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
105
+ } & {
106
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "UNEXPECTED_VEHICLE_EVENTS_DELAY", "EXPECTED_VEHICLE_EVENTS_DELAY"]>;
107
+ value: z.ZodNullable<z.ZodNumber>;
108
+ }, "strict", z.ZodTypeAny, {
109
+ value: number | null;
110
+ grade: "error" | "pass" | "fail" | "skip";
111
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
112
+ error_message?: string | undefined;
113
+ }, {
114
+ value: number | null;
115
+ grade: "error" | "pass" | "fail" | "skip";
116
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
117
+ error_message?: string | undefined;
118
+ }>;
119
+ EXPECTED_VEHICLE_EVENT_INTERVAL: z.ZodObject<{
120
+ error_message: z.ZodOptional<z.ZodString>;
121
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
122
+ } & {
123
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "EXPECTED_VEHICLE_EVENT_INTERVAL", "UNEXPECTED_VEHICLE_EVENT_INTERVAL"]>;
124
+ value: z.ZodNullable<z.ZodNumber>;
125
+ }, "strict", z.ZodTypeAny, {
126
+ value: number | null;
127
+ grade: "error" | "pass" | "fail" | "skip";
128
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
129
+ error_message?: string | undefined;
130
+ }, {
131
+ value: number | null;
132
+ grade: "error" | "pass" | "fail" | "skip";
133
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
134
+ error_message?: string | undefined;
135
+ }>;
136
+ EXPECTED_VEHICLE_EVENT_QTY: z.ZodObject<{
137
+ error_message: z.ZodOptional<z.ZodString>;
138
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
139
+ } & {
140
+ expected_qty: z.ZodNullable<z.ZodNumber>;
141
+ found_qty: z.ZodNullable<z.ZodNumber>;
142
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "EXPECTED_VEHICLE_EVENT_QTY", "UNEXPECTED_VEHICLE_EVENT_QTY"]>;
143
+ }, "strict", z.ZodTypeAny, {
144
+ grade: "error" | "pass" | "fail" | "skip";
145
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
146
+ expected_qty: number | null;
147
+ found_qty: number | null;
148
+ error_message?: string | undefined;
149
+ }, {
150
+ grade: "error" | "pass" | "fail" | "skip";
151
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
152
+ expected_qty: number | null;
153
+ found_qty: number | null;
154
+ error_message?: string | undefined;
155
+ }>;
156
+ EXPECTED_VEHICLE_ID_QTY: z.ZodObject<{
157
+ error_message: z.ZodOptional<z.ZodString>;
158
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
159
+ } & {
160
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "NO_APEX_VALIDATIONS", "UNEXPECTED_VEHICLE_ID_QTY", "EXPECTED_VEHICLE_ID_QTY"]>;
161
+ value: z.ZodNullable<z.ZodNumber>;
162
+ }, "strict", z.ZodTypeAny, {
163
+ value: number | null;
164
+ grade: "error" | "pass" | "fail" | "skip";
165
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
166
+ error_message?: string | undefined;
167
+ }, {
168
+ value: number | null;
169
+ grade: "error" | "pass" | "fail" | "skip";
170
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
171
+ error_message?: string | undefined;
172
+ }>;
173
+ MATCHING_APEX_LOCATIONS: z.ZodObject<{
174
+ error_message: z.ZodOptional<z.ZodString>;
175
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
176
+ } & {
177
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_APEX_LOCATIONS", "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP", "MATCHING_APEX_LOCATIONS"]>;
178
+ }, "strict", z.ZodTypeAny, {
179
+ grade: "error" | "pass" | "fail" | "skip";
180
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
181
+ error_message?: string | undefined;
182
+ }, {
183
+ grade: "error" | "pass" | "fail" | "skip";
184
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
185
+ error_message?: string | undefined;
186
+ }>;
187
+ MATCHING_VEHICLE_IDS: z.ZodObject<{
188
+ error_message: z.ZodOptional<z.ZodString>;
189
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
190
+ } & {
191
+ reason: z.ZodEnum<["MATCHING_VEHICLE_IDS", "VEHICLE_ID_MISMATCH", "NO_VEHICLE_EVENTS", "NO_APEX_TRANSACTIONS"]>;
192
+ }, "strict", z.ZodTypeAny, {
193
+ grade: "error" | "pass" | "fail" | "skip";
194
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
195
+ error_message?: string | undefined;
196
+ }, {
197
+ grade: "error" | "pass" | "fail" | "skip";
198
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
199
+ error_message?: string | undefined;
200
+ }>;
201
+ SIMPLE_ONE_APEX_VALIDATION: z.ZodObject<{
202
+ error_message: z.ZodOptional<z.ZodString>;
203
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
204
+ } & {
205
+ reason: z.ZodEnum<["NO_APEX_VALIDATIONS", "ONE_OR_MORE_APEX_VALIDATIONS"]>;
206
+ value: z.ZodNullable<z.ZodNumber>;
207
+ }, "strict", z.ZodTypeAny, {
208
+ value: number | null;
209
+ grade: "error" | "pass" | "fail" | "skip";
210
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
211
+ error_message?: string | undefined;
212
+ }, {
213
+ value: number | null;
214
+ grade: "error" | "pass" | "fail" | "skip";
215
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
216
+ error_message?: string | undefined;
217
+ }>;
218
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: z.ZodObject<{
219
+ error_message: z.ZodOptional<z.ZodString>;
220
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
221
+ } & {
222
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS", "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION"]>;
223
+ }, "strict", z.ZodTypeAny, {
224
+ grade: "error" | "pass" | "fail" | "skip";
225
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
226
+ error_message?: string | undefined;
227
+ }, {
228
+ grade: "error" | "pass" | "fail" | "skip";
229
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
230
+ error_message?: string | undefined;
231
+ }>;
232
+ SIMPLE_THREE_VEHICLE_EVENTS: z.ZodObject<{
233
+ error_message: z.ZodOptional<z.ZodString>;
234
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
235
+ } & {
236
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "MISSING_FIRST_STOPS", "MISSING_MIDDLE_STOPS", "MISSING_LAST_STOPS", "ALL_STOPS_FOUND"]>;
237
+ stop_ids_first: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
238
+ stop_ids_last: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
239
+ stop_ids_middle: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
240
+ }, "strict", z.ZodTypeAny, {
241
+ grade: "error" | "pass" | "fail" | "skip";
242
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
243
+ stop_ids_first: string[] | null;
244
+ stop_ids_last: string[] | null;
245
+ stop_ids_middle: string[] | null;
246
+ error_message?: string | undefined;
247
+ }, {
248
+ grade: "error" | "pass" | "fail" | "skip";
249
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
250
+ stop_ids_first: string[] | null;
251
+ stop_ids_last: string[] | null;
252
+ stop_ids_middle: string[] | null;
253
+ error_message?: string | undefined;
254
+ }>;
255
+ TRANSACTION_SEQUENTIALITY: z.ZodObject<{
256
+ error_message: z.ZodOptional<z.ZodString>;
257
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
258
+ } & {
259
+ expected_qty: z.ZodNullable<z.ZodNumber>;
260
+ found_qty: z.ZodNullable<z.ZodNumber>;
261
+ missing_qty: z.ZodNullable<z.ZodNumber>;
262
+ reason: z.ZodEnum<["NO_TRANSACTIONS", "MISSING_TRANSACTIONS", "ALL_TRANSACTIONS_RECEIVED"]>;
263
+ }, "strict", z.ZodTypeAny, {
264
+ grade: "error" | "pass" | "fail" | "skip";
265
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
266
+ expected_qty: number | null;
267
+ found_qty: number | null;
268
+ missing_qty: number | null;
269
+ error_message?: string | undefined;
270
+ }, {
271
+ grade: "error" | "pass" | "fail" | "skip";
272
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
273
+ expected_qty: number | null;
274
+ found_qty: number | null;
275
+ missing_qty: number | null;
276
+ error_message?: string | undefined;
277
+ }>;
278
+ }, "strip", z.ZodTypeAny, {
279
+ EXPECTED_DRIVER_ID_QTY: {
280
+ value: number | null;
281
+ grade: "error" | "pass" | "fail" | "skip";
282
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
283
+ error_message?: string | undefined;
284
+ };
285
+ EXPECTED_VEHICLE_ID_QTY: {
286
+ value: number | null;
287
+ grade: "error" | "pass" | "fail" | "skip";
288
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
289
+ error_message?: string | undefined;
290
+ };
291
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
292
+ value: number | null;
293
+ grade: "error" | "pass" | "fail" | "skip";
294
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
295
+ error_message?: string | undefined;
296
+ };
297
+ ENDED_AT_LAST_STOP: {
298
+ grade: "error" | "pass" | "fail" | "skip";
299
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
300
+ error_message?: string | undefined;
301
+ };
302
+ EXPECTED_VEHICLE_EVENT_QTY: {
303
+ grade: "error" | "pass" | "fail" | "skip";
304
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
305
+ expected_qty: number | null;
306
+ found_qty: number | null;
307
+ error_message?: string | undefined;
308
+ };
309
+ MATCHING_APEX_LOCATIONS: {
310
+ grade: "error" | "pass" | "fail" | "skip";
311
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
312
+ error_message?: string | undefined;
313
+ };
314
+ MATCHING_VEHICLE_IDS: {
315
+ grade: "error" | "pass" | "fail" | "skip";
316
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
317
+ error_message?: string | undefined;
318
+ };
319
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
320
+ value: number | null;
321
+ grade: "error" | "pass" | "fail" | "skip";
322
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
323
+ error_message?: string | undefined;
324
+ };
325
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
326
+ grade: "error" | "pass" | "fail" | "skip";
327
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
328
+ error_message?: string | undefined;
329
+ };
330
+ EXPECTED_START_TIME: {
331
+ value: number | null;
332
+ grade: "error" | "pass" | "fail" | "skip";
333
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
334
+ error_message?: string | undefined;
335
+ };
336
+ EXPECTED_VEHICLE_EVENT_DELAY: {
337
+ value: number | null;
338
+ grade: "error" | "pass" | "fail" | "skip";
339
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
340
+ error_message?: string | undefined;
341
+ };
342
+ SIMPLE_ONE_APEX_VALIDATION: {
343
+ value: number | null;
344
+ grade: "error" | "pass" | "fail" | "skip";
345
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
346
+ error_message?: string | undefined;
347
+ };
348
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
349
+ grade: "error" | "pass" | "fail" | "skip";
350
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
351
+ error_message?: string | undefined;
352
+ };
353
+ SIMPLE_THREE_VEHICLE_EVENTS: {
354
+ grade: "error" | "pass" | "fail" | "skip";
355
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
356
+ stop_ids_first: string[] | null;
357
+ stop_ids_last: string[] | null;
358
+ stop_ids_middle: string[] | null;
359
+ error_message?: string | undefined;
360
+ };
361
+ TRANSACTION_SEQUENTIALITY: {
362
+ grade: "error" | "pass" | "fail" | "skip";
363
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
364
+ expected_qty: number | null;
365
+ found_qty: number | null;
366
+ missing_qty: number | null;
367
+ error_message?: string | undefined;
368
+ };
369
+ }, {
370
+ EXPECTED_DRIVER_ID_QTY: {
371
+ value: number | null;
372
+ grade: "error" | "pass" | "fail" | "skip";
373
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
374
+ error_message?: string | undefined;
375
+ };
376
+ EXPECTED_VEHICLE_ID_QTY: {
377
+ value: number | null;
378
+ grade: "error" | "pass" | "fail" | "skip";
379
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
380
+ error_message?: string | undefined;
381
+ };
382
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
383
+ value: number | null;
384
+ grade: "error" | "pass" | "fail" | "skip";
385
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
386
+ error_message?: string | undefined;
387
+ };
388
+ ENDED_AT_LAST_STOP: {
389
+ grade: "error" | "pass" | "fail" | "skip";
390
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
391
+ error_message?: string | undefined;
392
+ };
393
+ EXPECTED_VEHICLE_EVENT_QTY: {
394
+ grade: "error" | "pass" | "fail" | "skip";
395
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
396
+ expected_qty: number | null;
397
+ found_qty: number | null;
398
+ error_message?: string | undefined;
399
+ };
400
+ MATCHING_APEX_LOCATIONS: {
401
+ grade: "error" | "pass" | "fail" | "skip";
402
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
403
+ error_message?: string | undefined;
404
+ };
405
+ MATCHING_VEHICLE_IDS: {
406
+ grade: "error" | "pass" | "fail" | "skip";
407
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
408
+ error_message?: string | undefined;
409
+ };
410
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
411
+ value: number | null;
412
+ grade: "error" | "pass" | "fail" | "skip";
413
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
414
+ error_message?: string | undefined;
415
+ };
416
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
417
+ grade: "error" | "pass" | "fail" | "skip";
418
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
419
+ error_message?: string | undefined;
420
+ };
421
+ EXPECTED_START_TIME: {
422
+ value: number | null;
423
+ grade: "error" | "pass" | "fail" | "skip";
424
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
425
+ error_message?: string | undefined;
426
+ };
427
+ EXPECTED_VEHICLE_EVENT_DELAY: {
428
+ value: number | null;
429
+ grade: "error" | "pass" | "fail" | "skip";
430
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
431
+ error_message?: string | undefined;
432
+ };
433
+ SIMPLE_ONE_APEX_VALIDATION: {
434
+ value: number | null;
435
+ grade: "error" | "pass" | "fail" | "skip";
436
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
437
+ error_message?: string | undefined;
438
+ };
439
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
440
+ grade: "error" | "pass" | "fail" | "skip";
441
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
442
+ error_message?: string | undefined;
443
+ };
444
+ SIMPLE_THREE_VEHICLE_EVENTS: {
445
+ grade: "error" | "pass" | "fail" | "skip";
446
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
447
+ stop_ids_first: string[] | null;
448
+ stop_ids_last: string[] | null;
449
+ stop_ids_middle: string[] | null;
450
+ error_message?: string | undefined;
451
+ };
452
+ TRANSACTION_SEQUENTIALITY: {
453
+ grade: "error" | "pass" | "fail" | "skip";
454
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
455
+ expected_qty: number | null;
456
+ found_qty: number | null;
457
+ missing_qty: number | null;
458
+ error_message?: string | undefined;
459
+ };
460
+ }>>;
461
+ analysisSummary: z.ZodObject<{
23
462
  error_message: z.ZodOptional<z.ZodString>;
24
463
  grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
25
464
  reason: z.ZodString;
@@ -40,7 +479,6 @@ export declare const RideJustificationSchema: z.ZodObject<{
40
479
  updated_by: z.ZodOptional<z.ZodString>;
41
480
  } & {
42
481
  message: z.ZodString;
43
- metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
44
482
  type: z.ZodLiteral<"note">;
45
483
  }, "strip", z.ZodTypeAny, {
46
484
  _id: string;
@@ -54,7 +492,6 @@ export declare const RideJustificationSchema: z.ZodObject<{
54
492
  type: "note";
55
493
  created_by?: string | undefined;
56
494
  updated_by?: string | undefined;
57
- metadata?: Record<string, unknown> | null | undefined;
58
495
  }, {
59
496
  _id: string;
60
497
  created_at: number;
@@ -63,39 +500,6 @@ export declare const RideJustificationSchema: z.ZodObject<{
63
500
  type: "note";
64
501
  created_by?: string | undefined;
65
502
  updated_by?: string | undefined;
66
- metadata?: Record<string, unknown> | null | undefined;
67
- }>, z.ZodObject<{
68
- _id: z.ZodString;
69
- created_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
70
- updated_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
71
- } & {
72
- created_by: z.ZodLiteral<"system">;
73
- message: z.ZodString;
74
- metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
75
- type: z.ZodLiteral<"system_info">;
76
- updated_by: z.ZodLiteral<"system">;
77
- }, "strip", z.ZodTypeAny, {
78
- _id: string;
79
- created_at: number & {
80
- __brand: "UnixTimestamp";
81
- };
82
- created_by: "system";
83
- updated_at: number & {
84
- __brand: "UnixTimestamp";
85
- };
86
- updated_by: "system";
87
- message: string;
88
- type: "system_info";
89
- metadata?: Record<string, unknown> | null | undefined;
90
- }, {
91
- _id: string;
92
- created_at: number;
93
- created_by: "system";
94
- updated_at: number;
95
- updated_by: "system";
96
- message: string;
97
- type: "system_info";
98
- metadata?: Record<string, unknown> | null | undefined;
99
503
  }>, z.ZodObject<{
100
504
  _id: z.ZodString;
101
505
  created_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
@@ -103,11 +507,11 @@ export declare const RideJustificationSchema: z.ZodObject<{
103
507
  updated_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
104
508
  updated_by: z.ZodOptional<z.ZodString>;
105
509
  } & {
106
- accessor: z.ZodString;
107
- curr_status: z.ZodUnion<[z.ZodString, z.ZodBoolean]>;
510
+ curr_value: z.ZodAny;
511
+ field: z.ZodString;
108
512
  metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
109
- prev_status: z.ZodUnion<[z.ZodString, z.ZodBoolean]>;
110
- type: z.ZodLiteral<"status_changed">;
513
+ prev_value: z.ZodAny;
514
+ type: z.ZodLiteral<"field_changed">;
111
515
  }, "strip", z.ZodTypeAny, {
112
516
  _id: string;
113
517
  created_at: number & {
@@ -116,24 +520,24 @@ export declare const RideJustificationSchema: z.ZodObject<{
116
520
  updated_at: number & {
117
521
  __brand: "UnixTimestamp";
118
522
  };
119
- type: "status_changed";
120
- accessor: string;
121
- curr_status: string | boolean;
122
- prev_status: string | boolean;
523
+ type: "field_changed";
524
+ field: string;
123
525
  created_by?: string | undefined;
124
526
  updated_by?: string | undefined;
527
+ curr_value?: any;
125
528
  metadata?: Record<string, unknown> | null | undefined;
529
+ prev_value?: any;
126
530
  }, {
127
531
  _id: string;
128
532
  created_at: number;
129
533
  updated_at: number;
130
- type: "status_changed";
131
- accessor: string;
132
- curr_status: string | boolean;
133
- prev_status: string | boolean;
534
+ type: "field_changed";
535
+ field: string;
134
536
  created_by?: string | undefined;
135
537
  updated_by?: string | undefined;
538
+ curr_value?: any;
136
539
  metadata?: Record<string, unknown> | null | undefined;
540
+ prev_value?: any;
137
541
  }>]>, {
138
542
  _id: string;
139
543
  created_at: number & {
@@ -146,35 +550,21 @@ export declare const RideJustificationSchema: z.ZodObject<{
146
550
  type: "note";
147
551
  created_by?: string | undefined;
148
552
  updated_by?: string | undefined;
149
- metadata?: Record<string, unknown> | null | undefined;
150
553
  } | {
151
554
  _id: string;
152
555
  created_at: number & {
153
556
  __brand: "UnixTimestamp";
154
557
  };
155
- created_by: "system";
156
558
  updated_at: number & {
157
559
  __brand: "UnixTimestamp";
158
560
  };
159
- updated_by: "system";
160
- message: string;
161
- type: "system_info";
162
- metadata?: Record<string, unknown> | null | undefined;
163
- } | {
164
- _id: string;
165
- created_at: number & {
166
- __brand: "UnixTimestamp";
167
- };
168
- updated_at: number & {
169
- __brand: "UnixTimestamp";
170
- };
171
- type: "status_changed";
172
- accessor: string;
173
- curr_status: string | boolean;
174
- prev_status: string | boolean;
561
+ type: "field_changed";
562
+ field: string;
175
563
  created_by?: string | undefined;
176
564
  updated_by?: string | undefined;
565
+ curr_value?: any;
177
566
  metadata?: Record<string, unknown> | null | undefined;
567
+ prev_value?: any;
178
568
  }, {
179
569
  _id: string;
180
570
  created_at: number;
@@ -183,27 +573,17 @@ export declare const RideJustificationSchema: z.ZodObject<{
183
573
  type: "note";
184
574
  created_by?: string | undefined;
185
575
  updated_by?: string | undefined;
186
- metadata?: Record<string, unknown> | null | undefined;
187
- } | {
188
- _id: string;
189
- created_at: number;
190
- created_by: "system";
191
- updated_at: number;
192
- updated_by: "system";
193
- message: string;
194
- type: "system_info";
195
- metadata?: Record<string, unknown> | null | undefined;
196
576
  } | {
197
577
  _id: string;
198
578
  created_at: number;
199
579
  updated_at: number;
200
- type: "status_changed";
201
- accessor: string;
202
- curr_status: string | boolean;
203
- prev_status: string | boolean;
580
+ type: "field_changed";
581
+ field: string;
204
582
  created_by?: string | undefined;
205
583
  updated_by?: string | undefined;
584
+ curr_value?: any;
206
585
  metadata?: Record<string, unknown> | null | undefined;
586
+ prev_value?: any;
207
587
  }>, "many">>;
208
588
  is_locked: z.ZodDefault<z.ZodBoolean>;
209
589
  justification_cause: z.ZodEnum<["TECHNICAL_PROBLEM", "DEMONSTRATION", "ACCIDENT", "WEATHER", "CONSTRUCTION", "POLICE_ACTIVITY", "MEDICAL_EMERGENCY", "OTHER_CAUSE"]>;
@@ -231,20 +611,6 @@ export declare const RideJustificationSchema: z.ZodObject<{
231
611
  type: "note";
232
612
  created_by?: string | undefined;
233
613
  updated_by?: string | undefined;
234
- metadata?: Record<string, unknown> | null | undefined;
235
- } | {
236
- _id: string;
237
- created_at: number & {
238
- __brand: "UnixTimestamp";
239
- };
240
- created_by: "system";
241
- updated_at: number & {
242
- __brand: "UnixTimestamp";
243
- };
244
- updated_by: "system";
245
- message: string;
246
- type: "system_info";
247
- metadata?: Record<string, unknown> | null | undefined;
248
614
  } | {
249
615
  _id: string;
250
616
  created_at: number & {
@@ -253,17 +619,109 @@ export declare const RideJustificationSchema: z.ZodObject<{
253
619
  updated_at: number & {
254
620
  __brand: "UnixTimestamp";
255
621
  };
256
- type: "status_changed";
257
- accessor: string;
258
- curr_status: string | boolean;
259
- prev_status: string | boolean;
622
+ type: "field_changed";
623
+ field: string;
260
624
  created_by?: string | undefined;
261
625
  updated_by?: string | undefined;
626
+ curr_value?: any;
262
627
  metadata?: Record<string, unknown> | null | undefined;
628
+ prev_value?: any;
263
629
  })[];
264
630
  acceptance_status: "accepted" | "justification_required" | "under_review" | "rejected";
265
631
  pto_message: string;
266
632
  analysis: {
633
+ EXPECTED_DRIVER_ID_QTY: {
634
+ value: number | null;
635
+ grade: "error" | "pass" | "fail" | "skip";
636
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
637
+ error_message?: string | undefined;
638
+ };
639
+ EXPECTED_VEHICLE_ID_QTY: {
640
+ value: number | null;
641
+ grade: "error" | "pass" | "fail" | "skip";
642
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
643
+ error_message?: string | undefined;
644
+ };
645
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
646
+ value: number | null;
647
+ grade: "error" | "pass" | "fail" | "skip";
648
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
649
+ error_message?: string | undefined;
650
+ };
651
+ ENDED_AT_LAST_STOP: {
652
+ grade: "error" | "pass" | "fail" | "skip";
653
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
654
+ error_message?: string | undefined;
655
+ };
656
+ EXPECTED_VEHICLE_EVENT_QTY: {
657
+ grade: "error" | "pass" | "fail" | "skip";
658
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
659
+ expected_qty: number | null;
660
+ found_qty: number | null;
661
+ error_message?: string | undefined;
662
+ };
663
+ MATCHING_APEX_LOCATIONS: {
664
+ grade: "error" | "pass" | "fail" | "skip";
665
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
666
+ error_message?: string | undefined;
667
+ };
668
+ MATCHING_VEHICLE_IDS: {
669
+ grade: "error" | "pass" | "fail" | "skip";
670
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
671
+ error_message?: string | undefined;
672
+ };
673
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
674
+ value: number | null;
675
+ grade: "error" | "pass" | "fail" | "skip";
676
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
677
+ error_message?: string | undefined;
678
+ };
679
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
680
+ grade: "error" | "pass" | "fail" | "skip";
681
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
682
+ error_message?: string | undefined;
683
+ };
684
+ EXPECTED_START_TIME: {
685
+ value: number | null;
686
+ grade: "error" | "pass" | "fail" | "skip";
687
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
688
+ error_message?: string | undefined;
689
+ };
690
+ EXPECTED_VEHICLE_EVENT_DELAY: {
691
+ value: number | null;
692
+ grade: "error" | "pass" | "fail" | "skip";
693
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
694
+ error_message?: string | undefined;
695
+ };
696
+ SIMPLE_ONE_APEX_VALIDATION: {
697
+ value: number | null;
698
+ grade: "error" | "pass" | "fail" | "skip";
699
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
700
+ error_message?: string | undefined;
701
+ };
702
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
703
+ grade: "error" | "pass" | "fail" | "skip";
704
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
705
+ error_message?: string | undefined;
706
+ };
707
+ SIMPLE_THREE_VEHICLE_EVENTS: {
708
+ grade: "error" | "pass" | "fail" | "skip";
709
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
710
+ stop_ids_first: string[] | null;
711
+ stop_ids_last: string[] | null;
712
+ stop_ids_middle: string[] | null;
713
+ error_message?: string | undefined;
714
+ };
715
+ TRANSACTION_SEQUENTIALITY: {
716
+ grade: "error" | "pass" | "fail" | "skip";
717
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
718
+ expected_qty: number | null;
719
+ found_qty: number | null;
720
+ missing_qty: number | null;
721
+ error_message?: string | undefined;
722
+ };
723
+ } | null;
724
+ analysisSummary: {
267
725
  grade: "error" | "pass" | "fail" | "skip";
268
726
  reason: string;
269
727
  error_message?: string | undefined;
@@ -279,6 +737,98 @@ export declare const RideJustificationSchema: z.ZodObject<{
279
737
  updated_at: number;
280
738
  acceptance_status: "accepted" | "justification_required" | "under_review" | "rejected";
281
739
  analysis: {
740
+ EXPECTED_DRIVER_ID_QTY: {
741
+ value: number | null;
742
+ grade: "error" | "pass" | "fail" | "skip";
743
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
744
+ error_message?: string | undefined;
745
+ };
746
+ EXPECTED_VEHICLE_ID_QTY: {
747
+ value: number | null;
748
+ grade: "error" | "pass" | "fail" | "skip";
749
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
750
+ error_message?: string | undefined;
751
+ };
752
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
753
+ value: number | null;
754
+ grade: "error" | "pass" | "fail" | "skip";
755
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
756
+ error_message?: string | undefined;
757
+ };
758
+ ENDED_AT_LAST_STOP: {
759
+ grade: "error" | "pass" | "fail" | "skip";
760
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
761
+ error_message?: string | undefined;
762
+ };
763
+ EXPECTED_VEHICLE_EVENT_QTY: {
764
+ grade: "error" | "pass" | "fail" | "skip";
765
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
766
+ expected_qty: number | null;
767
+ found_qty: number | null;
768
+ error_message?: string | undefined;
769
+ };
770
+ MATCHING_APEX_LOCATIONS: {
771
+ grade: "error" | "pass" | "fail" | "skip";
772
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
773
+ error_message?: string | undefined;
774
+ };
775
+ MATCHING_VEHICLE_IDS: {
776
+ grade: "error" | "pass" | "fail" | "skip";
777
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
778
+ error_message?: string | undefined;
779
+ };
780
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
781
+ value: number | null;
782
+ grade: "error" | "pass" | "fail" | "skip";
783
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
784
+ error_message?: string | undefined;
785
+ };
786
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
787
+ grade: "error" | "pass" | "fail" | "skip";
788
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
789
+ error_message?: string | undefined;
790
+ };
791
+ EXPECTED_START_TIME: {
792
+ value: number | null;
793
+ grade: "error" | "pass" | "fail" | "skip";
794
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
795
+ error_message?: string | undefined;
796
+ };
797
+ EXPECTED_VEHICLE_EVENT_DELAY: {
798
+ value: number | null;
799
+ grade: "error" | "pass" | "fail" | "skip";
800
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
801
+ error_message?: string | undefined;
802
+ };
803
+ SIMPLE_ONE_APEX_VALIDATION: {
804
+ value: number | null;
805
+ grade: "error" | "pass" | "fail" | "skip";
806
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
807
+ error_message?: string | undefined;
808
+ };
809
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
810
+ grade: "error" | "pass" | "fail" | "skip";
811
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
812
+ error_message?: string | undefined;
813
+ };
814
+ SIMPLE_THREE_VEHICLE_EVENTS: {
815
+ grade: "error" | "pass" | "fail" | "skip";
816
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
817
+ stop_ids_first: string[] | null;
818
+ stop_ids_last: string[] | null;
819
+ stop_ids_middle: string[] | null;
820
+ error_message?: string | undefined;
821
+ };
822
+ TRANSACTION_SEQUENTIALITY: {
823
+ grade: "error" | "pass" | "fail" | "skip";
824
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
825
+ expected_qty: number | null;
826
+ found_qty: number | null;
827
+ missing_qty: number | null;
828
+ error_message?: string | undefined;
829
+ };
830
+ } | null;
831
+ analysisSummary: {
282
832
  grade: "error" | "pass" | "fail" | "skip";
283
833
  reason: string;
284
834
  error_message?: string | undefined;
@@ -297,27 +847,17 @@ export declare const RideJustificationSchema: z.ZodObject<{
297
847
  type: "note";
298
848
  created_by?: string | undefined;
299
849
  updated_by?: string | undefined;
300
- metadata?: Record<string, unknown> | null | undefined;
301
- } | {
302
- _id: string;
303
- created_at: number;
304
- created_by: "system";
305
- updated_at: number;
306
- updated_by: "system";
307
- message: string;
308
- type: "system_info";
309
- metadata?: Record<string, unknown> | null | undefined;
310
850
  } | {
311
851
  _id: string;
312
852
  created_at: number;
313
853
  updated_at: number;
314
- type: "status_changed";
315
- accessor: string;
316
- curr_status: string | boolean;
317
- prev_status: string | boolean;
854
+ type: "field_changed";
855
+ field: string;
318
856
  created_by?: string | undefined;
319
857
  updated_by?: string | undefined;
858
+ curr_value?: any;
320
859
  metadata?: Record<string, unknown> | null | undefined;
860
+ prev_value?: any;
321
861
  })[] | undefined;
322
862
  pto_message?: string | undefined;
323
863
  }>;
@@ -336,7 +876,6 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
336
876
  updated_by: z.ZodOptional<z.ZodString>;
337
877
  } & {
338
878
  message: z.ZodString;
339
- metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
340
879
  type: z.ZodLiteral<"note">;
341
880
  }, "strip", z.ZodTypeAny, {
342
881
  _id: string;
@@ -350,7 +889,6 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
350
889
  type: "note";
351
890
  created_by?: string | undefined;
352
891
  updated_by?: string | undefined;
353
- metadata?: Record<string, unknown> | null | undefined;
354
892
  }, {
355
893
  _id: string;
356
894
  created_at: number;
@@ -359,39 +897,6 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
359
897
  type: "note";
360
898
  created_by?: string | undefined;
361
899
  updated_by?: string | undefined;
362
- metadata?: Record<string, unknown> | null | undefined;
363
- }>, z.ZodObject<{
364
- _id: z.ZodString;
365
- created_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
366
- updated_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
367
- } & {
368
- created_by: z.ZodLiteral<"system">;
369
- message: z.ZodString;
370
- metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
371
- type: z.ZodLiteral<"system_info">;
372
- updated_by: z.ZodLiteral<"system">;
373
- }, "strip", z.ZodTypeAny, {
374
- _id: string;
375
- created_at: number & {
376
- __brand: "UnixTimestamp";
377
- };
378
- created_by: "system";
379
- updated_at: number & {
380
- __brand: "UnixTimestamp";
381
- };
382
- updated_by: "system";
383
- message: string;
384
- type: "system_info";
385
- metadata?: Record<string, unknown> | null | undefined;
386
- }, {
387
- _id: string;
388
- created_at: number;
389
- created_by: "system";
390
- updated_at: number;
391
- updated_by: "system";
392
- message: string;
393
- type: "system_info";
394
- metadata?: Record<string, unknown> | null | undefined;
395
900
  }>, z.ZodObject<{
396
901
  _id: z.ZodString;
397
902
  created_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
@@ -399,11 +904,11 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
399
904
  updated_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
400
905
  updated_by: z.ZodOptional<z.ZodString>;
401
906
  } & {
402
- accessor: z.ZodString;
403
- curr_status: z.ZodUnion<[z.ZodString, z.ZodBoolean]>;
907
+ curr_value: z.ZodAny;
908
+ field: z.ZodString;
404
909
  metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
405
- prev_status: z.ZodUnion<[z.ZodString, z.ZodBoolean]>;
406
- type: z.ZodLiteral<"status_changed">;
910
+ prev_value: z.ZodAny;
911
+ type: z.ZodLiteral<"field_changed">;
407
912
  }, "strip", z.ZodTypeAny, {
408
913
  _id: string;
409
914
  created_at: number & {
@@ -412,24 +917,24 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
412
917
  updated_at: number & {
413
918
  __brand: "UnixTimestamp";
414
919
  };
415
- type: "status_changed";
416
- accessor: string;
417
- curr_status: string | boolean;
418
- prev_status: string | boolean;
920
+ type: "field_changed";
921
+ field: string;
419
922
  created_by?: string | undefined;
420
923
  updated_by?: string | undefined;
924
+ curr_value?: any;
421
925
  metadata?: Record<string, unknown> | null | undefined;
926
+ prev_value?: any;
422
927
  }, {
423
928
  _id: string;
424
929
  created_at: number;
425
930
  updated_at: number;
426
- type: "status_changed";
427
- accessor: string;
428
- curr_status: string | boolean;
429
- prev_status: string | boolean;
931
+ type: "field_changed";
932
+ field: string;
430
933
  created_by?: string | undefined;
431
934
  updated_by?: string | undefined;
935
+ curr_value?: any;
432
936
  metadata?: Record<string, unknown> | null | undefined;
937
+ prev_value?: any;
433
938
  }>]>, {
434
939
  _id: string;
435
940
  created_at: number & {
@@ -442,20 +947,6 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
442
947
  type: "note";
443
948
  created_by?: string | undefined;
444
949
  updated_by?: string | undefined;
445
- metadata?: Record<string, unknown> | null | undefined;
446
- } | {
447
- _id: string;
448
- created_at: number & {
449
- __brand: "UnixTimestamp";
450
- };
451
- created_by: "system";
452
- updated_at: number & {
453
- __brand: "UnixTimestamp";
454
- };
455
- updated_by: "system";
456
- message: string;
457
- type: "system_info";
458
- metadata?: Record<string, unknown> | null | undefined;
459
950
  } | {
460
951
  _id: string;
461
952
  created_at: number & {
@@ -464,13 +955,13 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
464
955
  updated_at: number & {
465
956
  __brand: "UnixTimestamp";
466
957
  };
467
- type: "status_changed";
468
- accessor: string;
469
- curr_status: string | boolean;
470
- prev_status: string | boolean;
958
+ type: "field_changed";
959
+ field: string;
471
960
  created_by?: string | undefined;
472
961
  updated_by?: string | undefined;
962
+ curr_value?: any;
473
963
  metadata?: Record<string, unknown> | null | undefined;
964
+ prev_value?: any;
474
965
  }, {
475
966
  _id: string;
476
967
  created_at: number;
@@ -479,31 +970,460 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
479
970
  type: "note";
480
971
  created_by?: string | undefined;
481
972
  updated_by?: string | undefined;
482
- metadata?: Record<string, unknown> | null | undefined;
483
973
  } | {
484
974
  _id: string;
485
975
  created_at: number;
486
- created_by: "system";
487
976
  updated_at: number;
488
- updated_by: "system";
489
- message: string;
490
- type: "system_info";
491
- metadata?: Record<string, unknown> | null | undefined;
492
- } | {
493
- _id: string;
494
- created_at: number;
495
- updated_at: number;
496
- type: "status_changed";
497
- accessor: string;
498
- curr_status: string | boolean;
499
- prev_status: string | boolean;
977
+ type: "field_changed";
978
+ field: string;
500
979
  created_by?: string | undefined;
501
980
  updated_by?: string | undefined;
981
+ curr_value?: any;
502
982
  metadata?: Record<string, unknown> | null | undefined;
983
+ prev_value?: any;
503
984
  }>, "many">>;
504
985
  acceptance_status: z.ZodEnum<["justification_required", "under_review", "accepted", "rejected"]>;
505
986
  pto_message: z.ZodDefault<z.ZodString>;
506
- analysis: z.ZodObject<{
987
+ analysis: z.ZodNullable<z.ZodObject<{
988
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: z.ZodObject<{
989
+ error_message: z.ZodOptional<z.ZodString>;
990
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
991
+ } & {
992
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "NO_VEHICLE_EVENTS_ON_FIRST_STOP", "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP"]>;
993
+ value: z.ZodNullable<z.ZodNumber>;
994
+ }, "strict", z.ZodTypeAny, {
995
+ value: number | null;
996
+ grade: "error" | "pass" | "fail" | "skip";
997
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
998
+ error_message?: string | undefined;
999
+ }, {
1000
+ value: number | null;
1001
+ grade: "error" | "pass" | "fail" | "skip";
1002
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
1003
+ error_message?: string | undefined;
1004
+ }>;
1005
+ ENDED_AT_LAST_STOP: z.ZodObject<{
1006
+ error_message: z.ZodOptional<z.ZodString>;
1007
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1008
+ } & {
1009
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "ENDED_AT_LAST_STOP", "ENDED_OUTSIDE_OF_LAST_STOP"]>;
1010
+ }, "strict", z.ZodTypeAny, {
1011
+ grade: "error" | "pass" | "fail" | "skip";
1012
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
1013
+ error_message?: string | undefined;
1014
+ }, {
1015
+ grade: "error" | "pass" | "fail" | "skip";
1016
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
1017
+ error_message?: string | undefined;
1018
+ }>;
1019
+ EXPECTED_APEX_VALIDATION_INTERVAL: z.ZodObject<{
1020
+ error_message: z.ZodOptional<z.ZodString>;
1021
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1022
+ } & {
1023
+ reason: z.ZodEnum<["NO_APEX_VALIDATIONS", "NOT_ENOUGH_VALIDATIONS", "INTERVALS_TOO_SHORT", "NON_ORGANIC_INTERVALS", "EXPECTED_VALIDATION_INTERVALS"]>;
1024
+ }, "strict", z.ZodTypeAny, {
1025
+ grade: "error" | "pass" | "fail" | "skip";
1026
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
1027
+ error_message?: string | undefined;
1028
+ }, {
1029
+ grade: "error" | "pass" | "fail" | "skip";
1030
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
1031
+ error_message?: string | undefined;
1032
+ }>;
1033
+ EXPECTED_DRIVER_ID_QTY: z.ZodObject<{
1034
+ error_message: z.ZodOptional<z.ZodString>;
1035
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1036
+ } & {
1037
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "UNEXPECTED_DRIVER_ID_QTY", "EXPECTED_DRIVER_ID_QTY"]>;
1038
+ value: z.ZodNullable<z.ZodNumber>;
1039
+ }, "strict", z.ZodTypeAny, {
1040
+ value: number | null;
1041
+ grade: "error" | "pass" | "fail" | "skip";
1042
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
1043
+ error_message?: string | undefined;
1044
+ }, {
1045
+ value: number | null;
1046
+ grade: "error" | "pass" | "fail" | "skip";
1047
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
1048
+ error_message?: string | undefined;
1049
+ }>;
1050
+ EXPECTED_START_TIME: z.ZodObject<{
1051
+ error_message: z.ZodOptional<z.ZodString>;
1052
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1053
+ } & {
1054
+ reason: z.ZodEnum<["NO_START_TIME_SCHEDULED", "NO_VEHICLE_EVENTS", "UNKNOWN_START", "EARLY_START", "LATE_START", "START_ON_TIME"]>;
1055
+ value: z.ZodNullable<z.ZodNumber>;
1056
+ }, "strict", z.ZodTypeAny, {
1057
+ value: number | null;
1058
+ grade: "error" | "pass" | "fail" | "skip";
1059
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
1060
+ error_message?: string | undefined;
1061
+ }, {
1062
+ value: number | null;
1063
+ grade: "error" | "pass" | "fail" | "skip";
1064
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
1065
+ error_message?: string | undefined;
1066
+ }>;
1067
+ EXPECTED_VEHICLE_EVENT_DELAY: z.ZodObject<{
1068
+ error_message: z.ZodOptional<z.ZodString>;
1069
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1070
+ } & {
1071
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "UNEXPECTED_VEHICLE_EVENTS_DELAY", "EXPECTED_VEHICLE_EVENTS_DELAY"]>;
1072
+ value: z.ZodNullable<z.ZodNumber>;
1073
+ }, "strict", z.ZodTypeAny, {
1074
+ value: number | null;
1075
+ grade: "error" | "pass" | "fail" | "skip";
1076
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
1077
+ error_message?: string | undefined;
1078
+ }, {
1079
+ value: number | null;
1080
+ grade: "error" | "pass" | "fail" | "skip";
1081
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
1082
+ error_message?: string | undefined;
1083
+ }>;
1084
+ EXPECTED_VEHICLE_EVENT_INTERVAL: z.ZodObject<{
1085
+ error_message: z.ZodOptional<z.ZodString>;
1086
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1087
+ } & {
1088
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "EXPECTED_VEHICLE_EVENT_INTERVAL", "UNEXPECTED_VEHICLE_EVENT_INTERVAL"]>;
1089
+ value: z.ZodNullable<z.ZodNumber>;
1090
+ }, "strict", z.ZodTypeAny, {
1091
+ value: number | null;
1092
+ grade: "error" | "pass" | "fail" | "skip";
1093
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
1094
+ error_message?: string | undefined;
1095
+ }, {
1096
+ value: number | null;
1097
+ grade: "error" | "pass" | "fail" | "skip";
1098
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
1099
+ error_message?: string | undefined;
1100
+ }>;
1101
+ EXPECTED_VEHICLE_EVENT_QTY: z.ZodObject<{
1102
+ error_message: z.ZodOptional<z.ZodString>;
1103
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1104
+ } & {
1105
+ expected_qty: z.ZodNullable<z.ZodNumber>;
1106
+ found_qty: z.ZodNullable<z.ZodNumber>;
1107
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "EXPECTED_VEHICLE_EVENT_QTY", "UNEXPECTED_VEHICLE_EVENT_QTY"]>;
1108
+ }, "strict", z.ZodTypeAny, {
1109
+ grade: "error" | "pass" | "fail" | "skip";
1110
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
1111
+ expected_qty: number | null;
1112
+ found_qty: number | null;
1113
+ error_message?: string | undefined;
1114
+ }, {
1115
+ grade: "error" | "pass" | "fail" | "skip";
1116
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
1117
+ expected_qty: number | null;
1118
+ found_qty: number | null;
1119
+ error_message?: string | undefined;
1120
+ }>;
1121
+ EXPECTED_VEHICLE_ID_QTY: z.ZodObject<{
1122
+ error_message: z.ZodOptional<z.ZodString>;
1123
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1124
+ } & {
1125
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS", "NO_APEX_VALIDATIONS", "UNEXPECTED_VEHICLE_ID_QTY", "EXPECTED_VEHICLE_ID_QTY"]>;
1126
+ value: z.ZodNullable<z.ZodNumber>;
1127
+ }, "strict", z.ZodTypeAny, {
1128
+ value: number | null;
1129
+ grade: "error" | "pass" | "fail" | "skip";
1130
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
1131
+ error_message?: string | undefined;
1132
+ }, {
1133
+ value: number | null;
1134
+ grade: "error" | "pass" | "fail" | "skip";
1135
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
1136
+ error_message?: string | undefined;
1137
+ }>;
1138
+ MATCHING_APEX_LOCATIONS: z.ZodObject<{
1139
+ error_message: z.ZodOptional<z.ZodString>;
1140
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1141
+ } & {
1142
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_APEX_LOCATIONS", "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP", "MATCHING_APEX_LOCATIONS"]>;
1143
+ }, "strict", z.ZodTypeAny, {
1144
+ grade: "error" | "pass" | "fail" | "skip";
1145
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
1146
+ error_message?: string | undefined;
1147
+ }, {
1148
+ grade: "error" | "pass" | "fail" | "skip";
1149
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
1150
+ error_message?: string | undefined;
1151
+ }>;
1152
+ MATCHING_VEHICLE_IDS: z.ZodObject<{
1153
+ error_message: z.ZodOptional<z.ZodString>;
1154
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1155
+ } & {
1156
+ reason: z.ZodEnum<["MATCHING_VEHICLE_IDS", "VEHICLE_ID_MISMATCH", "NO_VEHICLE_EVENTS", "NO_APEX_TRANSACTIONS"]>;
1157
+ }, "strict", z.ZodTypeAny, {
1158
+ grade: "error" | "pass" | "fail" | "skip";
1159
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
1160
+ error_message?: string | undefined;
1161
+ }, {
1162
+ grade: "error" | "pass" | "fail" | "skip";
1163
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
1164
+ error_message?: string | undefined;
1165
+ }>;
1166
+ SIMPLE_ONE_APEX_VALIDATION: z.ZodObject<{
1167
+ error_message: z.ZodOptional<z.ZodString>;
1168
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1169
+ } & {
1170
+ reason: z.ZodEnum<["NO_APEX_VALIDATIONS", "ONE_OR_MORE_APEX_VALIDATIONS"]>;
1171
+ value: z.ZodNullable<z.ZodNumber>;
1172
+ }, "strict", z.ZodTypeAny, {
1173
+ value: number | null;
1174
+ grade: "error" | "pass" | "fail" | "skip";
1175
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
1176
+ error_message?: string | undefined;
1177
+ }, {
1178
+ value: number | null;
1179
+ grade: "error" | "pass" | "fail" | "skip";
1180
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
1181
+ error_message?: string | undefined;
1182
+ }>;
1183
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: z.ZodObject<{
1184
+ error_message: z.ZodOptional<z.ZodString>;
1185
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1186
+ } & {
1187
+ reason: z.ZodEnum<["NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS", "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION"]>;
1188
+ }, "strict", z.ZodTypeAny, {
1189
+ grade: "error" | "pass" | "fail" | "skip";
1190
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
1191
+ error_message?: string | undefined;
1192
+ }, {
1193
+ grade: "error" | "pass" | "fail" | "skip";
1194
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
1195
+ error_message?: string | undefined;
1196
+ }>;
1197
+ SIMPLE_THREE_VEHICLE_EVENTS: z.ZodObject<{
1198
+ error_message: z.ZodOptional<z.ZodString>;
1199
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1200
+ } & {
1201
+ reason: z.ZodEnum<["NO_PATH_DATA", "NO_VEHICLE_EVENTS", "MISSING_FIRST_STOPS", "MISSING_MIDDLE_STOPS", "MISSING_LAST_STOPS", "ALL_STOPS_FOUND"]>;
1202
+ stop_ids_first: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
1203
+ stop_ids_last: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
1204
+ stop_ids_middle: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
1205
+ }, "strict", z.ZodTypeAny, {
1206
+ grade: "error" | "pass" | "fail" | "skip";
1207
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
1208
+ stop_ids_first: string[] | null;
1209
+ stop_ids_last: string[] | null;
1210
+ stop_ids_middle: string[] | null;
1211
+ error_message?: string | undefined;
1212
+ }, {
1213
+ grade: "error" | "pass" | "fail" | "skip";
1214
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
1215
+ stop_ids_first: string[] | null;
1216
+ stop_ids_last: string[] | null;
1217
+ stop_ids_middle: string[] | null;
1218
+ error_message?: string | undefined;
1219
+ }>;
1220
+ TRANSACTION_SEQUENTIALITY: z.ZodObject<{
1221
+ error_message: z.ZodOptional<z.ZodString>;
1222
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1223
+ } & {
1224
+ expected_qty: z.ZodNullable<z.ZodNumber>;
1225
+ found_qty: z.ZodNullable<z.ZodNumber>;
1226
+ missing_qty: z.ZodNullable<z.ZodNumber>;
1227
+ reason: z.ZodEnum<["NO_TRANSACTIONS", "MISSING_TRANSACTIONS", "ALL_TRANSACTIONS_RECEIVED"]>;
1228
+ }, "strict", z.ZodTypeAny, {
1229
+ grade: "error" | "pass" | "fail" | "skip";
1230
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
1231
+ expected_qty: number | null;
1232
+ found_qty: number | null;
1233
+ missing_qty: number | null;
1234
+ error_message?: string | undefined;
1235
+ }, {
1236
+ grade: "error" | "pass" | "fail" | "skip";
1237
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
1238
+ expected_qty: number | null;
1239
+ found_qty: number | null;
1240
+ missing_qty: number | null;
1241
+ error_message?: string | undefined;
1242
+ }>;
1243
+ }, "strip", z.ZodTypeAny, {
1244
+ EXPECTED_DRIVER_ID_QTY: {
1245
+ value: number | null;
1246
+ grade: "error" | "pass" | "fail" | "skip";
1247
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
1248
+ error_message?: string | undefined;
1249
+ };
1250
+ EXPECTED_VEHICLE_ID_QTY: {
1251
+ value: number | null;
1252
+ grade: "error" | "pass" | "fail" | "skip";
1253
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
1254
+ error_message?: string | undefined;
1255
+ };
1256
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
1257
+ value: number | null;
1258
+ grade: "error" | "pass" | "fail" | "skip";
1259
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
1260
+ error_message?: string | undefined;
1261
+ };
1262
+ ENDED_AT_LAST_STOP: {
1263
+ grade: "error" | "pass" | "fail" | "skip";
1264
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
1265
+ error_message?: string | undefined;
1266
+ };
1267
+ EXPECTED_VEHICLE_EVENT_QTY: {
1268
+ grade: "error" | "pass" | "fail" | "skip";
1269
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
1270
+ expected_qty: number | null;
1271
+ found_qty: number | null;
1272
+ error_message?: string | undefined;
1273
+ };
1274
+ MATCHING_APEX_LOCATIONS: {
1275
+ grade: "error" | "pass" | "fail" | "skip";
1276
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
1277
+ error_message?: string | undefined;
1278
+ };
1279
+ MATCHING_VEHICLE_IDS: {
1280
+ grade: "error" | "pass" | "fail" | "skip";
1281
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
1282
+ error_message?: string | undefined;
1283
+ };
1284
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
1285
+ value: number | null;
1286
+ grade: "error" | "pass" | "fail" | "skip";
1287
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
1288
+ error_message?: string | undefined;
1289
+ };
1290
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
1291
+ grade: "error" | "pass" | "fail" | "skip";
1292
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
1293
+ error_message?: string | undefined;
1294
+ };
1295
+ EXPECTED_START_TIME: {
1296
+ value: number | null;
1297
+ grade: "error" | "pass" | "fail" | "skip";
1298
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
1299
+ error_message?: string | undefined;
1300
+ };
1301
+ EXPECTED_VEHICLE_EVENT_DELAY: {
1302
+ value: number | null;
1303
+ grade: "error" | "pass" | "fail" | "skip";
1304
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
1305
+ error_message?: string | undefined;
1306
+ };
1307
+ SIMPLE_ONE_APEX_VALIDATION: {
1308
+ value: number | null;
1309
+ grade: "error" | "pass" | "fail" | "skip";
1310
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
1311
+ error_message?: string | undefined;
1312
+ };
1313
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
1314
+ grade: "error" | "pass" | "fail" | "skip";
1315
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
1316
+ error_message?: string | undefined;
1317
+ };
1318
+ SIMPLE_THREE_VEHICLE_EVENTS: {
1319
+ grade: "error" | "pass" | "fail" | "skip";
1320
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
1321
+ stop_ids_first: string[] | null;
1322
+ stop_ids_last: string[] | null;
1323
+ stop_ids_middle: string[] | null;
1324
+ error_message?: string | undefined;
1325
+ };
1326
+ TRANSACTION_SEQUENTIALITY: {
1327
+ grade: "error" | "pass" | "fail" | "skip";
1328
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
1329
+ expected_qty: number | null;
1330
+ found_qty: number | null;
1331
+ missing_qty: number | null;
1332
+ error_message?: string | undefined;
1333
+ };
1334
+ }, {
1335
+ EXPECTED_DRIVER_ID_QTY: {
1336
+ value: number | null;
1337
+ grade: "error" | "pass" | "fail" | "skip";
1338
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
1339
+ error_message?: string | undefined;
1340
+ };
1341
+ EXPECTED_VEHICLE_ID_QTY: {
1342
+ value: number | null;
1343
+ grade: "error" | "pass" | "fail" | "skip";
1344
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
1345
+ error_message?: string | undefined;
1346
+ };
1347
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
1348
+ value: number | null;
1349
+ grade: "error" | "pass" | "fail" | "skip";
1350
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
1351
+ error_message?: string | undefined;
1352
+ };
1353
+ ENDED_AT_LAST_STOP: {
1354
+ grade: "error" | "pass" | "fail" | "skip";
1355
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
1356
+ error_message?: string | undefined;
1357
+ };
1358
+ EXPECTED_VEHICLE_EVENT_QTY: {
1359
+ grade: "error" | "pass" | "fail" | "skip";
1360
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
1361
+ expected_qty: number | null;
1362
+ found_qty: number | null;
1363
+ error_message?: string | undefined;
1364
+ };
1365
+ MATCHING_APEX_LOCATIONS: {
1366
+ grade: "error" | "pass" | "fail" | "skip";
1367
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
1368
+ error_message?: string | undefined;
1369
+ };
1370
+ MATCHING_VEHICLE_IDS: {
1371
+ grade: "error" | "pass" | "fail" | "skip";
1372
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
1373
+ error_message?: string | undefined;
1374
+ };
1375
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
1376
+ value: number | null;
1377
+ grade: "error" | "pass" | "fail" | "skip";
1378
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
1379
+ error_message?: string | undefined;
1380
+ };
1381
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
1382
+ grade: "error" | "pass" | "fail" | "skip";
1383
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
1384
+ error_message?: string | undefined;
1385
+ };
1386
+ EXPECTED_START_TIME: {
1387
+ value: number | null;
1388
+ grade: "error" | "pass" | "fail" | "skip";
1389
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
1390
+ error_message?: string | undefined;
1391
+ };
1392
+ EXPECTED_VEHICLE_EVENT_DELAY: {
1393
+ value: number | null;
1394
+ grade: "error" | "pass" | "fail" | "skip";
1395
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
1396
+ error_message?: string | undefined;
1397
+ };
1398
+ SIMPLE_ONE_APEX_VALIDATION: {
1399
+ value: number | null;
1400
+ grade: "error" | "pass" | "fail" | "skip";
1401
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
1402
+ error_message?: string | undefined;
1403
+ };
1404
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
1405
+ grade: "error" | "pass" | "fail" | "skip";
1406
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
1407
+ error_message?: string | undefined;
1408
+ };
1409
+ SIMPLE_THREE_VEHICLE_EVENTS: {
1410
+ grade: "error" | "pass" | "fail" | "skip";
1411
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
1412
+ stop_ids_first: string[] | null;
1413
+ stop_ids_last: string[] | null;
1414
+ stop_ids_middle: string[] | null;
1415
+ error_message?: string | undefined;
1416
+ };
1417
+ TRANSACTION_SEQUENTIALITY: {
1418
+ grade: "error" | "pass" | "fail" | "skip";
1419
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
1420
+ expected_qty: number | null;
1421
+ found_qty: number | null;
1422
+ missing_qty: number | null;
1423
+ error_message?: string | undefined;
1424
+ };
1425
+ }>>;
1426
+ analysisSummary: z.ZodObject<{
507
1427
  error_message: z.ZodOptional<z.ZodString>;
508
1428
  grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
509
1429
  reason: z.ZodString;
@@ -533,20 +1453,6 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
533
1453
  type: "note";
534
1454
  created_by?: string | undefined;
535
1455
  updated_by?: string | undefined;
536
- metadata?: Record<string, unknown> | null | undefined;
537
- } | {
538
- _id: string;
539
- created_at: number & {
540
- __brand: "UnixTimestamp";
541
- };
542
- created_by: "system";
543
- updated_at: number & {
544
- __brand: "UnixTimestamp";
545
- };
546
- updated_by: "system";
547
- message: string;
548
- type: "system_info";
549
- metadata?: Record<string, unknown> | null | undefined;
550
1456
  } | {
551
1457
  _id: string;
552
1458
  created_at: number & {
@@ -555,17 +1461,109 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
555
1461
  updated_at: number & {
556
1462
  __brand: "UnixTimestamp";
557
1463
  };
558
- type: "status_changed";
559
- accessor: string;
560
- curr_status: string | boolean;
561
- prev_status: string | boolean;
1464
+ type: "field_changed";
1465
+ field: string;
562
1466
  created_by?: string | undefined;
563
1467
  updated_by?: string | undefined;
1468
+ curr_value?: any;
564
1469
  metadata?: Record<string, unknown> | null | undefined;
1470
+ prev_value?: any;
565
1471
  })[];
566
1472
  acceptance_status: "accepted" | "justification_required" | "under_review" | "rejected";
567
1473
  pto_message: string;
568
1474
  analysis: {
1475
+ EXPECTED_DRIVER_ID_QTY: {
1476
+ value: number | null;
1477
+ grade: "error" | "pass" | "fail" | "skip";
1478
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
1479
+ error_message?: string | undefined;
1480
+ };
1481
+ EXPECTED_VEHICLE_ID_QTY: {
1482
+ value: number | null;
1483
+ grade: "error" | "pass" | "fail" | "skip";
1484
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
1485
+ error_message?: string | undefined;
1486
+ };
1487
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
1488
+ value: number | null;
1489
+ grade: "error" | "pass" | "fail" | "skip";
1490
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
1491
+ error_message?: string | undefined;
1492
+ };
1493
+ ENDED_AT_LAST_STOP: {
1494
+ grade: "error" | "pass" | "fail" | "skip";
1495
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
1496
+ error_message?: string | undefined;
1497
+ };
1498
+ EXPECTED_VEHICLE_EVENT_QTY: {
1499
+ grade: "error" | "pass" | "fail" | "skip";
1500
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
1501
+ expected_qty: number | null;
1502
+ found_qty: number | null;
1503
+ error_message?: string | undefined;
1504
+ };
1505
+ MATCHING_APEX_LOCATIONS: {
1506
+ grade: "error" | "pass" | "fail" | "skip";
1507
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
1508
+ error_message?: string | undefined;
1509
+ };
1510
+ MATCHING_VEHICLE_IDS: {
1511
+ grade: "error" | "pass" | "fail" | "skip";
1512
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
1513
+ error_message?: string | undefined;
1514
+ };
1515
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
1516
+ value: number | null;
1517
+ grade: "error" | "pass" | "fail" | "skip";
1518
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
1519
+ error_message?: string | undefined;
1520
+ };
1521
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
1522
+ grade: "error" | "pass" | "fail" | "skip";
1523
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
1524
+ error_message?: string | undefined;
1525
+ };
1526
+ EXPECTED_START_TIME: {
1527
+ value: number | null;
1528
+ grade: "error" | "pass" | "fail" | "skip";
1529
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
1530
+ error_message?: string | undefined;
1531
+ };
1532
+ EXPECTED_VEHICLE_EVENT_DELAY: {
1533
+ value: number | null;
1534
+ grade: "error" | "pass" | "fail" | "skip";
1535
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
1536
+ error_message?: string | undefined;
1537
+ };
1538
+ SIMPLE_ONE_APEX_VALIDATION: {
1539
+ value: number | null;
1540
+ grade: "error" | "pass" | "fail" | "skip";
1541
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
1542
+ error_message?: string | undefined;
1543
+ };
1544
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
1545
+ grade: "error" | "pass" | "fail" | "skip";
1546
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
1547
+ error_message?: string | undefined;
1548
+ };
1549
+ SIMPLE_THREE_VEHICLE_EVENTS: {
1550
+ grade: "error" | "pass" | "fail" | "skip";
1551
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
1552
+ stop_ids_first: string[] | null;
1553
+ stop_ids_last: string[] | null;
1554
+ stop_ids_middle: string[] | null;
1555
+ error_message?: string | undefined;
1556
+ };
1557
+ TRANSACTION_SEQUENTIALITY: {
1558
+ grade: "error" | "pass" | "fail" | "skip";
1559
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
1560
+ expected_qty: number | null;
1561
+ found_qty: number | null;
1562
+ missing_qty: number | null;
1563
+ error_message?: string | undefined;
1564
+ };
1565
+ } | null;
1566
+ analysisSummary: {
569
1567
  grade: "error" | "pass" | "fail" | "skip";
570
1568
  reason: string;
571
1569
  error_message?: string | undefined;
@@ -579,6 +1577,98 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
579
1577
  }, {
580
1578
  acceptance_status: "accepted" | "justification_required" | "under_review" | "rejected";
581
1579
  analysis: {
1580
+ EXPECTED_DRIVER_ID_QTY: {
1581
+ value: number | null;
1582
+ grade: "error" | "pass" | "fail" | "skip";
1583
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_DRIVER_ID_QTY" | "EXPECTED_DRIVER_ID_QTY";
1584
+ error_message?: string | undefined;
1585
+ };
1586
+ EXPECTED_VEHICLE_ID_QTY: {
1587
+ value: number | null;
1588
+ grade: "error" | "pass" | "fail" | "skip";
1589
+ reason: "NO_VEHICLE_EVENTS" | "NO_APEX_VALIDATIONS" | "UNEXPECTED_VEHICLE_ID_QTY" | "EXPECTED_VEHICLE_ID_QTY";
1590
+ error_message?: string | undefined;
1591
+ };
1592
+ EXPECTED_VEHICLE_EVENT_INTERVAL: {
1593
+ value: number | null;
1594
+ grade: "error" | "pass" | "fail" | "skip";
1595
+ reason: "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_INTERVAL" | "UNEXPECTED_VEHICLE_EVENT_INTERVAL";
1596
+ error_message?: string | undefined;
1597
+ };
1598
+ ENDED_AT_LAST_STOP: {
1599
+ grade: "error" | "pass" | "fail" | "skip";
1600
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "ENDED_AT_LAST_STOP" | "ENDED_OUTSIDE_OF_LAST_STOP";
1601
+ error_message?: string | undefined;
1602
+ };
1603
+ EXPECTED_VEHICLE_EVENT_QTY: {
1604
+ grade: "error" | "pass" | "fail" | "skip";
1605
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "EXPECTED_VEHICLE_EVENT_QTY" | "UNEXPECTED_VEHICLE_EVENT_QTY";
1606
+ expected_qty: number | null;
1607
+ found_qty: number | null;
1608
+ error_message?: string | undefined;
1609
+ };
1610
+ MATCHING_APEX_LOCATIONS: {
1611
+ grade: "error" | "pass" | "fail" | "skip";
1612
+ reason: "NO_PATH_DATA" | "NO_APEX_LOCATIONS" | "MISSING_APEX_LOCATION_FOR_AT_LEAST_ONE_STOP" | "MATCHING_APEX_LOCATIONS";
1613
+ error_message?: string | undefined;
1614
+ };
1615
+ MATCHING_VEHICLE_IDS: {
1616
+ grade: "error" | "pass" | "fail" | "skip";
1617
+ reason: "NO_VEHICLE_EVENTS" | "MATCHING_VEHICLE_IDS" | "VEHICLE_ID_MISMATCH" | "NO_APEX_TRANSACTIONS";
1618
+ error_message?: string | undefined;
1619
+ };
1620
+ AT_LEAST_ONE_VEHICLE_EVENT_ON_FIRST_STOP: {
1621
+ value: number | null;
1622
+ grade: "error" | "pass" | "fail" | "skip";
1623
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "NO_VEHICLE_EVENTS_ON_FIRST_STOP" | "ONE_OR_MORE_VEHICLE_EVENTS_ON_FIRST_STOP";
1624
+ error_message?: string | undefined;
1625
+ };
1626
+ EXPECTED_APEX_VALIDATION_INTERVAL: {
1627
+ grade: "error" | "pass" | "fail" | "skip";
1628
+ reason: "NO_APEX_VALIDATIONS" | "NOT_ENOUGH_VALIDATIONS" | "INTERVALS_TOO_SHORT" | "NON_ORGANIC_INTERVALS" | "EXPECTED_VALIDATION_INTERVALS";
1629
+ error_message?: string | undefined;
1630
+ };
1631
+ EXPECTED_START_TIME: {
1632
+ value: number | null;
1633
+ grade: "error" | "pass" | "fail" | "skip";
1634
+ reason: "NO_VEHICLE_EVENTS" | "NO_START_TIME_SCHEDULED" | "UNKNOWN_START" | "EARLY_START" | "LATE_START" | "START_ON_TIME";
1635
+ error_message?: string | undefined;
1636
+ };
1637
+ EXPECTED_VEHICLE_EVENT_DELAY: {
1638
+ value: number | null;
1639
+ grade: "error" | "pass" | "fail" | "skip";
1640
+ reason: "NO_VEHICLE_EVENTS" | "UNEXPECTED_VEHICLE_EVENTS_DELAY" | "EXPECTED_VEHICLE_EVENTS_DELAY";
1641
+ error_message?: string | undefined;
1642
+ };
1643
+ SIMPLE_ONE_APEX_VALIDATION: {
1644
+ value: number | null;
1645
+ grade: "error" | "pass" | "fail" | "skip";
1646
+ reason: "NO_APEX_VALIDATIONS" | "ONE_OR_MORE_APEX_VALIDATIONS";
1647
+ error_message?: string | undefined;
1648
+ };
1649
+ SIMPLE_ONE_VEHICLE_EVENT_OR_APEX_VALIDATION: {
1650
+ grade: "error" | "pass" | "fail" | "skip";
1651
+ reason: "NO_VEHICLE_EVENTS_OR_APEX_VALIDATIONS" | "FOUND_VEHICLE_EVENT_OR_APEX_VALIDATION";
1652
+ error_message?: string | undefined;
1653
+ };
1654
+ SIMPLE_THREE_VEHICLE_EVENTS: {
1655
+ grade: "error" | "pass" | "fail" | "skip";
1656
+ reason: "NO_PATH_DATA" | "NO_VEHICLE_EVENTS" | "MISSING_FIRST_STOPS" | "MISSING_MIDDLE_STOPS" | "MISSING_LAST_STOPS" | "ALL_STOPS_FOUND";
1657
+ stop_ids_first: string[] | null;
1658
+ stop_ids_last: string[] | null;
1659
+ stop_ids_middle: string[] | null;
1660
+ error_message?: string | undefined;
1661
+ };
1662
+ TRANSACTION_SEQUENTIALITY: {
1663
+ grade: "error" | "pass" | "fail" | "skip";
1664
+ reason: "NO_TRANSACTIONS" | "MISSING_TRANSACTIONS" | "ALL_TRANSACTIONS_RECEIVED";
1665
+ expected_qty: number | null;
1666
+ found_qty: number | null;
1667
+ missing_qty: number | null;
1668
+ error_message?: string | undefined;
1669
+ };
1670
+ } | null;
1671
+ analysisSummary: {
582
1672
  grade: "error" | "pass" | "fail" | "skip";
583
1673
  reason: string;
584
1674
  error_message?: string | undefined;
@@ -598,27 +1688,17 @@ export declare const CreateRideJustificationSchema: z.ZodObject<Omit<{
598
1688
  type: "note";
599
1689
  created_by?: string | undefined;
600
1690
  updated_by?: string | undefined;
601
- metadata?: Record<string, unknown> | null | undefined;
602
1691
  } | {
603
1692
  _id: string;
604
1693
  created_at: number;
605
- created_by: "system";
606
1694
  updated_at: number;
607
- updated_by: "system";
608
- message: string;
609
- type: "system_info";
610
- metadata?: Record<string, unknown> | null | undefined;
611
- } | {
612
- _id: string;
613
- created_at: number;
614
- updated_at: number;
615
- type: "status_changed";
616
- accessor: string;
617
- curr_status: string | boolean;
618
- prev_status: string | boolean;
1695
+ type: "field_changed";
1696
+ field: string;
619
1697
  created_by?: string | undefined;
620
1698
  updated_by?: string | undefined;
1699
+ curr_value?: any;
621
1700
  metadata?: Record<string, unknown> | null | undefined;
1701
+ prev_value?: any;
622
1702
  })[] | undefined;
623
1703
  pto_message?: string | undefined;
624
1704
  }>;
@@ -634,7 +1714,6 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
634
1714
  updated_by: z.ZodOptional<z.ZodString>;
635
1715
  } & {
636
1716
  message: z.ZodString;
637
- metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
638
1717
  type: z.ZodLiteral<"note">;
639
1718
  }, "strip", z.ZodTypeAny, {
640
1719
  _id: string;
@@ -648,7 +1727,6 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
648
1727
  type: "note";
649
1728
  created_by?: string | undefined;
650
1729
  updated_by?: string | undefined;
651
- metadata?: Record<string, unknown> | null | undefined;
652
1730
  }, {
653
1731
  _id: string;
654
1732
  created_at: number;
@@ -657,39 +1735,6 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
657
1735
  type: "note";
658
1736
  created_by?: string | undefined;
659
1737
  updated_by?: string | undefined;
660
- metadata?: Record<string, unknown> | null | undefined;
661
- }>, z.ZodObject<{
662
- _id: z.ZodString;
663
- created_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
664
- updated_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
665
- } & {
666
- created_by: z.ZodLiteral<"system">;
667
- message: z.ZodString;
668
- metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
669
- type: z.ZodLiteral<"system_info">;
670
- updated_by: z.ZodLiteral<"system">;
671
- }, "strip", z.ZodTypeAny, {
672
- _id: string;
673
- created_at: number & {
674
- __brand: "UnixTimestamp";
675
- };
676
- created_by: "system";
677
- updated_at: number & {
678
- __brand: "UnixTimestamp";
679
- };
680
- updated_by: "system";
681
- message: string;
682
- type: "system_info";
683
- metadata?: Record<string, unknown> | null | undefined;
684
- }, {
685
- _id: string;
686
- created_at: number;
687
- created_by: "system";
688
- updated_at: number;
689
- updated_by: "system";
690
- message: string;
691
- type: "system_info";
692
- metadata?: Record<string, unknown> | null | undefined;
693
1738
  }>, z.ZodObject<{
694
1739
  _id: z.ZodString;
695
1740
  created_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
@@ -697,11 +1742,11 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
697
1742
  updated_at: z.ZodEffects<z.ZodNumber, import("../_common/unix-timestamp.js").UnixTimestamp, number>;
698
1743
  updated_by: z.ZodOptional<z.ZodString>;
699
1744
  } & {
700
- accessor: z.ZodString;
701
- curr_status: z.ZodUnion<[z.ZodString, z.ZodBoolean]>;
1745
+ curr_value: z.ZodAny;
1746
+ field: z.ZodString;
702
1747
  metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
703
- prev_status: z.ZodUnion<[z.ZodString, z.ZodBoolean]>;
704
- type: z.ZodLiteral<"status_changed">;
1748
+ prev_value: z.ZodAny;
1749
+ type: z.ZodLiteral<"field_changed">;
705
1750
  }, "strip", z.ZodTypeAny, {
706
1751
  _id: string;
707
1752
  created_at: number & {
@@ -710,24 +1755,24 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
710
1755
  updated_at: number & {
711
1756
  __brand: "UnixTimestamp";
712
1757
  };
713
- type: "status_changed";
714
- accessor: string;
715
- curr_status: string | boolean;
716
- prev_status: string | boolean;
1758
+ type: "field_changed";
1759
+ field: string;
717
1760
  created_by?: string | undefined;
718
1761
  updated_by?: string | undefined;
1762
+ curr_value?: any;
719
1763
  metadata?: Record<string, unknown> | null | undefined;
1764
+ prev_value?: any;
720
1765
  }, {
721
1766
  _id: string;
722
1767
  created_at: number;
723
1768
  updated_at: number;
724
- type: "status_changed";
725
- accessor: string;
726
- curr_status: string | boolean;
727
- prev_status: string | boolean;
1769
+ type: "field_changed";
1770
+ field: string;
728
1771
  created_by?: string | undefined;
729
1772
  updated_by?: string | undefined;
1773
+ curr_value?: any;
730
1774
  metadata?: Record<string, unknown> | null | undefined;
1775
+ prev_value?: any;
731
1776
  }>]>, {
732
1777
  _id: string;
733
1778
  created_at: number & {
@@ -740,20 +1785,6 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
740
1785
  type: "note";
741
1786
  created_by?: string | undefined;
742
1787
  updated_by?: string | undefined;
743
- metadata?: Record<string, unknown> | null | undefined;
744
- } | {
745
- _id: string;
746
- created_at: number & {
747
- __brand: "UnixTimestamp";
748
- };
749
- created_by: "system";
750
- updated_at: number & {
751
- __brand: "UnixTimestamp";
752
- };
753
- updated_by: "system";
754
- message: string;
755
- type: "system_info";
756
- metadata?: Record<string, unknown> | null | undefined;
757
1788
  } | {
758
1789
  _id: string;
759
1790
  created_at: number & {
@@ -762,13 +1793,13 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
762
1793
  updated_at: number & {
763
1794
  __brand: "UnixTimestamp";
764
1795
  };
765
- type: "status_changed";
766
- accessor: string;
767
- curr_status: string | boolean;
768
- prev_status: string | boolean;
1796
+ type: "field_changed";
1797
+ field: string;
769
1798
  created_by?: string | undefined;
770
1799
  updated_by?: string | undefined;
1800
+ curr_value?: any;
771
1801
  metadata?: Record<string, unknown> | null | undefined;
1802
+ prev_value?: any;
772
1803
  }, {
773
1804
  _id: string;
774
1805
  created_at: number;
@@ -777,30 +1808,33 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
777
1808
  type: "note";
778
1809
  created_by?: string | undefined;
779
1810
  updated_by?: string | undefined;
780
- metadata?: Record<string, unknown> | null | undefined;
781
1811
  } | {
782
1812
  _id: string;
783
1813
  created_at: number;
784
- created_by: "system";
785
1814
  updated_at: number;
786
- updated_by: "system";
787
- message: string;
788
- type: "system_info";
789
- metadata?: Record<string, unknown> | null | undefined;
790
- } | {
791
- _id: string;
792
- created_at: number;
793
- updated_at: number;
794
- type: "status_changed";
795
- accessor: string;
796
- curr_status: string | boolean;
797
- prev_status: string | boolean;
1815
+ type: "field_changed";
1816
+ field: string;
798
1817
  created_by?: string | undefined;
799
1818
  updated_by?: string | undefined;
1819
+ curr_value?: any;
800
1820
  metadata?: Record<string, unknown> | null | undefined;
1821
+ prev_value?: any;
801
1822
  }>, "many">>>;
802
1823
  acceptance_status: z.ZodOptional<z.ZodEnum<["justification_required", "under_review", "accepted", "rejected"]>>;
803
1824
  pto_message: z.ZodOptional<z.ZodDefault<z.ZodString>>;
1825
+ analysisSummary: z.ZodOptional<z.ZodObject<{
1826
+ error_message: z.ZodOptional<z.ZodString>;
1827
+ grade: z.ZodEnum<["pass", "fail", "skip", "error"]>;
1828
+ reason: z.ZodString;
1829
+ }, "strict", z.ZodTypeAny, {
1830
+ grade: "error" | "pass" | "fail" | "skip";
1831
+ reason: string;
1832
+ error_message?: string | undefined;
1833
+ }, {
1834
+ grade: "error" | "pass" | "fail" | "skip";
1835
+ reason: string;
1836
+ error_message?: string | undefined;
1837
+ }>>;
804
1838
  justification_cause: z.ZodOptional<z.ZodEnum<["TECHNICAL_PROBLEM", "DEMONSTRATION", "ACCIDENT", "WEATHER", "CONSTRUCTION", "POLICE_ACTIVITY", "MEDICAL_EMERGENCY", "OTHER_CAUSE"]>>;
805
1839
  trip_id: z.ZodOptional<z.ZodString>;
806
1840
  }, "strict", z.ZodTypeAny, {
@@ -819,20 +1853,6 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
819
1853
  type: "note";
820
1854
  created_by?: string | undefined;
821
1855
  updated_by?: string | undefined;
822
- metadata?: Record<string, unknown> | null | undefined;
823
- } | {
824
- _id: string;
825
- created_at: number & {
826
- __brand: "UnixTimestamp";
827
- };
828
- created_by: "system";
829
- updated_at: number & {
830
- __brand: "UnixTimestamp";
831
- };
832
- updated_by: "system";
833
- message: string;
834
- type: "system_info";
835
- metadata?: Record<string, unknown> | null | undefined;
836
1856
  } | {
837
1857
  _id: string;
838
1858
  created_at: number & {
@@ -841,16 +1861,21 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
841
1861
  updated_at: number & {
842
1862
  __brand: "UnixTimestamp";
843
1863
  };
844
- type: "status_changed";
845
- accessor: string;
846
- curr_status: string | boolean;
847
- prev_status: string | boolean;
1864
+ type: "field_changed";
1865
+ field: string;
848
1866
  created_by?: string | undefined;
849
1867
  updated_by?: string | undefined;
1868
+ curr_value?: any;
850
1869
  metadata?: Record<string, unknown> | null | undefined;
1870
+ prev_value?: any;
851
1871
  })[] | undefined;
852
1872
  acceptance_status?: "accepted" | "justification_required" | "under_review" | "rejected" | undefined;
853
1873
  pto_message?: string | undefined;
1874
+ analysisSummary?: {
1875
+ grade: "error" | "pass" | "fail" | "skip";
1876
+ reason: string;
1877
+ error_message?: string | undefined;
1878
+ } | undefined;
854
1879
  justification_cause?: "ACCIDENT" | "CONSTRUCTION" | "DEMONSTRATION" | "MEDICAL_EMERGENCY" | "OTHER_CAUSE" | "POLICE_ACTIVITY" | "TECHNICAL_PROBLEM" | "WEATHER" | undefined;
855
1880
  trip_id?: string | undefined;
856
1881
  }, {
@@ -865,30 +1890,25 @@ export declare const UpdateRideJustificationSchema: z.ZodObject<{
865
1890
  type: "note";
866
1891
  created_by?: string | undefined;
867
1892
  updated_by?: string | undefined;
868
- metadata?: Record<string, unknown> | null | undefined;
869
- } | {
870
- _id: string;
871
- created_at: number;
872
- created_by: "system";
873
- updated_at: number;
874
- updated_by: "system";
875
- message: string;
876
- type: "system_info";
877
- metadata?: Record<string, unknown> | null | undefined;
878
1893
  } | {
879
1894
  _id: string;
880
1895
  created_at: number;
881
1896
  updated_at: number;
882
- type: "status_changed";
883
- accessor: string;
884
- curr_status: string | boolean;
885
- prev_status: string | boolean;
1897
+ type: "field_changed";
1898
+ field: string;
886
1899
  created_by?: string | undefined;
887
1900
  updated_by?: string | undefined;
1901
+ curr_value?: any;
888
1902
  metadata?: Record<string, unknown> | null | undefined;
1903
+ prev_value?: any;
889
1904
  })[] | undefined;
890
1905
  acceptance_status?: "accepted" | "justification_required" | "under_review" | "rejected" | undefined;
891
1906
  pto_message?: string | undefined;
1907
+ analysisSummary?: {
1908
+ grade: "error" | "pass" | "fail" | "skip";
1909
+ reason: string;
1910
+ error_message?: string | undefined;
1911
+ } | undefined;
892
1912
  justification_cause?: "ACCIDENT" | "CONSTRUCTION" | "DEMONSTRATION" | "MEDICAL_EMERGENCY" | "OTHER_CAUSE" | "POLICE_ACTIVITY" | "TECHNICAL_PROBLEM" | "WEATHER" | undefined;
893
1913
  trip_id?: string | undefined;
894
1914
  }>;