@work-shape/catalyst-api-contract 0.8.0-rc.6 → 0.8.0-rc.8

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/index.js CHANGED
@@ -10,7 +10,8 @@ import {
10
10
  IDEMPOTENCY_KEY_MAX_LENGTH,
11
11
  POLICY_VALUES,
12
12
  THEME_MODES,
13
- WORKFLOW_RUN_STATUSES
13
+ WORKFLOW_RUN_STATUSES,
14
+ WORKFLOW_TEST_REVISIONS
14
15
  } from "@work-shape/catalyst-asset-schemas";
15
16
  import { z } from "zod";
16
17
  var APP_BRIDGE_MARK = "catalystBridge";
@@ -126,7 +127,23 @@ var appWorkflowRunSchema = z.strictObject({
126
127
  /** Why the run did not end `done`: a code and a sentence of the product. */
127
128
  error: z.strictObject({ code: z.string(), message: z.string() }).optional(),
128
129
  startedAt: z.string().optional(),
129
- finishedAt: z.string().optional()
130
+ finishedAt: z.string().optional(),
131
+ /**
132
+ * `test` on a run a click in an App's draft started (DP-1): it ran in mode test, as the
133
+ * viewer bounded by the Workflow's principal, and nothing of it is live. Missing on a run of
134
+ * a published App.
135
+ */
136
+ mode: z.literal("test").optional(),
137
+ /**
138
+ * On a test run: the revision of the Workflow that ran, the draft or the published one, with
139
+ * its number where that revision is still the draft or the published one.
140
+ */
141
+ workflowRevision: z.strictObject({
142
+ kind: z.enum(WORKFLOW_TEST_REVISIONS),
143
+ number: z.number().int().positive().optional()
144
+ }).optional(),
145
+ /** On a test run: the steps whose calls were simulated, by step id. Their results are not real. */
146
+ simulatedSteps: z.array(z.string()).optional()
130
147
  });
131
148
  var callFailure = z.strictObject({
132
149
  /** `action_unknown`, `draft_safe_mode`, `forbidden`, `input_invalid` and so on. */
@@ -806,7 +823,7 @@ import { z as z46 } from "zod";
806
823
  // package.json
807
824
  var package_default = {
808
825
  name: "@work-shape/catalyst-api-contract",
809
- version: "0.8.0-rc.6",
826
+ version: "0.8.0-rc.8",
810
827
  license: "MIT",
811
828
  repository: {
812
829
  type: "git",
@@ -1045,19 +1062,22 @@ var scheduledStartOperations = {
1045
1062
  };
1046
1063
 
1047
1064
  // src/operations/access.ts
1048
- import { dataScopesSchema, scopeAssignmentInputSchema } from "@work-shape/catalyst-asset-schemas";
1065
+ import { dataScopesSchema as dataScopesSchema2, scopeAssignmentInputSchema as scopeAssignmentInputSchema2 } from "@work-shape/catalyst-asset-schemas";
1049
1066
  import { z as z11 } from "zod";
1050
1067
 
1051
1068
  // src/access.ts
1052
1069
  import {
1053
1070
  ACCESS_SOURCES,
1071
+ APP_AUDIENCES,
1054
1072
  GRANT_EFFECTS,
1055
1073
  GRANT_HOLDER_KINDS,
1056
1074
  GRANT_SCOPE_KINDS,
1057
1075
  PRINCIPAL_HOLDER_KINDS as PRINCIPAL_HOLDER_KINDS2,
1058
1076
  ROLE_GRANT_SCOPE_KINDS,
1059
1077
  ROLE_PENDING_CHANGES,
1060
- ROLE_PENDING_DECISIONS
1078
+ ROLE_PENDING_DECISIONS,
1079
+ dataScopesSchema,
1080
+ scopeAssignmentInputSchema
1061
1081
  } from "@work-shape/catalyst-asset-schemas";
1062
1082
  import { z as z10 } from "zod";
1063
1083
  var grantHolderKindSchema = z10.enum(GRANT_HOLDER_KINDS);
@@ -1107,23 +1127,87 @@ var effectivePermissionsQuerySchema = z10.object({
1107
1127
  holderKind: z10.enum(PRINCIPAL_HOLDER_KINDS2),
1108
1128
  holderId: storedText
1109
1129
  });
1130
+ var accessEntrySchema = z10.object({
1131
+ action: z10.string(),
1132
+ effect: grantEffectSchema,
1133
+ scopeKind: grantScopeKindSchema,
1134
+ scopeId: z10.string().optional(),
1135
+ /**
1136
+ * `membership`: held by being a member of the workspace the entry names, such as opening
1137
+ * the published Apps of that workspace. A legacy permission list is grant rows since AP-4
1138
+ * and reads as `grant`.
1139
+ */
1140
+ source: z10.enum(ACCESS_SOURCES),
1141
+ /** The role the entry is held through, for the source `role`. */
1142
+ roleId: z10.string().optional()
1143
+ });
1110
1144
  var effectivePermissionsSchema = z10.object({
1111
1145
  /** A holder that is not active holds nothing, whatever the entries say. */
1112
1146
  holderActive: z10.boolean(),
1113
- items: z10.array(
1147
+ items: z10.array(accessEntrySchema)
1148
+ });
1149
+ var namedWorkspaceSchema = z10.object({ personal: z10.boolean(), name: z10.string().optional() });
1150
+ var namedPlaceSchema = z10.object({
1151
+ scopeAsset: z10.object({
1152
+ kind: z10.string(),
1153
+ name: z10.string().optional(),
1154
+ title: z10.string().optional(),
1155
+ active: z10.boolean()
1156
+ }).optional(),
1157
+ scopeWorkspace: namedWorkspaceSchema.optional()
1158
+ });
1159
+ var rightConditionsSchema = z10.object({
1160
+ availability: z10.enum(APP_AUDIENCES).optional(),
1161
+ onlyInWorkspaces: z10.array(namedWorkspaceSchema).optional()
1162
+ });
1163
+ var accessOriginSchema = accessEntrySchema.omit({ action: true }).extend(namedPlaceSchema.shape);
1164
+ var accessOriginRoleSchema = z10.object({
1165
+ id: z10.string(),
1166
+ name: z10.string(),
1167
+ builtIn: z10.boolean()
1168
+ });
1169
+ var REFUSAL_REASONS = ["denied", "no_grant", "holder_inactive"];
1170
+ var refusalReasonSchema = z10.enum(REFUSAL_REASONS);
1171
+ var ASSET_CHECK_VERBS = ["read", "use", "write", "delete"];
1172
+ var assetCheckVerbSchema = z10.enum(ASSET_CHECK_VERBS);
1173
+ var holderRightsSchema = z10.object({
1174
+ holderActive: z10.boolean(),
1175
+ /** Every role an origin names. */
1176
+ roles: z10.array(accessOriginRoleSchema),
1177
+ rights: z10.array(
1114
1178
  z10.object({
1115
1179
  action: z10.string(),
1116
- effect: grantEffectSchema,
1117
1180
  scopeKind: grantScopeKindSchema,
1118
1181
  scopeId: z10.string().optional(),
1119
- /**
1120
- * `membership`: held by being a member of the workspace the entry names, such as opening
1121
- * the published Apps of that workspace. A legacy permission list is grant rows since AP-4
1122
- * and reads as `grant`.
1123
- */
1124
- source: z10.enum(ACCESS_SOURCES),
1125
- /** The role the entry is held through, for the source `role`. */
1126
- roleId: z10.string().optional()
1182
+ allowed: z10.boolean(),
1183
+ /** For a right that is refused. */
1184
+ reason: refusalReasonSchema.optional(),
1185
+ grantedBy: z10.array(accessOriginSchema),
1186
+ deniedBy: accessOriginSchema.optional()
1187
+ }).extend(namedPlaceSchema.shape).extend(rightConditionsSchema.shape)
1188
+ )
1189
+ });
1190
+ var assetRightsCheckQuerySchema = effectivePermissionsQuerySchema.extend({
1191
+ /** A kind the instance registers. */
1192
+ kind: storedText,
1193
+ /**
1194
+ * The asset, by the id its asset rows name. Left out for a name no asset and no row has:
1195
+ * then only what holds on every asset of the kind decides.
1196
+ */
1197
+ assetId: storedText.optional()
1198
+ });
1199
+ var assetRightsCheckSchema = z10.object({
1200
+ holderActive: z10.boolean(),
1201
+ roles: z10.array(accessOriginRoleSchema),
1202
+ actions: z10.array(
1203
+ rightConditionsSchema.extend({
1204
+ verb: assetCheckVerbSchema,
1205
+ action: z10.string(),
1206
+ allowed: z10.boolean(),
1207
+ reason: refusalReasonSchema.optional(),
1208
+ /** The covering deny that refuses, or the first covering allow. */
1209
+ decidedBy: accessOriginSchema.optional(),
1210
+ deniedThrough: assetCheckVerbSchema.optional()
1127
1211
  })
1128
1212
  )
1129
1213
  });
@@ -1186,6 +1270,19 @@ var updateWorkspaceBuildLimitsRequestSchema = z10.object({
1186
1270
  allowedToolNames: buildLimitListSchema.optional(),
1187
1271
  allowedModelBindingIds: buildLimitListSchema.optional()
1188
1272
  });
1273
+ var dataScopeValuesSchema = z10.union([z10.literal("all"), z10.array(z10.string())]);
1274
+ var scopeAssignmentsOverviewSchema = z10.object({
1275
+ dimensions: dataScopesSchema,
1276
+ assignments: z10.array(scopeAssignmentInputSchema),
1277
+ people: z10.array(
1278
+ z10.object({
1279
+ id: z10.string(),
1280
+ displayLabel: z10.string(),
1281
+ groups: z10.array(z10.string()),
1282
+ effective: z10.record(z10.string(), dataScopeValuesSchema)
1283
+ })
1284
+ )
1285
+ });
1189
1286
 
1190
1287
  // src/operations/access.ts
1191
1288
  var accessOperations = {
@@ -1199,17 +1296,31 @@ var accessOperations = {
1199
1296
  scope: "user_admin:read",
1200
1297
  requires: ["users.manage"],
1201
1298
  effect: "reading",
1202
- query: scopeAssignmentInputSchema.pick({ holderKind: true, holderId: true }),
1299
+ query: scopeAssignmentInputSchema2.pick({ holderKind: true, holderId: true }),
1203
1300
  response: json(
1204
1301
  z11.object({
1205
- dimensions: dataScopesSchema,
1206
- assignments: z11.array(scopeAssignmentInputSchema),
1302
+ dimensions: dataScopesSchema2,
1303
+ assignments: z11.array(scopeAssignmentInputSchema2),
1207
1304
  effective: z11.record(z11.string(), z11.union([z11.literal("all"), z11.array(z11.string())])).optional()
1208
1305
  })
1209
1306
  ),
1210
1307
  errors: ["NOT_FOUND"],
1211
1308
  rateClass: "read"
1212
1309
  }),
1310
+ "scope_assignments.overview": defineOperation({
1311
+ id: "scope_assignments.overview",
1312
+ method: "GET",
1313
+ path: "/api/v1/instance/access/scope-assignments/overview",
1314
+ summary: "Read the declared data scope, every assignment the reader may see, and each active person's groups and effective values",
1315
+ tag: "Access",
1316
+ auth: "user",
1317
+ scope: "user_admin:read",
1318
+ requires: ["users.manage"],
1319
+ effect: "reading",
1320
+ response: json(scopeAssignmentsOverviewSchema),
1321
+ errors: [],
1322
+ rateClass: "read"
1323
+ }),
1213
1324
  "scope_assignments.set": defineRegisteredOperation({
1214
1325
  id: "scope_assignments.set",
1215
1326
  method: "PUT",
@@ -1220,8 +1331,8 @@ var accessOperations = {
1220
1331
  scope: "user_admin:write",
1221
1332
  requires: ["users.manage"],
1222
1333
  effect: "changing",
1223
- body: scopeAssignmentInputSchema,
1224
- response: json(scopeAssignmentInputSchema),
1334
+ body: scopeAssignmentInputSchema2,
1335
+ response: json(scopeAssignmentInputSchema2),
1225
1336
  errors: ["NOT_FOUND"],
1226
1337
  rateClass: "write"
1227
1338
  }),
@@ -1296,6 +1407,40 @@ var accessOperations = {
1296
1407
  errors: ["NOT_FOUND"],
1297
1408
  rateClass: "read"
1298
1409
  }),
1410
+ "permissions.rights": defineOperation({
1411
+ id: "permissions.rights",
1412
+ method: "GET",
1413
+ path: "/api/v1/instance/access/rights",
1414
+ summary: "List what one holder holds and is refused, each right decided with where it comes from",
1415
+ tag: "Access",
1416
+ auth: "user",
1417
+ scope: "user_admin:read",
1418
+ // The read of `permissions.effective`: one's own, or another holder's behind the right
1419
+ // to administer them. The handler checks it.
1420
+ requires: [],
1421
+ effect: "reading",
1422
+ query: effectivePermissionsQuerySchema,
1423
+ response: json(holderRightsSchema),
1424
+ errors: ["NOT_FOUND"],
1425
+ rateClass: "read"
1426
+ }),
1427
+ "permissions.check": defineOperation({
1428
+ id: "permissions.check",
1429
+ method: "GET",
1430
+ path: "/api/v1/instance/access/check",
1431
+ summary: "Decide what one holder may do with one asset, with the entry that decides each right",
1432
+ tag: "Access",
1433
+ auth: "user",
1434
+ scope: "user_admin:read",
1435
+ // The read of `permissions.effective`: one's own, or another holder's behind the right
1436
+ // to administer them. The handler checks it.
1437
+ requires: [],
1438
+ effect: "reading",
1439
+ query: assetRightsCheckQuerySchema,
1440
+ response: json(assetRightsCheckSchema),
1441
+ errors: ["NOT_FOUND"],
1442
+ rateClass: "read"
1443
+ }),
1299
1444
  "workspaces.limits.list": defineOperation({
1300
1445
  id: "workspaces.limits.list",
1301
1446
  method: "GET",
@@ -1354,6 +1499,7 @@ import {
1354
1499
  AUTH_PRINCIPAL_KINDS,
1355
1500
  DELETION_STATES,
1356
1501
  FIRST_PARTY_AUTH_SCOPES,
1502
+ FOLLOW_UP_MODES,
1357
1503
  SERVICE_PRINCIPAL_PERMISSIONS,
1358
1504
  SERVICE_PRINCIPAL_STATUSES,
1359
1505
  USER_STATUSES
@@ -1404,6 +1550,12 @@ var apiUserSchema = z12.object({
1404
1550
  emailVerified: z12.boolean().optional(),
1405
1551
  /** The language the person chose. Left out, they get the instance's default language. */
1406
1552
  locale: localeCodeSchema.optional(),
1553
+ /**
1554
+ * What a message the person sends during their own run does: `steer` (the default) is read
1555
+ * by the running turn, `queue` waits as the next turn. Left out where the answer names no
1556
+ * record: `queue`.
1557
+ */
1558
+ followUpMode: z12.enum(FOLLOW_UP_MODES).optional(),
1407
1559
  /** An active instance admin a signed-in person can ask for help; no directory access needed. */
1408
1560
  instanceAdminName: z12.string().optional(),
1409
1561
  roles: z12.array(z12.string()),
@@ -1487,10 +1639,12 @@ var updateAdministeredUserRequestSchema = z12.object({
1487
1639
  });
1488
1640
  var updateCurrentUserRequestSchema = z12.object({
1489
1641
  displayLabel: z12.string().min(1).optional(),
1490
- locale: localeCodeSchema.nullable().optional()
1491
- }).refine((body) => body.displayLabel !== void 0 || body.locale !== void 0, {
1492
- message: "Name displayLabel, locale or both"
1493
- });
1642
+ locale: localeCodeSchema.nullable().optional(),
1643
+ followUpMode: z12.enum(FOLLOW_UP_MODES).optional()
1644
+ }).refine(
1645
+ (body) => body.displayLabel !== void 0 || body.locale !== void 0 || body.followUpMode !== void 0,
1646
+ { message: "Name displayLabel, locale, followUpMode or several" }
1647
+ );
1494
1648
  var changeCurrentUserPasswordRequestSchema = z12.object({
1495
1649
  currentPassword: z12.string().min(1),
1496
1650
  newPassword: z12.string().min(8)
@@ -2062,12 +2216,14 @@ import { z as z17 } from "zod";
2062
2216
 
2063
2217
  // src/assets.ts
2064
2218
  import {
2065
- APP_AUDIENCES,
2219
+ AGENT_USE_SETTINGS,
2220
+ APP_AUDIENCES as APP_AUDIENCES2,
2066
2221
  OPERATION_EFFECTS as OPERATION_EFFECTS3,
2067
2222
  WORKSPACE_USE_ASSET_KINDS,
2068
2223
  ASSET_ACCESS_VERBS,
2069
2224
  ASSET_NAME_REFUSAL_REASONS,
2070
- ASSET_SYNC_CHANGE_TYPES
2225
+ ASSET_SYNC_CHANGE_TYPES,
2226
+ operationSourceSchema
2071
2227
  } from "@work-shape/catalyst-asset-schemas";
2072
2228
  import { z as z15 } from "zod";
2073
2229
  var ASSET_SYNC_MAX_ITEMS = 200;
@@ -2083,6 +2239,7 @@ var assetScopeSchema = z15.discriminatedUnion("kind", [
2083
2239
  z15.object({ kind: z15.literal("workspace"), workspaceId: z15.string() })
2084
2240
  ]);
2085
2241
  var revisionNumberSchema = z15.number().int().positive();
2242
+ var APP_PUBLISH_WORKFLOWS_MAX = 20;
2086
2243
  var expectedRevisionSchema = revisionNumberSchema.optional();
2087
2244
  var expectedRevisionOrNewSchema = revisionNumberSchema.nullable().optional();
2088
2245
  var NUL = "\0";
@@ -2096,6 +2253,7 @@ var assetDefinitionSchema = configAssetConfigSchema.refine(
2096
2253
  );
2097
2254
  var workspaceIdSchema = nameText(z15.string().min(1)).optional();
2098
2255
  var isDefaultSchema = z15.literal(true).optional();
2256
+ var agentUseSchema = z15.enum(AGENT_USE_SETTINGS);
2099
2257
  var dependencyAvailabilitySchema = z15.object({
2100
2258
  /** The workspaces reviewed by the publisher; a later change must be read again. */
2101
2259
  availability: agentAvailabilitySchema.nullable().optional(),
@@ -2163,18 +2321,14 @@ var assetFileSchema = z15.object({
2163
2321
  text: z15.string().optional(),
2164
2322
  base64: z15.string().optional()
2165
2323
  });
2166
- var appAudienceSchema = z15.enum(APP_AUDIENCES);
2324
+ var appAudienceSchema = z15.enum(APP_AUDIENCES2);
2167
2325
  var publishNarrativeSchema = z15.object({
2168
2326
  summary: z15.string(),
2169
2327
  /** Empty where no guardrail in force stops a step, and for an App. */
2170
2328
  warnings: z15.array(z15.string())
2171
2329
  });
2172
2330
  var saveApprovalSchema = z15.object({ approverNames: z15.array(z15.string()) });
2173
- var workflowFactSourceSchema = z15.object({
2174
- kind: z15.enum(["connection", "data_store", "knowledge_base", "workflow", "other"]),
2175
- title: z15.string().optional(),
2176
- service: z15.string().optional()
2177
- });
2331
+ var workflowFactSourceSchema = operationSourceSchema;
2178
2332
  var workflowOperationFactSchema = z15.object({
2179
2333
  source: workflowFactSourceSchema,
2180
2334
  title: z15.string().optional(),
@@ -2244,6 +2398,8 @@ var assetSchema = z15.object({
2244
2398
  availability: agentAvailabilitySchema.optional(),
2245
2399
  dependencyAvailability: dependencyAvailabilitySchema.optional(),
2246
2400
  canSetAvailability: z15.boolean().optional(),
2401
+ /** Only on agent reads: who uses the agent where it is available (AGENT-USE-1). */
2402
+ agentUse: agentUseSchema.optional(),
2247
2403
  /** Only on agent reads. The stored config stays intact; these references cannot run. */
2248
2404
  unavailableTools: z15.array(unavailableToolSchema).optional(),
2249
2405
  unavailableSkills: z15.array(unavailableSkillSchema).optional(),
@@ -2355,7 +2511,14 @@ var publishAssetRequestSchema = z15.object({
2355
2511
  * never means "whatever the draft is now". Naming an earlier number is the way back.
2356
2512
  */
2357
2513
  revision: revisionNumberSchema,
2358
- workspaceId: workspaceIdSchema
2514
+ workspaceId: workspaceIdSchema,
2515
+ /**
2516
+ * Of an App only: the Workflow drafts this publish makes live with it (DP-3), each with the
2517
+ * revision the person reviewed, as `apps.publish_review` lists the pending ones. Each must be
2518
+ * a Workflow the App's revision reaches, directly or as a child. They are published children
2519
+ * first and then the App, in one transaction: a refusal of any publishes none of them.
2520
+ */
2521
+ workflows: z15.array(z15.object({ name: z15.string().min(1), revision: revisionNumberSchema }).strict()).max(APP_PUBLISH_WORKFLOWS_MAX).optional()
2359
2522
  });
2360
2523
  var discardAssetDraftRequestSchema = z15.object({
2361
2524
  /** The draft revision the caller last read. Required. */
@@ -2366,7 +2529,16 @@ var assetPointersResponseSchema = z15.object({
2366
2529
  draftRevision: revisionNumberSchema,
2367
2530
  publishedRevision: revisionNumberSchema,
2368
2531
  /** The revision that was published before a publish, left out on the first one. */
2369
- replacedRevision: revisionNumberSchema.optional()
2532
+ replacedRevision: revisionNumberSchema.optional(),
2533
+ /** The Workflows a publish of an App made live with it, in the order they were published. */
2534
+ publishedWith: z15.array(
2535
+ z15.object({
2536
+ kind: z15.literal("workflow"),
2537
+ name: z15.string(),
2538
+ publishedRevision: revisionNumberSchema,
2539
+ replacedRevision: revisionNumberSchema.optional()
2540
+ })
2541
+ ).optional()
2370
2542
  });
2371
2543
  var LIVE_ONCE_PART_MAX_LENGTH = 200;
2372
2544
  var runLiveOnceRequestSchema = z15.object({
@@ -2588,7 +2760,7 @@ var assetPreconditionRequiredDetailsSchema = z15.object({
2588
2760
  // src/conversations.ts
2589
2761
  import {
2590
2762
  AGENT_PREVIEW_SOURCES,
2591
- FOLLOW_UP_MODES,
2763
+ FOLLOW_UP_MODES as FOLLOW_UP_MODES2,
2592
2764
  FOLLOW_UP_STATUSES,
2593
2765
  TOOL_DECISION_MODES,
2594
2766
  TOOL_DECISION_OUTCOMES
@@ -2691,7 +2863,14 @@ var userMessageMetadataSchema = z16.object({
2691
2863
  revision: z16.number().int().positive(),
2692
2864
  source: z16.enum(AGENT_PREVIEW_SOURCES)
2693
2865
  }).optional(),
2694
- attachmentManifest: z16.unknown()
2866
+ attachmentManifest: z16.unknown(),
2867
+ /** Set on a message its person steered into their running turn (FU-2). */
2868
+ steered: z16.object({
2869
+ runId: z16.string(),
2870
+ followUpId: z16.string(),
2871
+ authorUserId: z16.string(),
2872
+ typedAt: timestampSchema
2873
+ }).optional()
2695
2874
  });
2696
2875
  var assistantToolCallsMessageMetadataSchema = z16.object({
2697
2876
  version: messageMetadataVersionSchema,
@@ -2996,6 +3175,20 @@ var agentRuntimeEventSchema = z16.discriminatedUnion("type", [
2996
3175
  metadata: z16.record(z16.string(), z16.unknown()).optional()
2997
3176
  })
2998
3177
  }),
3178
+ z16.object({
3179
+ type: z16.literal("user_message_steered"),
3180
+ runId: z16.string(),
3181
+ sequence: z16.number(),
3182
+ createdAt: timestampSchema,
3183
+ followUpId: z16.string(),
3184
+ message: z16.object({
3185
+ id: z16.string(),
3186
+ role: z16.literal("user"),
3187
+ text: z16.string(),
3188
+ createdAt: timestampSchema,
3189
+ metadata: z16.record(z16.string(), z16.unknown()).optional()
3190
+ })
3191
+ }),
2999
3192
  z16.object({
3000
3193
  type: z16.literal("tool_call_preparing"),
3001
3194
  runId: z16.string(),
@@ -3160,6 +3353,13 @@ var agentRunProjectionPartSchema = z16.discriminatedUnion("type", [
3160
3353
  text: z16.string(),
3161
3354
  open: z16.boolean()
3162
3355
  }),
3356
+ z16.object({
3357
+ /** A message the run's person steered into it, where the run took it in (FU-2). */
3358
+ type: z16.literal("user_message"),
3359
+ messageId: z16.string(),
3360
+ text: z16.string(),
3361
+ createdAt: timestampSchema
3362
+ }),
3163
3363
  z16.object({
3164
3364
  type: z16.literal("tool_call"),
3165
3365
  toolCallId: z16.string(),
@@ -3246,7 +3446,7 @@ var conversationFollowUpSchema = z16.object({
3246
3446
  authorUserId: z16.string(),
3247
3447
  authorDisplayLabel: z16.string().optional(),
3248
3448
  text: z16.string(),
3249
- mode: z16.enum(FOLLOW_UP_MODES),
3449
+ mode: z16.enum(FOLLOW_UP_MODES2),
3250
3450
  status: z16.enum(FOLLOW_UP_STATUSES),
3251
3451
  position: z16.number().int().positive(),
3252
3452
  agentName: z16.string(),
@@ -3261,8 +3461,8 @@ var queuedConversationRunResponseSchema = z16.object({
3261
3461
  followUp: conversationFollowUpSchema
3262
3462
  });
3263
3463
  var startConversationRunRequestSchema = z16.object({
3264
- followUp: z16.literal("queue").optional().describe(
3265
- "Queue the message when this conversation has an active run. Without this option, an active run still returns CONFLICT."
3464
+ followUp: z16.enum(FOLLOW_UP_MODES2).optional().describe(
3465
+ "What happens when this conversation has an active run. `queue` sends the message as the next turn. `steer` hands it to the running turn at its next step when the run is the caller's own under the same credential and the message has no attachments, and queues it otherwise. Without this option, an active run still returns CONFLICT."
3266
3466
  ),
3267
3467
  idempotencyKey: z16.string().min(1),
3268
3468
  agentName: z16.string().min(1).optional(),
@@ -3362,6 +3562,12 @@ var discardAgentDraftRequestSchema = z17.object({
3362
3562
  workspaceId: z17.string().optional()
3363
3563
  });
3364
3564
  var discardAgentDraftResponseSchema = z17.object({ discarded: z17.literal(true) });
3565
+ var setAgentUseRequestSchema = z17.object({
3566
+ use: agentUseSchema,
3567
+ /** The id of the agent as the caller read it. Another agent of the name is a conflict. */
3568
+ expectedAssetId: z17.string().min(1).optional()
3569
+ });
3570
+ var setAgentUseResponseSchema = z17.object({ use: agentUseSchema });
3365
3571
  var agentTryConversationResponseSchema = z17.object({
3366
3572
  conversation: conversationSchema,
3367
3573
  /** A Try conversation is a preview: its head says so. */
@@ -3400,6 +3606,23 @@ var agentOperations = {
3400
3606
  errors: ["NOT_FOUND", "REVISION_CONFLICT"],
3401
3607
  rateClass: "write"
3402
3608
  }),
3609
+ // Who uses the agent where it is available (AGENT-USE-1). The right is decided as for its
3610
+ // availability: the agent's write right on the whole instance.
3611
+ "agents.use.set": defineRegisteredOperation({
3612
+ id: "agents.use.set",
3613
+ method: "PUT",
3614
+ path: "/api/v1/agents/:name/use",
3615
+ summary: "Set who uses one agent where it is available: everyone, or holders of agent.use",
3616
+ tag: "Agents",
3617
+ auth: "user",
3618
+ scope: "config_assets:write",
3619
+ requires: [],
3620
+ effect: "changing",
3621
+ body: setAgentUseRequestSchema,
3622
+ response: json(setAgentUseResponseSchema),
3623
+ errors: ["NOT_FOUND", "CONFLICT"],
3624
+ rateClass: "write"
3625
+ }),
3403
3626
  "agents.try.open": defineRegisteredOperation({
3404
3627
  id: "agents.try.open",
3405
3628
  method: "POST",
@@ -3501,7 +3724,9 @@ var apiAccessOperations = {
3501
3724
  import {
3502
3725
  APP_ACTION_CALL_STATUSES as APP_ACTION_CALL_STATUSES2,
3503
3726
  APP_MODES,
3504
- OPERATION_EFFECTS as OPERATION_EFFECTS4
3727
+ OPERATION_EFFECTS as OPERATION_EFFECTS4,
3728
+ WORKFLOW_RUN_STATUSES as WORKFLOW_RUN_STATUSES2,
3729
+ WORKFLOW_TEST_REVISIONS as WORKFLOW_TEST_REVISIONS2
3505
3730
  } from "@work-shape/catalyst-asset-schemas";
3506
3731
  import { z as z19 } from "zod";
3507
3732
 
@@ -3553,6 +3778,18 @@ var pagePreviewRequestSchema = z18.object({
3553
3778
  /** The revision to show. Left out, the newest one. */
3554
3779
  fileSetId: z18.string().optional()
3555
3780
  }).strict();
3781
+ var draftHostsSchema = z18.object({
3782
+ /**
3783
+ * The held-back hosts the caller may allow for their own view of this draft with
3784
+ * `apps.allow_draft_host`. Empty where the caller may not.
3785
+ */
3786
+ allowable: z18.array(z18.string()),
3787
+ /**
3788
+ * Whether the draft reads data through its actions, from a Connection, a Data Store or a
3789
+ * Workflow: what the preview reads, it can send to an allowed host.
3790
+ */
3791
+ readsData: z18.boolean()
3792
+ });
3556
3793
  var pagePreviewSchema = z18.object({
3557
3794
  /** A path on the instance, ending with a slash. Relative files of the Page resolve below it. */
3558
3795
  url: z18.string(),
@@ -3560,7 +3797,13 @@ var pagePreviewSchema = z18.object({
3560
3797
  fileSetId: z18.string(),
3561
3798
  number: z18.number().int().positive(),
3562
3799
  /** Names this mount of the frame. A bridge call of the frame carries it. */
3563
- pageSessionId: z18.string()
3800
+ pageSessionId: z18.string(),
3801
+ /**
3802
+ * The outside hosts the manifest lists that this frame may not connect to. A Page of a
3803
+ * conversation connects to none until a person allows one for their own view (DRAFT-HOSTS-1).
3804
+ */
3805
+ heldBackHosts: z18.array(z18.string()).optional(),
3806
+ draftHosts: draftHostsSchema.optional()
3564
3807
  });
3565
3808
 
3566
3809
  // src/apps.ts
@@ -3664,11 +3907,19 @@ var appPreviewSchema = pagePreviewSchema.extend({
3664
3907
  interfacePath: z19.string(),
3665
3908
  /**
3666
3909
  * The outside hosts the shown revision's manifest lists that its frame may not connect to:
3667
- * those a draft adds to what is published, until it is published. Always empty for the
3668
- * published view.
3910
+ * those a draft adds to what is published, until it is published or the caller allowed one
3911
+ * for their own view (DRAFT-HOSTS-1). Always empty for the published view.
3669
3912
  */
3670
3913
  heldBackHosts: z19.array(z19.string())
3671
3914
  });
3915
+ var allowDraftHostRequestSchema = z19.object({
3916
+ fileSetId: z19.string().min(1).max(200),
3917
+ host: z19.string().min(1).max(253)
3918
+ }).strict();
3919
+ var allowDraftHostResponseSchema = z19.object({
3920
+ host: z19.string(),
3921
+ allowed: z19.literal(true)
3922
+ });
3672
3923
  var pageSessionProof = {
3673
3924
  fileSetId: z19.string().min(1).max(200),
3674
3925
  token: z19.string().min(1).max(512)
@@ -3696,6 +3947,63 @@ var appActionCallResultSchema = z19.union([
3696
3947
  result: z19.unknown()
3697
3948
  })
3698
3949
  ]);
3950
+ var appTryActionRequestSchema = z19.object({ input: z19.record(z19.string(), z19.unknown()).default({}) }).strict();
3951
+ var appTryActionResultSchema = z19.object({
3952
+ operationRunId: z19.string().optional(),
3953
+ status: z19.enum([...APP_ACTION_CALL_STATUSES2, "dry_run"]),
3954
+ target: operationTargetSchema.optional(),
3955
+ result: z19.unknown().optional(),
3956
+ /** What a simulated call would have done. */
3957
+ message: z19.string().optional(),
3958
+ workflowRun: z19.object({
3959
+ runId: z19.string(),
3960
+ workflow: z19.string(),
3961
+ status: z19.enum(WORKFLOW_RUN_STATUSES2),
3962
+ revision: z19.object({
3963
+ kind: z19.enum(WORKFLOW_TEST_REVISIONS2),
3964
+ number: z19.number().int().positive().optional()
3965
+ })
3966
+ }).optional()
3967
+ });
3968
+ var appPublishRefusalSchema = z19.object({
3969
+ /** `no_grant`, `workflow_not_published`, `workflow_unavailable` and the like. */
3970
+ reason: z19.string(),
3971
+ message: z19.string(),
3972
+ /** The right the caller lacks, where a right is missing. */
3973
+ right: z19.string().optional()
3974
+ });
3975
+ var appPublishReviewItemSchema = z19.object({
3976
+ name: z19.string(),
3977
+ title: z19.string(),
3978
+ draftRevision: z19.number().int().positive(),
3979
+ publishedRevision: z19.number().int().positive().optional(),
3980
+ /** The draft holds changes its published revision does not, or nothing is published yet. */
3981
+ pending: z19.boolean(),
3982
+ /** The sentence the person's publish question leads with, for the draft revision. */
3983
+ narrative: publishNarrativeSchema.optional(),
3984
+ /** Who wrote the draft revision, as people read their name. */
3985
+ lastChangedBy: z19.string().optional(),
3986
+ refusals: z19.array(appPublishRefusalSchema)
3987
+ });
3988
+ var appPublishReviewSchema = z19.object({
3989
+ app: appPublishReviewItemSchema,
3990
+ workflows: z19.array(
3991
+ appPublishReviewItemSchema.extend({
3992
+ /** The actions of the App's draft that call it. None for a child of another Workflow. */
3993
+ actions: z19.array(z19.string()),
3994
+ /** The newest test run of the Workflow among its recent runs, by anyone. */
3995
+ lastTestRun: z19.object({ runId: z19.string(), status: z19.enum(WORKFLOW_RUN_STATUSES2), at: z19.string() }).optional()
3996
+ })
3997
+ ),
3998
+ /**
3999
+ * One Publish of the App also publishes the pending Workflow drafts it reaches, when the
4000
+ * publish names them in `workflows` (DP-3). Where false, each pending Workflow is published
4001
+ * before the App, by its own publish.
4002
+ */
4003
+ publishesTogether: z19.boolean(),
4004
+ /** Nothing in the review would be refused. */
4005
+ ready: z19.boolean()
4006
+ });
3699
4007
  var appActionsListQuerySchema = listQuerySchema.extend({
3700
4008
  /**
3701
4009
  * The id of one App. Named, the answer holds that App alone: its draft for whoever writes
@@ -3731,8 +4039,9 @@ var listedAppAction = {
3731
4039
  /**
3732
4040
  * In the draft (ADR-0031): where the caller's next call of the action goes. `live` for a
3733
4041
  * reading action, and for a changing one the caller switched "Run live once" on for;
3734
- * `dry_run` for any other changing action, which is simulated. Missing for a published
3735
- * revision, every call of which is live.
4042
+ * `dry_run` for any other changing action, which is simulated; `test` for a `workflow` action,
4043
+ * which starts a test run of the Workflow (DP-1). Missing for a published revision, every
4044
+ * call of which is live.
3736
4045
  */
3737
4046
  target: operationTargetSchema.optional(),
3738
4047
  /** An agent that lists `toolName` carries the action as a tool now. */
@@ -3840,6 +4149,22 @@ var appOperations = {
3840
4149
  errors: ["NOT_FOUND", "CONFLICT", "REVISION_CONFLICT", "VALIDATION_FAILED"],
3841
4150
  rateClass: "write"
3842
4151
  }),
4152
+ // Only where release config sets `apps.draftHosts.enabled`; elsewhere it answers 404.
4153
+ "apps.allow_draft_host": defineRegisteredOperation({
4154
+ id: "apps.allow_draft_host",
4155
+ method: "POST",
4156
+ path: "/api/v1/apps/draft-hosts",
4157
+ summary: "Allow an outside host a draft lists for the caller's own view of that draft, before it is published",
4158
+ tag: "Apps",
4159
+ auth: "user",
4160
+ scope: "config_assets:write",
4161
+ requires: [],
4162
+ effect: "changing",
4163
+ body: allowDraftHostRequestSchema,
4164
+ response: json(allowDraftHostResponseSchema),
4165
+ errors: ["NOT_FOUND", "FORBIDDEN", "VALIDATION_FAILED"],
4166
+ rateClass: "write"
4167
+ }),
3843
4168
  "apps.get_from_page": defineOperation({
3844
4169
  id: "apps.get_from_page",
3845
4170
  method: "GET",
@@ -3871,6 +4196,38 @@ var appOperations = {
3871
4196
  errors: ["NOT_FOUND"],
3872
4197
  rateClass: "read"
3873
4198
  }),
4199
+ // An agent tries an action of an App's draft as the person's click would (DP-2): the same
4200
+ // draft context and answer, without a frame. An agent tries only the conversation's subject
4201
+ // App or an App the conversation created.
4202
+ "apps.try_action": defineRegisteredOperation({
4203
+ id: "apps.try_action",
4204
+ method: "POST",
4205
+ path: "/api/v1/apps/:app/draft-actions/:action/tries",
4206
+ summary: "Try one action of an App's draft as its button does: reads read, changes are simulated, and a workflow action starts a test run",
4207
+ tag: "Apps",
4208
+ auth: "user",
4209
+ scope: "config_assets:write",
4210
+ requires: [],
4211
+ effect: "changing",
4212
+ body: appTryActionRequestSchema,
4213
+ response: json(appTryActionResultSchema),
4214
+ errors: ["NOT_FOUND", "FORBIDDEN", "CONFLICT", "TIMEOUT", "VALIDATION_FAILED"],
4215
+ rateClass: "write"
4216
+ }),
4217
+ "apps.publish_review": defineRegisteredOperation({
4218
+ id: "apps.publish_review",
4219
+ method: "GET",
4220
+ path: "/api/v1/apps/:app/publish-review",
4221
+ summary: "Read what publishing an App's draft comes to: the App and the Workflows it calls, their pending drafts, publish questions and what would refuse them",
4222
+ tag: "Apps",
4223
+ auth: "user",
4224
+ scope: "config_assets:read",
4225
+ requires: [],
4226
+ effect: "reading",
4227
+ response: json(appPublishReviewSchema),
4228
+ errors: ["NOT_FOUND", "FORBIDDEN"],
4229
+ rateClass: "read"
4230
+ }),
3874
4231
  // POST because it carries the token of the frame's address, which never stands in a path.
3875
4232
  "apps.sessions.context": defineOperation({
3876
4233
  id: "apps.sessions.context",
@@ -4858,6 +5215,8 @@ var configAssetOperations = {
4858
5215
 
4859
5216
  // src/operations/connections.ts
4860
5217
  import {
5218
+ CATALOGUE_CATEGORIES,
5219
+ CATALOGUE_PARTS,
4861
5220
  PUBLISHED_DATA_CONSUMER_KINDS,
4862
5221
  CONNECTION_BINDING_STATES,
4863
5222
  GRANT_HOLDER_KINDS as GRANT_HOLDER_KINDS2,
@@ -4974,11 +5333,16 @@ var connectionDetailSchema = z24.object({
4974
5333
  oauth: connectionOAuthSchema.optional()
4975
5334
  });
4976
5335
  var connectionOAuthStartSchema = z24.object({
5336
+ /** The sign-in, for `connections.oauth_sign_in`. It proves nothing and opens nothing. */
5337
+ signInId: z24.string(),
4977
5338
  authorizationUrl: z24.string().url(),
4978
5339
  providerHost: z24.string(),
4979
5340
  scopes: z24.array(z24.string()),
4980
5341
  expiresAt: timestampSchema
4981
5342
  });
5343
+ var connectionOAuthSignInSchema = z24.object({
5344
+ state: z24.enum(["waiting", "ended"])
5345
+ });
4982
5346
  var connectionDisconnectSchema = z24.object({
4983
5347
  state: z24.literal("revoked"),
4984
5348
  providerRevocation: z24.enum(CONNECTION_PROVIDER_REVOCATIONS)
@@ -5014,9 +5378,91 @@ var connectionToolsSchema = z24.object({
5014
5378
  })
5015
5379
  )
5016
5380
  });
5381
+ var localizedTextSchema = z24.union([
5382
+ z24.string(),
5383
+ z24.strictObject({ en: z24.string().optional(), de: z24.string().optional() })
5384
+ ]);
5385
+ var connectorTypeOffersSchema = z24.object({
5386
+ types: z24.array(
5387
+ z24.object({
5388
+ type: z24.string(),
5389
+ title: localizedTextSchema,
5390
+ description: localizedTextSchema,
5391
+ service: z24.string().optional(),
5392
+ documentSource: z24.boolean(),
5393
+ authScheme: z24.string(),
5394
+ settings: z24.record(z24.string(), z24.unknown()),
5395
+ fields: z24.array(
5396
+ z24.object({
5397
+ label: localizedTextSchema,
5398
+ help: localizedTextSchema.optional(),
5399
+ optional: z24.boolean(),
5400
+ setting: z24.string().optional(),
5401
+ secret: z24.boolean()
5402
+ })
5403
+ )
5404
+ })
5405
+ ),
5406
+ /**
5407
+ * The catalogue's entries (CAT-1): one card each in "Dienste". `offered` is false for one
5408
+ * the operator has not named, which is shown greyed and cannot be installed. A part lists the
5409
+ * operations it proposes; none of them is enabled before the admin confirms the review step.
5410
+ */
5411
+ entries: z24.array(
5412
+ z24.object({
5413
+ id: z24.string(),
5414
+ version: z24.number().int(),
5415
+ service: z24.string(),
5416
+ title: localizedTextSchema,
5417
+ description: localizedTextSchema,
5418
+ category: z24.enum(CATALOGUE_CATEGORIES),
5419
+ examplePrompts: z24.array(localizedTextSchema),
5420
+ mark: z24.object({ color: z24.string().optional(), logo: z24.string().optional() }),
5421
+ offered: z24.boolean(),
5422
+ parts: z24.array(
5423
+ z24.object({
5424
+ part: z24.enum(CATALOGUE_PARTS),
5425
+ connectorType: z24.string(),
5426
+ name: z24.string(),
5427
+ title: localizedTextSchema.optional(),
5428
+ description: localizedTextSchema,
5429
+ authScheme: z24.string(),
5430
+ settings: z24.record(z24.string(), z24.unknown()),
5431
+ fields: z24.array(
5432
+ z24.object({
5433
+ label: localizedTextSchema,
5434
+ help: localizedTextSchema.optional(),
5435
+ optional: z24.boolean(),
5436
+ setting: z24.string().optional(),
5437
+ secret: z24.boolean(),
5438
+ default: z24.string().optional()
5439
+ })
5440
+ ),
5441
+ prerequisites: z24.array(
5442
+ z24.object({ text: localizedTextSchema, value: z24.string().optional() })
5443
+ ),
5444
+ hosts: z24.array(z24.string()),
5445
+ operations: z24.array(
5446
+ z24.object({
5447
+ name: z24.string(),
5448
+ title: z24.string().optional(),
5449
+ description: z24.string().optional(),
5450
+ effect: z24.enum(OPERATION_EFFECTS5),
5451
+ recommended: z24.boolean(),
5452
+ declaration: z24.record(z24.string(), z24.unknown()).optional()
5453
+ })
5454
+ ),
5455
+ sharedAccountNote: localizedTextSchema,
5456
+ documentSource: z24.boolean()
5457
+ })
5458
+ )
5459
+ })
5460
+ ).default([])
5461
+ });
5017
5462
  var connectionSecretWriteSchema = z24.object({
5018
5463
  value: z24.string().min(1).max(SECRET_VALUE_MAX_CHARS),
5019
- expectedVersion: z24.number().int().positive().nullable()
5464
+ expectedVersion: z24.number().int().positive().nullable(),
5465
+ expectedRevision: z24.number().int().positive()
5020
5466
  });
5021
5467
  var connectionDiscoveryRequestSchema = z24.object({ status: z24.literal("queued") });
5022
5468
  var personContextSubjectSchema = z24.object({
@@ -5140,6 +5586,20 @@ var connectionOperations = {
5140
5586
  errors: ["NOT_FOUND", "CONFLICT"],
5141
5587
  rateClass: "write"
5142
5588
  }),
5589
+ "connections.oauth_sign_in": defineRegisteredOperation({
5590
+ id: "connections.oauth_sign_in",
5591
+ method: "GET",
5592
+ path: "/api/v1/connections/:name/oauth/sign-ins/:signInId",
5593
+ summary: "Read whether a shared OAuth sign-in the caller started still waits for the browser to come back",
5594
+ tag: "Connections",
5595
+ auth: "user",
5596
+ scope: "config_assets:read",
5597
+ requires: [],
5598
+ effect: "reading",
5599
+ response: json(connectionOAuthSignInSchema),
5600
+ errors: ["NOT_FOUND"],
5601
+ rateClass: "read"
5602
+ }),
5143
5603
  // One callback per Connection: a code sent back for one Connection is never taken for
5144
5604
  // another's sign-in.
5145
5605
  "connections.oauth_complete": defineRegisteredOperation({
@@ -5176,6 +5636,20 @@ var connectionOperations = {
5176
5636
  rateClass: "write"
5177
5637
  }),
5178
5638
  // A path of its own: `agent-tools` would be a valid Connection name under `/connections/`.
5639
+ "connections.connector_types": defineRegisteredOperation({
5640
+ id: "connections.connector_types",
5641
+ method: "GET",
5642
+ path: "/api/v1/connector-types",
5643
+ summary: "List the Connector types a person who may make a Connection can connect from a form",
5644
+ tag: "Connections",
5645
+ auth: "principal",
5646
+ scope: "config_assets:read",
5647
+ requires: [],
5648
+ effect: "reading",
5649
+ response: json(connectorTypeOffersSchema),
5650
+ errors: [],
5651
+ rateClass: "read"
5652
+ }),
5179
5653
  "connections.list_tools": defineRegisteredOperation({
5180
5654
  id: "connections.list_tools",
5181
5655
  method: "GET",
@@ -5195,7 +5669,7 @@ var connectionOperations = {
5195
5669
  // src/operations/data-stores.ts
5196
5670
  import { workflowDataFlowsSchema } from "@work-shape/catalyst-asset-schemas";
5197
5671
  import {
5198
- APP_AUDIENCES as APP_AUDIENCES2,
5672
+ APP_AUDIENCES as APP_AUDIENCES3,
5199
5673
  DATA_STORE_CONDITIONS,
5200
5674
  DATA_STORE_INSERT_CONFLICT_MODES,
5201
5675
  DATA_STORE_MIGRATION_OUTCOMES,
@@ -5376,7 +5850,7 @@ var dataStoreSourceSchema = z25.object({
5376
5850
  title: z25.string()
5377
5851
  });
5378
5852
  var dataStoreAudienceSchema = z25.object({
5379
- app: z25.object({ audience: z25.enum(APP_AUDIENCES2), people: z25.number().int() }).optional(),
5853
+ app: z25.object({ audience: z25.enum(APP_AUDIENCES3), people: z25.number().int() }).optional(),
5380
5854
  workspace: z25.object({ title: z25.string(), members: z25.number().int() }).optional(),
5381
5855
  /** The holders by a grant row, named only to a caller who administers users. */
5382
5856
  holders: z25.array(
@@ -5982,6 +6456,23 @@ var conversationOperations = {
5982
6456
  errors: ["NOT_FOUND", "FORBIDDEN", "CONFLICT"],
5983
6457
  rateClass: "write"
5984
6458
  }),
6459
+ // As if it had been sent with `followUp: "steer"`: only its author, in their own run under the
6460
+ // same credential, and only without attachments. Otherwise CONFLICT, and it stays queued.
6461
+ "conversations.follow_ups.steer": defineOperation({
6462
+ id: "conversations.follow_ups.steer",
6463
+ method: "POST",
6464
+ path: "/api/v1/conversations/:conversationId/follow-ups/:followUpId/steer",
6465
+ summary: "Hand your pending follow-up message to your running turn after its current step",
6466
+ tag: "Conversations",
6467
+ auth: "user",
6468
+ scope: "conversation:write",
6469
+ requires: [],
6470
+ effect: "changing",
6471
+ body: z27.object({}),
6472
+ response: json(z27.object({ followUp: conversationFollowUpSchema })),
6473
+ errors: ["NOT_FOUND", "FORBIDDEN", "CONFLICT"],
6474
+ rateClass: "write"
6475
+ }),
5985
6476
  "conversations.follow_ups.dispatch": defineOperation({
5986
6477
  id: "conversations.follow_ups.dispatch",
5987
6478
  method: "POST",
@@ -6342,7 +6833,10 @@ var auditActivityTargetSchema = z30.object({
6342
6833
  var auditActivitySchema = z30.object({
6343
6834
  correlationId: z30.string(),
6344
6835
  at: timestampSchema,
6345
- label: z30.string(),
6836
+ /** The type of the event that titles the activity; the interface words it. */
6837
+ type: z30.string(),
6838
+ /** What a tool says it did, such as `workspace.exec`, where a tool's event titles it. */
6839
+ action: z30.string().optional(),
6346
6840
  tier: z30.enum(AUDIT_TIERS),
6347
6841
  outcome: z30.enum(AUDIT_OUTCOMES),
6348
6842
  actor: auditActivityActorSchema,
@@ -7355,6 +7849,7 @@ var knowledgeOperations = {
7355
7849
 
7356
7850
  // src/operations/operations.ts
7357
7851
  import {
7852
+ callableOperationsPageSchema,
7358
7853
  OPERATION_CONFIRMATION_DECISIONS,
7359
7854
  OPERATION_EFFECTS as OPERATION_EFFECTS6,
7360
7855
  OPERATION_ORIGIN_KINDS
@@ -7421,6 +7916,31 @@ var operationRunOperations = {
7421
7916
  errors: [],
7422
7917
  rateClass: "read"
7423
7918
  }),
7919
+ "operations.list_callable": defineRegisteredOperation({
7920
+ id: "operations.list_callable",
7921
+ method: "GET",
7922
+ path: "/api/v1/operations/callable",
7923
+ summary: "List a page of the operations a step of a Workflow may call, as far as the caller may call them",
7924
+ tag: "Operations",
7925
+ auth: "principal",
7926
+ scope: "config_assets:read",
7927
+ // No right of its own: each operation is listed exactly where its own check of a call
7928
+ // from a Workflow step lets the caller call it. The listing grants nothing.
7929
+ requires: [],
7930
+ effect: "reading",
7931
+ query: z38.object({
7932
+ /** Who calls: a step of a Workflow. An App's listing is the agent's alone. */
7933
+ for: z38.enum(["workflow"]).default("workflow"),
7934
+ cursor: z38.string().min(1).optional(),
7935
+ /** An exact full operation name. */
7936
+ name: z38.string().min(1).optional(),
7937
+ /** Only operation names starting with this, such as `connection.crm.`. */
7938
+ prefix: z38.string().min(1).optional()
7939
+ }),
7940
+ response: json(callableOperationsPageSchema),
7941
+ errors: [],
7942
+ rateClass: "read"
7943
+ }),
7424
7944
  "operations.decide": defineRegisteredOperation({
7425
7945
  id: "operations.decide",
7426
7946
  method: "POST",
@@ -7979,7 +8499,7 @@ var roleOperations = {
7979
8499
  id: "roles.update",
7980
8500
  method: "PATCH",
7981
8501
  path: "/api/v1/instance/access/roles/:roleId",
7982
- summary: "Change a role's name, description or grants. Only a superadmin edits `user` and `admin`; `superadmin` is never edited.",
8502
+ summary: "Change a role's name, description or grants. Editing `user` and `admin` also needs `roles.edit_built_in`; `superadmin` is never edited.",
7983
8503
  tag: "Access",
7984
8504
  auth: "user",
7985
8505
  scope: "user_admin:write",
@@ -8008,7 +8528,7 @@ var roleOperations = {
8008
8528
  id: "roles.reset",
8009
8529
  method: "POST",
8010
8530
  path: "/api/v1/instance/access/roles/:roleId/reset",
8011
- summary: "Reset `user` or `admin` to the release's default, which also settles every pending action. Only a superadmin resets.",
8531
+ summary: "Reset `user` or `admin` to the release's default, which also settles every pending action. Needs `users.manage` and `roles.edit_built_in`.",
8012
8532
  tag: "Access",
8013
8533
  auth: "user",
8014
8534
  scope: "user_admin:write",
@@ -8022,7 +8542,7 @@ var roleOperations = {
8022
8542
  id: "roles.pending.decide",
8023
8543
  method: "POST",
8024
8544
  path: "/api/v1/instance/access/roles/:roleId/pending",
8025
- summary: "Decide one action a release changed in the default of an edited `user` or `admin`: apply it or dismiss it. Only a superadmin decides.",
8545
+ summary: "Decide one action a release changed in the default of an edited `user` or `admin`: apply it or dismiss it. Needs `users.manage` and `roles.edit_built_in`.",
8026
8546
  tag: "Access",
8027
8547
  auth: "user",
8028
8548
  scope: "user_admin:write",
@@ -8335,8 +8855,9 @@ import {
8335
8855
  WORKFLOW_RESERVED_STEP_TYPES,
8336
8856
  WORKFLOW_DATASET_STATES,
8337
8857
  WORKFLOW_RUN_MODES,
8338
- WORKFLOW_RUN_STATUSES as WORKFLOW_RUN_STATUSES2,
8858
+ WORKFLOW_RUN_STATUSES as WORKFLOW_RUN_STATUSES3,
8339
8859
  WORKFLOW_STEP_RUN_STATUSES,
8860
+ WORKFLOW_TEST_REVISIONS as WORKFLOW_TEST_REVISIONS3,
8340
8861
  WORKFLOW_STEP_TYPES,
8341
8862
  WORKFLOW_DATASET_DOWNLOAD_FORMATS,
8342
8863
  WORKFLOW_TRIGGER_KINDS
@@ -8345,7 +8866,7 @@ import { z as z44 } from "zod";
8345
8866
  var WORKFLOW_RUN_OUTPUT_PREVIEW_MAX_CHARS = 2e3;
8346
8867
  var WORKFLOW_RUN_KEY_MAX_CHARS = 200;
8347
8868
  var runKeySchema = z44.string().min(1).max(WORKFLOW_RUN_KEY_MAX_CHARS);
8348
- var runStatusSchema = z44.enum(WORKFLOW_RUN_STATUSES2);
8869
+ var runStatusSchema = z44.enum(WORKFLOW_RUN_STATUSES3);
8349
8870
  var stepRunStatusSchema = z44.enum(WORKFLOW_STEP_RUN_STATUSES);
8350
8871
  var stepTypeSchema = z44.enum([...WORKFLOW_STEP_TYPES, ...WORKFLOW_RESERVED_STEP_TYPES]);
8351
8872
  var countsSchema = z44.object({
@@ -8421,6 +8942,18 @@ var workflowRunSchema = z44.object({
8421
8942
  }).optional(),
8422
8943
  /** The Operation Run of the call that started the run. */
8423
8944
  operationRunId: z44.string().optional(),
8945
+ /**
8946
+ * The action of an App's draft whose click started this test run (DP-1): the App, the
8947
+ * revision of its draft and the action, by name, and whether the Workflow's draft or its
8948
+ * published revision ran. Missing on every other run.
8949
+ */
8950
+ startedFrom: z44.object({
8951
+ kind: z44.literal("app"),
8952
+ app: z44.string(),
8953
+ appRevisionId: z44.string(),
8954
+ action: z44.string(),
8955
+ workflowRevision: z44.enum(WORKFLOW_TEST_REVISIONS3)
8956
+ }).optional(),
8424
8957
  parentRunId: z44.string().optional(),
8425
8958
  parentStepRunId: z44.string().optional(),
8426
8959
  rootRunId: z44.string(),
@@ -8563,6 +9096,8 @@ var workflowSummarySchema = z44.object({
8563
9096
  description: z44.string().optional(),
8564
9097
  /** The published revision: what a run started now has as its `definitionRevisionId`. */
8565
9098
  definitionRevisionId: z44.string(),
9099
+ /** The workspace that owns the Workflow (WS-OWN-1b). Missing where the instance owns it. */
9100
+ workspaceId: z44.string().optional(),
8566
9101
  /** Whether a start by hand is accepted now, as far as that is known before its input. */
8567
9102
  runnable: z44.boolean(),
8568
9103
  /** Why not. Empty exactly where `runnable` is true. */
@@ -8572,6 +9107,11 @@ var workflowSummarySchema = z44.object({
8572
9107
  * from which a page builds its start form. Missing where the definition cannot be read.
8573
9108
  */
8574
9109
  inputs: z44.record(z44.string(), z44.unknown()).optional(),
9110
+ /**
9111
+ * How the published revision is started, the kinds of its trigger: `manual`, `schedule`,
9112
+ * `parent` (by a step of another Workflow). Missing where the definition cannot be read.
9113
+ */
9114
+ triggers: z44.array(z44.string()).optional(),
8575
9115
  /**
8576
9116
  * The display label of the service principal every run of the Workflow acts as. Missing
8577
9117
  * where that principal is disabled or gone, which `reasons` then says.
@@ -8606,7 +9146,9 @@ var workflowOperations = {
8606
9146
  response: json(
8607
9147
  z44.object({
8608
9148
  draftRevision: z44.number().int().positive(),
8609
- unpublishedRevision: z44.number().int().positive()
9149
+ unpublishedRevision: z44.number().int().positive(),
9150
+ /** The live Apps that start the Workflow and stop working without it (DP-0). */
9151
+ warnings: z44.array(assetWarningSchema)
8610
9152
  })
8611
9153
  ),
8612
9154
  errors: ["NOT_FOUND", "VALIDATION_FAILED"],
@@ -8835,6 +9377,39 @@ import {
8835
9377
  } from "@work-shape/catalyst-asset-schemas";
8836
9378
 
8837
9379
  // src/operations/index.ts
9380
+ var operationAreas = {
9381
+ access: accessOperations,
9382
+ account: accountOperations,
9383
+ agents: agentOperations,
9384
+ "api-access": apiAccessOperations,
9385
+ "approval-requests": approvalRequestOperations,
9386
+ apps: appOperations,
9387
+ assets: assetOperations,
9388
+ "collaboration-workspaces": collaborationWorkspaceOperations,
9389
+ "config-assets": configAssetOperations,
9390
+ connections: connectionOperations,
9391
+ "conversation-files": conversationFileOperations,
9392
+ conversations: conversationOperations,
9393
+ credentials: credentialOperations,
9394
+ "data-stores": dataStoreOperations,
9395
+ feedback: feedbackOperations,
9396
+ governance: governanceOperations,
9397
+ guardrails: guardrailOperations,
9398
+ instance: instanceOperations,
9399
+ jobs: jobOperations,
9400
+ knowledge: knowledgeOperations,
9401
+ operations: operationRunOperations,
9402
+ pages: pageOperations,
9403
+ "personal-api-keys": personalApiKeyOperations,
9404
+ platform: platformOperations,
9405
+ reference: referenceOperations,
9406
+ roles: roleOperations,
9407
+ "scheduled-starts": scheduledStartOperations,
9408
+ system: systemOperations,
9409
+ users: userOperations,
9410
+ "workflow-principal-rights": workflowPrincipalRightsOperations,
9411
+ workflows: workflowOperations
9412
+ };
8838
9413
  var apiOperations = {
8839
9414
  ...scheduledStartOperations,
8840
9415
  ...approvalRequestOperations,
@@ -8874,6 +9449,8 @@ var schemas_exports = {};
8874
9449
  __export(schemas_exports, {
8875
9450
  API_ERROR_MEANINGS: () => API_ERROR_MEANINGS,
8876
9451
  APP_ASSET_KIND: () => APP_ASSET_KIND,
9452
+ APP_PUBLISH_WORKFLOWS_MAX: () => APP_PUBLISH_WORKFLOWS_MAX,
9453
+ ASSET_CHECK_VERBS: () => ASSET_CHECK_VERBS,
8877
9454
  ASSET_GET_FILES_MAX_BYTES: () => ASSET_GET_FILES_MAX_BYTES,
8878
9455
  ASSET_PUT_FILES_MAX_BYTES: () => ASSET_PUT_FILES_MAX_BYTES,
8879
9456
  ASSET_RELEASE_SYNC_MAX_ITEMS: () => ASSET_RELEASE_SYNC_MAX_ITEMS,
@@ -8888,11 +9465,14 @@ __export(schemas_exports, {
8888
9465
  INVALID_JSON_BODY_REASON: () => INVALID_JSON_BODY_REASON,
8889
9466
  LIVE_ONCE_PART_MAX_LENGTH: () => LIVE_ONCE_PART_MAX_LENGTH,
8890
9467
  MAX_LIST_LIMIT: () => MAX_LIST_LIMIT,
9468
+ REFUSAL_REASONS: () => REFUSAL_REASONS,
8891
9469
  ROLE_GRANTS_MAX: () => ROLE_GRANTS_MAX,
8892
9470
  UNKNOWN_OPERATION_REASON: () => UNKNOWN_OPERATION_REASON,
8893
9471
  VIEW_RUNTIME: () => VIEW_RUNTIME,
8894
9472
  VIEW_SHELL: () => VIEW_SHELL,
8895
9473
  VIEW_SHELL_MESSAGES: () => VIEW_SHELL_MESSAGES,
9474
+ accessOriginRoleSchema: () => accessOriginRoleSchema,
9475
+ accessOriginSchema: () => accessOriginSchema,
8896
9476
  activeRunSummarySchema: () => activeRunSummarySchema,
8897
9477
  addWorkspaceMemberRequestSchema: () => addWorkspaceMemberRequestSchema,
8898
9478
  administeredCollaborationWorkspaceSchema: () => administeredCollaborationWorkspaceSchema,
@@ -8914,6 +9494,9 @@ __export(schemas_exports, {
8914
9494
  agentRuntimeMessageMetadataSchema: () => agentRuntimeMessageMetadataSchema,
8915
9495
  agentToolReferenceSchema: () => agentToolReferenceSchema,
8916
9496
  agentTryConversationResponseSchema: () => agentTryConversationResponseSchema,
9497
+ agentUseSchema: () => agentUseSchema,
9498
+ allowDraftHostRequestSchema: () => allowDraftHostRequestSchema,
9499
+ allowDraftHostResponseSchema: () => allowDraftHostResponseSchema,
8917
9500
  annotateFeedbackRequestSchema: () => annotateFeedbackRequestSchema,
8918
9501
  apiCredentialSchema: () => apiCredentialSchema,
8919
9502
  apiCredentialScopeSchema: () => apiCredentialScopeSchema,
@@ -8933,11 +9516,15 @@ __export(schemas_exports, {
8933
9516
  appModeSchema: () => appModeSchema,
8934
9517
  appPreviewRequestSchema: () => appPreviewRequestSchema,
8935
9518
  appPreviewSchema: () => appPreviewSchema,
9519
+ appPublishRefusalSchema: () => appPublishRefusalSchema,
9520
+ appPublishReviewSchema: () => appPublishReviewSchema,
8936
9521
  appSessionContextRequestSchema: () => appSessionContextRequestSchema,
8937
9522
  appSessionContextSchema: () => appSessionContextSchema,
8938
9523
  appSqlActionUnavailableSchema: () => appSqlActionUnavailableSchema,
8939
9524
  appStorageWriteRequestSchema: () => appStorageWriteRequestSchema,
8940
9525
  appStorageWriteResponseSchema: () => appStorageWriteResponseSchema,
9526
+ appTryActionRequestSchema: () => appTryActionRequestSchema,
9527
+ appTryActionResultSchema: () => appTryActionResultSchema,
8941
9528
  appWorkflowActionUnavailableSchema: () => appWorkflowActionUnavailableSchema,
8942
9529
  approvalCheckResultSchema: () => approvalCheckResultSchema,
8943
9530
  approvalDecisionMessageMetadataSchema: () => approvalDecisionMessageMetadataSchema,
@@ -8958,6 +9545,8 @@ __export(schemas_exports, {
8958
9545
  assetRevisionConflictDetailsSchema: () => assetRevisionConflictDetailsSchema,
8959
9546
  assetRevisionConflictSchema: () => assetRevisionConflictSchema,
8960
9547
  assetRevisionSelectorSchema: () => assetRevisionSelectorSchema,
9548
+ assetRightsCheckQuerySchema: () => assetRightsCheckQuerySchema,
9549
+ assetRightsCheckSchema: () => assetRightsCheckSchema,
8961
9550
  assetSchema: () => assetSchema,
8962
9551
  assetScopeQuerySchema: () => assetScopeQuerySchema,
8963
9552
  assetScopeSchema: () => assetScopeSchema,
@@ -9040,6 +9629,7 @@ __export(schemas_exports, {
9040
9629
  draftAttachmentSchema: () => draftAttachmentSchema,
9041
9630
  draftAttachmentStatusSchema: () => draftAttachmentStatusSchema,
9042
9631
  draftAttachmentUploadResponseSchema: () => draftAttachmentUploadResponseSchema,
9632
+ draftHostsSchema: () => draftHostsSchema,
9043
9633
  effectivePermissionsQuerySchema: () => effectivePermissionsQuerySchema,
9044
9634
  effectivePermissionsSchema: () => effectivePermissionsSchema,
9045
9635
  exchangeApiKeyResponseSchema: () => exchangeApiKeyResponseSchema,
@@ -9049,6 +9639,7 @@ __export(schemas_exports, {
9049
9639
  grantHolderKindSchema: () => grantHolderKindSchema,
9050
9640
  grantScopeKindSchema: () => grantScopeKindSchema,
9051
9641
  healthSchema: () => healthSchema,
9642
+ holderRightsSchema: () => holderRightsSchema,
9052
9643
  infrastructureCheckSchema: () => infrastructureCheckSchema,
9053
9644
  infrastructureClassSchema: () => infrastructureClassSchema,
9054
9645
  infrastructureOriginSchema: () => infrastructureOriginSchema,
@@ -9146,6 +9737,7 @@ __export(schemas_exports, {
9146
9737
  runObservationSchema: () => runObservationSchema,
9147
9738
  safeConfigSchema: () => safeConfigSchema,
9148
9739
  saveApprovalSchema: () => saveApprovalSchema,
9740
+ scopeAssignmentsOverviewSchema: () => scopeAssignmentsOverviewSchema,
9149
9741
  sendAdministeredUserInvitationResponseSchema: () => sendAdministeredUserInvitationResponseSchema,
9150
9742
  sendFeedbackRequestSchema: () => sendFeedbackRequestSchema,
9151
9743
  servicePrincipalDetailSchema: () => servicePrincipalDetailSchema,
@@ -9153,6 +9745,8 @@ __export(schemas_exports, {
9153
9745
  servicePrincipalSchema: () => servicePrincipalSchema,
9154
9746
  servicePrincipalStatusSchema: () => servicePrincipalStatusSchema,
9155
9747
  sessionTokenDelegatedActorSchema: () => sessionTokenDelegatedActorSchema,
9748
+ setAgentUseRequestSchema: () => setAgentUseRequestSchema,
9749
+ setAgentUseResponseSchema: () => setAgentUseResponseSchema,
9156
9750
  setAssetAvailabilityRequestSchema: () => setAssetAvailabilityRequestSchema,
9157
9751
  setAssetDefaultRequestSchema: () => setAssetDefaultRequestSchema,
9158
9752
  setAssetDefaultResponseSchema: () => setAssetDefaultResponseSchema,
@@ -9903,6 +10497,8 @@ export {
9903
10497
  APP_BRIDGE_NAME_MAX_CHARS,
9904
10498
  APP_BRIDGE_REQUEST_ID_MAX_CHARS,
9905
10499
  APP_BRIDGE_VERSION,
10500
+ APP_PUBLISH_WORKFLOWS_MAX,
10501
+ ASSET_CHECK_VERBS,
9906
10502
  ASSET_GET_FILES_MAX_BYTES,
9907
10503
  ASSET_PUT_FILES_MAX_BYTES,
9908
10504
  ASSET_RELEASE_SYNC_MAX_ITEMS,
@@ -9927,6 +10523,7 @@ export {
9927
10523
  MAX_LIST_LIMIT,
9928
10524
  OPERATION_HEADERS,
9929
10525
  PUBLISHED_CLI_VERSION,
10526
+ REFUSAL_REASONS,
9930
10527
  RELEASE_VERSION,
9931
10528
  ROLE_GRANTS_MAX,
9932
10529
  UNKNOWN_OPERATION_REASON,
@@ -9936,6 +10533,8 @@ export {
9936
10533
  WORKFLOW_RUN_KEY_MAX_CHARS,
9937
10534
  WORKFLOW_RUN_OUTPUT_PREVIEW_MAX_CHARS,
9938
10535
  WORKFLOW_STEP_SOURCE_KINDS,
10536
+ accessOriginRoleSchema,
10537
+ accessOriginSchema,
9939
10538
  activeRunSummarySchema,
9940
10539
  addWorkspaceMemberRequestSchema,
9941
10540
  administeredCollaborationWorkspaceSchema,
@@ -9957,6 +10556,9 @@ export {
9957
10556
  agentRuntimeMessageMetadataSchema,
9958
10557
  agentToolReferenceSchema,
9959
10558
  agentTryConversationResponseSchema,
10559
+ agentUseSchema,
10560
+ allowDraftHostRequestSchema,
10561
+ allowDraftHostResponseSchema,
9960
10562
  annotateFeedbackRequestSchema,
9961
10563
  apiCredentialSchema,
9962
10564
  apiCredentialScopeSchema,
@@ -9983,12 +10585,16 @@ export {
9983
10585
  appModeSchema,
9984
10586
  appPreviewRequestSchema,
9985
10587
  appPreviewSchema,
10588
+ appPublishRefusalSchema,
10589
+ appPublishReviewSchema,
9986
10590
  appSessionContextRequestSchema,
9987
10591
  appSessionContextSchema,
9988
10592
  appSqlActionUnavailableSchema,
9989
10593
  appStorageMutationSchema,
9990
10594
  appStorageWriteRequestSchema,
9991
10595
  appStorageWriteResponseSchema,
10596
+ appTryActionRequestSchema,
10597
+ appTryActionResultSchema,
9992
10598
  appWorkflowActionUnavailableSchema,
9993
10599
  appWorkflowRunSchema,
9994
10600
  approvalCheckResultSchema,
@@ -10010,6 +10616,8 @@ export {
10010
10616
  assetRevisionConflictDetailsSchema,
10011
10617
  assetRevisionConflictSchema,
10012
10618
  assetRevisionSelectorSchema,
10619
+ assetRightsCheckQuerySchema,
10620
+ assetRightsCheckSchema,
10013
10621
  assetSchema,
10014
10622
  assetScopeQuerySchema,
10015
10623
  assetScopeSchema,
@@ -10061,6 +10669,7 @@ export {
10061
10669
  connectionDetailSchema,
10062
10670
  connectionDisconnectSchema,
10063
10671
  connectionNameParamsSchema,
10672
+ connectionOAuthSignInSchema,
10064
10673
  connectionOAuthStartSchema,
10065
10674
  connectionOperationDetailSchema,
10066
10675
  connectionOperationStatusSchema,
@@ -10070,6 +10679,7 @@ export {
10070
10679
  connectionTestResultSchema,
10071
10680
  connectionToolSchema,
10072
10681
  connectionToolsSchema,
10682
+ connectorTypeOffersSchema,
10073
10683
  conversationFollowUpSchema,
10074
10684
  conversationListItemSchema,
10075
10685
  conversationResourceBaseSchema,
@@ -10112,6 +10722,7 @@ export {
10112
10722
  draftAttachmentSchema,
10113
10723
  draftAttachmentStatusSchema,
10114
10724
  draftAttachmentUploadResponseSchema,
10725
+ draftHostsSchema,
10115
10726
  dryRunGuardrailRequestSchema,
10116
10727
  dryRunGuardrailResponseSchema,
10117
10728
  effectivePermissionsQuerySchema,
@@ -10128,6 +10739,7 @@ export {
10128
10739
  guardrailHitsSchema,
10129
10740
  guardrailOperations,
10130
10741
  healthSchema,
10742
+ holderRightsSchema,
10131
10743
  infrastructureCheckSchema,
10132
10744
  infrastructureClassSchema,
10133
10745
  infrastructureOriginSchema,
@@ -10184,6 +10796,7 @@ export {
10184
10796
  notReadySchema,
10185
10797
  openApiDocumentSchema,
10186
10798
  openConversationSubjectRequestSchema,
10799
+ operationAreas,
10187
10800
  operationPathParamNames,
10188
10801
  operationRunOriginSchema,
10189
10802
  operationRunSchema,
@@ -10244,6 +10857,7 @@ export {
10244
10857
  scheduledStartFieldsSchema,
10245
10858
  scheduledStartRunSchema,
10246
10859
  scheduledStartSchema,
10860
+ scopeAssignmentsOverviewSchema,
10247
10861
  selectContractBaseline,
10248
10862
  sendAdministeredUserInvitationResponseSchema,
10249
10863
  sendFeedbackRequestSchema,
@@ -10252,6 +10866,8 @@ export {
10252
10866
  servicePrincipalSchema,
10253
10867
  servicePrincipalStatusSchema,
10254
10868
  sessionTokenDelegatedActorSchema,
10869
+ setAgentUseRequestSchema,
10870
+ setAgentUseResponseSchema,
10255
10871
  setAssetAvailabilityRequestSchema,
10256
10872
  setAssetDefaultRequestSchema,
10257
10873
  setAssetDefaultResponseSchema,