@automate.ax/api-contract 0.56.0 → 0.57.0

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(
@@ -33,6 +33,7 @@ export const managementRolePermissions = {
33
33
  },
34
34
  member: {
35
35
  ac: ["read"],
36
+ account: ["read"],
36
37
  authorization: ["create", "read", "update"],
37
38
  deployment: ["create", "read", "cancel"],
38
39
  invitation: ["read"],
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,18 @@ 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({
139
+ const COORDINATION_PARAMETER_DEPENDENCIES_SCHEMA = z.object({
132
140
  parameterActionDependencyIds: z.string().array(),
133
141
  parameterEventDependencyIds: z.string().array(),
134
142
  parameterSignalDependencyIds: z.string().array(),
135
143
  })
136
144
 
137
- const BUFFER_PRIMARY_POSITION_SCHEMA = z.enum(["first", "last"])
145
+ const COORDINATION_PRIMARY_POSITION_SCHEMA = z.enum(["first", "last"])
138
146
  const CORRELATION_STREAM_NAMES_SCHEMA = z
139
147
  .string()
140
148
  .min(1)
@@ -144,10 +152,11 @@ const CORRELATION_STREAM_NAMES_SCHEMA = z
144
152
  message: "Correlation stream names must be unique.",
145
153
  })
146
154
 
147
- const CORRELATION_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
155
+ const CORRELATION_OFFER_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
148
156
  key: encodableSchema,
149
157
  order: CORRELATION_STREAM_NAMES_SCHEMA.optional(),
150
158
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
159
+ policy: z.literal("correlate"),
151
160
  streamName: z.string().min(1),
152
161
  streamNames: CORRELATION_STREAM_NAMES_SCHEMA,
153
162
  ttl: z.union([z.string().min(1), z.number().nonnegative()]).optional(),
@@ -172,21 +181,23 @@ const CORRELATION_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
172
181
  }
173
182
  })
174
183
 
175
- const COLLECTION_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
184
+ const COLLECTION_OFFER_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
176
185
  count: z.number().int().positive(),
177
186
  key: encodableSchema,
178
187
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
179
- primaryPosition: BUFFER_PRIMARY_POSITION_SCHEMA,
188
+ policy: z.literal("collect"),
189
+ primaryPosition: COORDINATION_PRIMARY_POSITION_SCHEMA,
180
190
  ttl: z.union([z.string().min(1), z.number().nonnegative()]).optional(),
181
- }).extend(BUFFER_PARAMETER_DEPENDENCIES_SCHEMA.shape)
191
+ }).extend(COORDINATION_PARAMETER_DEPENDENCIES_SCHEMA.shape)
182
192
 
183
- const WINDOW_ENTRY_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
193
+ const WINDOW_OFFER_SCHEMA = SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
184
194
  duration: z.union([z.string().min(1), z.number().nonnegative()]),
185
195
  key: encodableSchema,
186
196
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
187
- primaryPosition: BUFFER_PRIMARY_POSITION_SCHEMA,
197
+ policy: z.literal("window"),
198
+ primaryPosition: COORDINATION_PRIMARY_POSITION_SCHEMA,
188
199
  ttl: z.union([z.string().min(1), z.number().nonnegative()]).optional(),
189
- }).extend(BUFFER_PARAMETER_DEPENDENCIES_SCHEMA.shape)
200
+ }).extend(COORDINATION_PARAMETER_DEPENDENCIES_SCHEMA.shape)
190
201
 
191
202
  const SIGNAL_INVOCATION_SCHEMA = z.union([
192
203
  SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.extend({
@@ -228,6 +239,7 @@ const ACTION_VALUE_OUTCOME_BASE_SCHEMA = z.object({
228
239
  actionInvocationId: z.string(),
229
240
  contextId: z.string(),
230
241
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
242
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
231
243
  slot: z.number().int(),
232
244
  })
233
245
 
@@ -255,6 +267,7 @@ const ACTION_VALUE_OUTCOME_SCHEMA = z.union([
255
267
  const SIGNAL_VALUE_OUTCOME_BASE_SCHEMA = z.object({
256
268
  contextId: z.string(),
257
269
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
270
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
258
271
  signalInvocationId: z.string(),
259
272
  slot: z.number().int(),
260
273
  })
@@ -266,8 +279,11 @@ const RUNTIME_CONTEXT_PARENT_SCHEMA = z.object({
266
279
  position: z.number().int().nonnegative(),
267
280
  })
268
281
 
269
- const BUFFER_VALUE_GROUP_SCHEMA = z.object({
270
- items: SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({ slot: true })
282
+ const COORDINATION_SELECTION_SCHEMA = z.object({
283
+ items: SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({
284
+ scopePath: true,
285
+ slot: true,
286
+ })
271
287
  .extend({ contextId: z.string() })
272
288
  .array(),
273
289
  signalInvocationId: z.string(),
@@ -291,7 +307,7 @@ const SIGNAL_VALUE_OUTCOME_SCHEMA = z.union([
291
307
 
292
308
  const RUNTIME_VALUE_CONTEXT_SCHEMA = z.object({
293
309
  actionOutputs: ACTION_VALUE_OUTCOME_SCHEMA.array(),
294
- bufferGroups: BUFFER_VALUE_GROUP_SCHEMA.array(),
310
+ coordinationSelections: COORDINATION_SELECTION_SCHEMA.array(),
295
311
  contextId: z.string(),
296
312
  contextParents: RUNTIME_CONTEXT_PARENT_SCHEMA.array(),
297
313
  events: z
@@ -300,6 +316,7 @@ const RUNTIME_VALUE_CONTEXT_SCHEMA = z.object({
300
316
  contextId: z.string(),
301
317
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
302
318
  payload: encodableSchema,
319
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
303
320
  slot: z.number().int(),
304
321
  })
305
322
  .array(),
@@ -315,6 +332,7 @@ const RUNTIME_RUN_CONTEXT_SCHEMA = z.object({
315
332
  automationEventId: z.string(),
316
333
  contextId: z.string(),
317
334
  outcomeSeq: OUTCOME_SEQUENCE_SCHEMA,
335
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
318
336
  slot: z.number().int(),
319
337
  })
320
338
  .array(),
@@ -325,11 +343,13 @@ const TARGET_ACTION_SCHEMA = z.union([
325
343
  z.object({
326
344
  context: RUNTIME_VALUE_CONTEXT_SCHEMA,
327
345
  id: z.string(),
346
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
328
347
  slot: z.number().int(),
329
348
  status: z.literal("pending"),
330
349
  }),
331
350
  z.object({
332
351
  id: z.string(),
352
+ scopePath: HOOK_SCOPE_PATH_SCHEMA,
333
353
  slot: z.number().int(),
334
354
  status: z.enum(["failed", "skipped", "succeeded"]),
335
355
  }),
@@ -475,11 +495,16 @@ export const runtimeContract = {
475
495
  .input(
476
496
  z.object({
477
497
  actionInvocations: ACTION_INVOCATION_SCHEMA.array().default([]),
478
- collectionEntries: COLLECTION_ENTRY_SCHEMA.array().default([]),
479
- correlationEntries: CORRELATION_ENTRY_SCHEMA.array().default([]),
498
+ coordinationOffers: z
499
+ .union([
500
+ COLLECTION_OFFER_SCHEMA,
501
+ CORRELATION_OFFER_SCHEMA,
502
+ WINDOW_OFFER_SCHEMA,
503
+ ])
504
+ .array()
505
+ .default([]),
480
506
  settled: z.boolean().default(true),
481
507
  signalInvocations: SIGNAL_INVOCATION_SCHEMA.array().default([]),
482
- windowEntries: WINDOW_ENTRY_SCHEMA.array().default([]),
483
508
  }),
484
509
  )
485
510
  .output(z.void()),
@@ -520,7 +545,12 @@ export const runtimeContract = {
520
545
  }),
521
546
  ),
522
547
  loadValues: oc
523
- .input(SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({ slot: true }))
548
+ .input(
549
+ SIGNAL_INVOCATION_DEPENDENCIES_SCHEMA.omit({
550
+ scopePath: true,
551
+ slot: true,
552
+ }),
553
+ )
524
554
  .output(RUNTIME_VALUE_CONTEXT_SCHEMA),
525
555
  resolveAccountInput: oc
526
556
  .input(