@automate.ax/api-contract 0.56.1 → 0.57.1

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/src/deployment.ts CHANGED
@@ -31,14 +31,7 @@ const GIT_SOURCE_SCHEMA = z.object({
31
31
  })
32
32
 
33
33
  export const deploymentContract = {
34
- cancel: oc
35
- .input(
36
- z.object({
37
- deploymentId: z.string(),
38
- projectId: z.string(),
39
- }),
40
- )
41
- .output(z.void()),
34
+ cancel: oc.input(z.object({ deploymentId: z.string() })).output(z.void()),
42
35
  create: oc
43
36
  .errors({ DEPLOYMENT_IN_PROGRESS: DEPLOYMENT_IN_PROGRESS_ERROR })
44
37
  .input(
@@ -71,47 +64,48 @@ export const deploymentContract = {
71
64
  }),
72
65
  )
73
66
  .output(z.object({ id: z.string() })),
74
- get: oc
75
- .input(
76
- z.object({
77
- deploymentId: z.string(),
78
- projectId: z.string(),
79
- }),
80
- )
81
- .output(
82
- z.object({
83
- automations: z
84
- .object({
85
- description: z.string(),
86
- id: z.string(),
87
- identityKey: z.string(),
88
- subscriptions: z
89
- .object({
90
- config: z.json(),
91
- eventType: z.string(),
92
- hookSlot: z.number().int().nonnegative(),
93
- })
94
- .array(),
95
- })
96
- .array(),
97
- createdAt: z.date(),
98
- id: z.string(),
99
- git: GIT_SOURCE_SCHEMA.nullable(),
100
- job: z
101
- .object({
102
- attempts: z.number().int().nonnegative(),
103
- error: z.string().nullable(),
104
- maxAttempts: z.number().int().positive(),
105
- nextRunAt: z.date(),
106
- })
107
- .nullable(),
108
- project: z.object({
67
+ get: oc.input(z.object({ deploymentId: z.string() })).output(
68
+ z.object({
69
+ automations: z
70
+ .object({
71
+ description: z.string(),
109
72
  id: z.string(),
110
- name: z.string(),
111
- }),
112
- status: DEPLOYMENT_STATUS_SCHEMA,
73
+ identityKey: z.string(),
74
+ scopes: z
75
+ .object({
76
+ name: z.string().optional(),
77
+ path: z.number().int().nonnegative().array().min(1),
78
+ presentation: z.enum(["collapsed", "expanded", "hidden"]),
79
+ })
80
+ .array(),
81
+ subscriptions: z
82
+ .object({
83
+ config: z.json(),
84
+ eventType: z.string(),
85
+ hookSlot: z.number().int().nonnegative(),
86
+ scopePath: z.number().int().nonnegative().array().default([]),
87
+ })
88
+ .array(),
89
+ })
90
+ .array(),
91
+ createdAt: z.date(),
92
+ id: z.string(),
93
+ git: GIT_SOURCE_SCHEMA.nullable(),
94
+ job: z
95
+ .object({
96
+ attempts: z.number().int().nonnegative(),
97
+ error: z.string().nullable(),
98
+ maxAttempts: z.number().int().positive(),
99
+ nextRunAt: z.date(),
100
+ })
101
+ .nullable(),
102
+ project: z.object({
103
+ id: z.string(),
104
+ name: z.string(),
113
105
  }),
114
- ),
106
+ status: DEPLOYMENT_STATUS_SCHEMA,
107
+ }),
108
+ ),
115
109
  redeploy: oc
116
110
  .errors({ DEPLOYMENT_IN_PROGRESS: DEPLOYMENT_IN_PROGRESS_ERROR })
117
111
  .input(
package/src/runtime.ts CHANGED
@@ -15,6 +15,12 @@ const SIGNAL_FAILURE_SCHEMA = z.object({
15
15
  })
16
16
 
17
17
  const OUTCOME_SEQUENCE_SCHEMA = z.number().int().positive()
18
+ const HOOK_SCOPE_PATH_SCHEMA = z
19
+ .number()
20
+ .int()
21
+ .nonnegative()
22
+ .array()
23
+ .default([])
18
24
 
19
25
  const AUTOMATION_INVOCATION_RUN_AT_SCHEMA = z.union([
20
26
  z.date(),
@@ -75,6 +81,7 @@ const ACTION_INVOCATION_BASE_SCHEMA = z.object({
75
81
  eventDependencyIds: z.string().array(),
76
82
  inputHash: z.string(),
77
83
  name: z.string(),
84
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
78
85
  signalDependencyIds: z.string().array(),
79
86
  slot: z.number().int().nonnegative(),
80
87
  })
@@ -124,17 +131,12 @@ const ACTION_RUN_INVOCATION_SCHEMA = z.union([
124
131
  const SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA = z.object({
125
132
  actionDependencyIds: z.string().array(),
126
133
  eventDependencyIds: z.string().array(),
134
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
127
135
  signalDependencyIds: z.string().array(),
128
136
  slot: z.number().int().nonnegative(),
129
137
  })
130
138
 
131
- const BUFFER_PARAMETER_DEPENDENCIES_SCHEMA = z.object({
132
- parameterActionDependencyIds: z.string().array(),
133
- parameterEventDependencyIds: z.string().array(),
134
- parameterSignalDependencyIds: z.string().array(),
135
- })
136
-
137
- const BUFFER_PRIMARY_POSITION_SCHEMA = z.enum(["first", "last"])
139
+ const COORDINATION_PRIMARY_POSITION_SCHEMA = z.enum(["first", "last"])
138
140
  const CORRELATION_STREAM_NAMES_SCHEMA = z
139
141
  .string()
140
142
  .min(1)
@@ -144,10 +146,11 @@ const CORRELATION_STREAM_NAMES_SCHEMA = z
144
146
  message: "Correlation stream names must be unique.",
145
147
  })
146
148
 
147
- const CORRELATION_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
149
+ const CORRELATION_OFFER_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
148
150
  key: encodableSchema,
149
151
  order: CORRELATION_STREAM_NAMES_SCHEMA.optional(),
150
152
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
153
+ policy: z.literal("correlate"),
151
154
  streamName: z.string().min(1),
152
155
  streamNames: CORRELATION_STREAM_NAMES_SCHEMA,
153
156
  ttl: z.union([z.string().min(1), z.number().nonnegative()]).optional(),
@@ -172,21 +175,23 @@ const CORRELATION_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
172
175
  }
173
176
  })
174
177
 
175
- const COLLECTION_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
178
+ const COLLECTION_OFFER_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
176
179
  count: z.number().int().positive(),
177
180
  key: encodableSchema,
178
181
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
179
- primaryPosition: BUFFER_PRIMARY_POSITION_SCHEMA,
182
+ policy: z.literal("collect"),
183
+ primaryPosition: COORDINATION_PRIMARY_POSITION_SCHEMA,
180
184
  ttl: z.union([z.string().min(1), z.number().nonnegative()]).optional(),
181
- }).extend(BUFFER_PARAMETER_DEPENDENCIES_SCHEMA.shape)
185
+ })
182
186
 
183
- const WINDOW_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
187
+ const WINDOW_OFFER_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
184
188
  duration: z.union([z.string().min(1), z.number().nonnegative()]),
185
189
  key: encodableSchema,
186
190
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
187
- primaryPosition: BUFFER_PRIMARY_POSITION_SCHEMA,
191
+ policy: z.literal("window"),
192
+ primaryPosition: COORDINATION_PRIMARY_POSITION_SCHEMA,
188
193
  ttl: z.union([z.string().min(1), z.number().nonnegative()]).optional(),
189
- }).extend(BUFFER_PARAMETER_DEPENDENCIES_SCHEMA.shape)
194
+ })
190
195
 
191
196
  const SIGNAL_INVOCATION_SCHEMA = z.union([
192
197
  SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
@@ -228,6 +233,7 @@ const ACTION_VALUE_OUTCOME_BASE_SCHEMA = z.object({
228
233
  actionInvocationId: z.string(),
229
234
  contextId: z.string(),
230
235
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
236
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
231
237
  slot: z.number().int(),
232
238
  })
233
239
 
@@ -255,6 +261,7 @@ const ACTION_VALUE_OUTCOME_SCHEMA = z.union([
255
261
  const SIGNAL_VALUE_OUTCOME_BASE_SCHEMA = z.object({
256
262
  contextId: z.string(),
257
263
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
264
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
258
265
  signalInvocationId: z.string(),
259
266
  slot: z.number().int(),
260
267
  })
@@ -266,8 +273,11 @@ const RUNTIME_CONTEXT_PARENT_SCHEMA = z.object({
266
273
  position: z.number().int().nonnegative(),
267
274
  })
268
275
 
269
- const BUFFER_VALUE_GROUP_SCHEMA = z.object({
270
- items: SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({ slot: true })
276
+ const COORDINATION_SELECTION_SCHEMA = z.object({
277
+ items: SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({
278
+ scopePath: true,
279
+ slot: true,
280
+ })
271
281
  .extend({ contextId: z.string() })
272
282
  .array(),
273
283
  signalInvocationId: z.string(),
@@ -291,7 +301,7 @@ const SIGNAL_VALUE_OUTCOME_SCHEMA = z.union([
291
301
 
292
302
  const RUNTIME_VALUE_CONTEXT_SCHEMA = z.object({
293
303
  actionOutputs: ACTION_VALUE_OUTCOME_SCHEMA.array(),
294
- bufferGroups: BUFFER_VALUE_GROUP_SCHEMA.array(),
304
+ coordinationSelections: COORDINATION_SELECTION_SCHEMA.array(),
295
305
  contextId: z.string(),
296
306
  contextParents: RUNTIME_CONTEXT_PARENT_SCHEMA.array(),
297
307
  events: z
@@ -300,6 +310,7 @@ const RUNTIME_VALUE_CONTEXT_SCHEMA = z.object({
300
310
  contextId: z.string(),
301
311
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
302
312
  payload: encodableSchema,
313
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
303
314
  slot: z.number().int(),
304
315
  })
305
316
  .array(),
@@ -315,6 +326,7 @@ const RUNTIME_RUN_CONTEXT_SCHEMA = z.object({
315
326
  automationEventId: z.string(),
316
327
  contextId: z.string(),
317
328
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
329
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
318
330
  slot: z.number().int(),
319
331
  })
320
332
  .array(),
@@ -325,11 +337,13 @@ const TARGET_ACTION_SCHEMA = z.union([
325
337
  z.object({
326
338
  context: RUNTIME_VALUE_CONTEXT_SCHEMA,
327
339
  id: z.string(),
340
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
328
341
  slot: z.number().int(),
329
342
  status: z.literal("pending"),
330
343
  }),
331
344
  z.object({
332
345
  id: z.string(),
346
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
333
347
  slot: z.number().int(),
334
348
  status: z.enum(["failed", "skipped", "succeeded"]),
335
349
  }),
@@ -475,11 +489,16 @@ export const runtimeContract = {
475
489
  .input(
476
490
  z.object({
477
491
  actionInvocations: ACTION_INVOCATION_SCHEMA.array().default([]),
478
- collectionEntries: COLLECTION_ENTRY_SCHEMA.array().default([]),
479
- correlationEntries: CORRELATION_ENTRY_SCHEMA.array().default([]),
492
+ coordinationOffers: z
493
+ .union([
494
+ COLLECTION_OFFER_SCHEMA,
495
+ CORRELATION_OFFER_SCHEMA,
496
+ WINDOW_OFFER_SCHEMA,
497
+ ])
498
+ .array()
499
+ .default([]),
480
500
  settled: z.boolean().default(true),
481
501
  signalInvocations: SIGNAL_INVOCATION_SCHEMA.array().default([]),
482
- windowEntries: WINDOW_ENTRY_SCHEMA.array().default([]),
483
502
  }),
484
503
  )
485
504
  .output(z.void()),
@@ -520,7 +539,12 @@ export const runtimeContract = {
520
539
  }),
521
540
  ),
522
541
  loadValues: oc
523
- .input(SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({ slot: true }))
542
+ .input(
543
+ SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({
544
+ scopePath: true,
545
+ slot: true,
546
+ }),
547
+ )
524
548
  .output(RUNTIME_VALUE_CONTEXT_SCHEMA),
525
549
  resolveAccountInput: oc
526
550
  .input(