evo360-types 1.3.413 → 1.3.415
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/apps/evo-campaigns/zod-schemas.d.ts +15 -3
- package/dist/apps/evo-campaigns/zod-schemas.js +5 -1
- package/dist/apps/evo-campaigns/zod-schemas.ts +5 -1
- package/dist/apps/evo-notifications/zod-schemas.d.ts +10 -0
- package/dist/apps/evo-notifications/zod-schemas.js +6 -0
- package/dist/apps/evo-notifications/zod-schemas.ts +6 -0
- package/dist/apps/evo-task/zod-schemas.d.ts +52 -52
- package/dist/apps/evo-task/zod-schemas.js +7 -0
- package/dist/apps/evo-task/zod-schemas.ts +7 -0
- package/dist/apps/hub-automation/zod-schemas.d.ts +175 -172
- package/dist/apps/hub-automation/zod-schemas.js +7 -0
- package/dist/apps/hub-automation/zod-schemas.ts +7 -0
- package/dist/types/evo-notifications/index.d.ts +7 -0
- package/dist/types/evo-notifications/index.ts +8 -0
- package/dist/types/evo-task/index.d.ts +2 -0
- package/dist/types/evo-task/index.js +6 -0
- package/dist/types/evo-task/index.ts +6 -0
- package/package.json +1 -1
|
@@ -206,10 +206,17 @@ exports.zAutomationDryRunRequestSchema = zod_1.z.object({
|
|
|
206
206
|
// Trigger request (endpoint POST /routines/:id/trigger)
|
|
207
207
|
// Same shape as the dry-run request — only an optional run_date; no
|
|
208
208
|
// calendar_ids override or arbitrary payload (F2 scope, see plan-f2 §1).
|
|
209
|
+
//
|
|
210
|
+
// Q22: `force` is the "hot resend" flag. When true the run pierces BOTH dedup
|
|
211
|
+
// layers: (1) creation — the materializer appends a per-run suffix to the
|
|
212
|
+
// idempotency key so a NEW task is always created; (2) send — the task carries
|
|
213
|
+
// `force_send` down to notification.send, which bypasses the dedup_key skip.
|
|
214
|
+
// Force pierces DEDUP only; opt-out and the Q11 dry-run gate stay intact.
|
|
209
215
|
// ------------------------------------------------------
|
|
210
216
|
exports.zAutomationTriggerRequestSchema = zod_1.z.object({
|
|
211
217
|
run_date: zod_1.z
|
|
212
218
|
.string()
|
|
213
219
|
.regex(/^\d{4}-\d{2}-\d{2}$/, "expected yyyy-MM-dd")
|
|
214
220
|
.optional(),
|
|
221
|
+
force: zod_1.z.boolean().optional().default(false),
|
|
215
222
|
});
|
|
@@ -242,10 +242,17 @@ export const zAutomationDryRunRequestSchema = z.object({
|
|
|
242
242
|
// Trigger request (endpoint POST /routines/:id/trigger)
|
|
243
243
|
// Same shape as the dry-run request — only an optional run_date; no
|
|
244
244
|
// calendar_ids override or arbitrary payload (F2 scope, see plan-f2 §1).
|
|
245
|
+
//
|
|
246
|
+
// Q22: `force` is the "hot resend" flag. When true the run pierces BOTH dedup
|
|
247
|
+
// layers: (1) creation — the materializer appends a per-run suffix to the
|
|
248
|
+
// idempotency key so a NEW task is always created; (2) send — the task carries
|
|
249
|
+
// `force_send` down to notification.send, which bypasses the dedup_key skip.
|
|
250
|
+
// Force pierces DEDUP only; opt-out and the Q11 dry-run gate stay intact.
|
|
245
251
|
// ------------------------------------------------------
|
|
246
252
|
export const zAutomationTriggerRequestSchema = z.object({
|
|
247
253
|
run_date: z
|
|
248
254
|
.string()
|
|
249
255
|
.regex(/^\d{4}-\d{2}-\d{2}$/, "expected yyyy-MM-dd")
|
|
250
256
|
.optional(),
|
|
257
|
+
force: z.boolean().optional().default(false),
|
|
251
258
|
});
|
|
@@ -126,6 +126,13 @@ export interface INotificationSendPayload {
|
|
|
126
126
|
idempotency_key?: string;
|
|
127
127
|
dedup_key?: string;
|
|
128
128
|
dedup_group_key?: string;
|
|
129
|
+
/**
|
|
130
|
+
* Q22 (hub-automation "hot resend"): when true, the send bypasses the
|
|
131
|
+
* dedup_key suppression — a fresh message doc is created and the provider is
|
|
132
|
+
* called even if a message with the same dedup_key already exists. Pierces
|
|
133
|
+
* DEDUP only; opt-out enforcement is unaffected. Defaults to false/absent.
|
|
134
|
+
*/
|
|
135
|
+
force_send?: boolean;
|
|
129
136
|
[key: string]: unknown;
|
|
130
137
|
}
|
|
131
138
|
export interface INotificationMessage extends IFireDoc {
|
|
@@ -224,6 +224,14 @@ export interface INotificationSendPayload {
|
|
|
224
224
|
dedup_key?: string;
|
|
225
225
|
dedup_group_key?: string;
|
|
226
226
|
|
|
227
|
+
/**
|
|
228
|
+
* Q22 (hub-automation "hot resend"): when true, the send bypasses the
|
|
229
|
+
* dedup_key suppression — a fresh message doc is created and the provider is
|
|
230
|
+
* called even if a message with the same dedup_key already exists. Pierces
|
|
231
|
+
* DEDUP only; opt-out enforcement is unaffected. Defaults to false/absent.
|
|
232
|
+
*/
|
|
233
|
+
force_send?: boolean;
|
|
234
|
+
|
|
227
235
|
[key: string]: unknown;
|
|
228
236
|
}
|
|
229
237
|
|
|
@@ -56,6 +56,8 @@ export declare const TaskAutoHandlerEnum: {
|
|
|
56
56
|
readonly AppointmentAction: "appointment_action";
|
|
57
57
|
readonly AppointmentReminder: "appointment_reminder";
|
|
58
58
|
readonly IntegrationsSyncRun: "evo-integrations.sync-run";
|
|
59
|
+
readonly CampaignMaterialize: "campaign.materialize";
|
|
60
|
+
readonly CampaignDispatchBatch: "campaign.dispatch_batch";
|
|
59
61
|
};
|
|
60
62
|
export type TaskAutoHandler = (typeof TaskAutoHandlerEnum)[keyof typeof TaskAutoHandlerEnum];
|
|
61
63
|
export declare const TaskRetryStrategyEnum: {
|
|
@@ -105,6 +105,12 @@ exports.TaskAutoHandlerEnum = {
|
|
|
105
105
|
// types/evo-integrations). Permite que o `/force` roteie pelo task-runner e
|
|
106
106
|
// herde retry/backoff/DLQ, em vez de montar a mensagem PubSub na mão.
|
|
107
107
|
IntegrationsSyncRun: "evo-integrations.sync-run",
|
|
108
|
+
// feat-081 F2: handlers do modulo de campanhas (padrao pontilhado da feat-078 —
|
|
109
|
+
// `resolveHandlerTopic` monta `campaign.materialize.execute_requests`, topico que
|
|
110
|
+
// a CF `campaign_materialize` ja escuta desde a F1, e
|
|
111
|
+
// `campaign.dispatch_batch.execute_requests` para a cadeia de lotes da F2).
|
|
112
|
+
CampaignMaterialize: "campaign.materialize",
|
|
113
|
+
CampaignDispatchBatch: "campaign.dispatch_batch",
|
|
108
114
|
};
|
|
109
115
|
// ----- Retry policy
|
|
110
116
|
exports.TaskRetryStrategyEnum = {
|
|
@@ -116,6 +116,12 @@ export const TaskAutoHandlerEnum = {
|
|
|
116
116
|
// types/evo-integrations). Permite que o `/force` roteie pelo task-runner e
|
|
117
117
|
// herde retry/backoff/DLQ, em vez de montar a mensagem PubSub na mão.
|
|
118
118
|
IntegrationsSyncRun: "evo-integrations.sync-run",
|
|
119
|
+
// feat-081 F2: handlers do modulo de campanhas (padrao pontilhado da feat-078 —
|
|
120
|
+
// `resolveHandlerTopic` monta `campaign.materialize.execute_requests`, topico que
|
|
121
|
+
// a CF `campaign_materialize` ja escuta desde a F1, e
|
|
122
|
+
// `campaign.dispatch_batch.execute_requests` para a cadeia de lotes da F2).
|
|
123
|
+
CampaignMaterialize: "campaign.materialize",
|
|
124
|
+
CampaignDispatchBatch: "campaign.dispatch_batch",
|
|
119
125
|
} as const;
|
|
120
126
|
|
|
121
127
|
export type TaskAutoHandler =
|