@wayai/cli 0.3.236 → 0.3.237

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
@@ -4653,23 +4653,23 @@ var init_chunk_CJ3L46X6 = __esm({
4653
4653
  }
4654
4654
  });
4655
4655
 
4656
- // ../../packages/core/dist/chunk-6NI5RAM4.js
4656
+ // ../../packages/core/dist/chunk-S4VDZ7PZ.js
4657
4657
  function slugifySkillName(name) {
4658
4658
  return slugifyKebab(name, 64);
4659
4659
  }
4660
4660
  var MAX_RESOURCE_FILE_SIZE;
4661
- var init_chunk_6NI5RAM4 = __esm({
4662
- "../../packages/core/dist/chunk-6NI5RAM4.js"() {
4661
+ var init_chunk_S4VDZ7PZ = __esm({
4662
+ "../../packages/core/dist/chunk-S4VDZ7PZ.js"() {
4663
4663
  "use strict";
4664
4664
  init_chunk_CJ3L46X6();
4665
4665
  MAX_RESOURCE_FILE_SIZE = 10 * 1024 * 1024;
4666
4666
  }
4667
4667
  });
4668
4668
 
4669
- // ../../packages/core/dist/chunk-D4AWK26E.js
4669
+ // ../../packages/core/dist/chunk-LD6U3CDG.js
4670
4670
  var PREVIOUS_CONVERSATIONS_MAX;
4671
- var init_chunk_D4AWK26E = __esm({
4672
- "../../packages/core/dist/chunk-D4AWK26E.js"() {
4671
+ var init_chunk_LD6U3CDG = __esm({
4672
+ "../../packages/core/dist/chunk-LD6U3CDG.js"() {
4673
4673
  "use strict";
4674
4674
  PREVIOUS_CONVERSATIONS_MAX = 20;
4675
4675
  }
@@ -4677,23 +4677,17 @@ var init_chunk_D4AWK26E = __esm({
4677
4677
 
4678
4678
  // ../../packages/core/dist/resource-paths.js
4679
4679
  function resourceDisplayName(resource) {
4680
- if (resource.resource_type === "skill") {
4681
- return resource.skill_name || resource.resource_name || "";
4682
- }
4683
- return resource.resource_name || "";
4680
+ return resource.skill_name || resource.resource_name || "";
4684
4681
  }
4685
4682
  function skillSlug(skill) {
4686
- return baseSlug({ ...skill, resource_id: "", resource_type: "skill" });
4687
- }
4688
- function baseSlug(resource) {
4689
- return slugifySkillName(resourceDisplayName(resource)) || FALLBACK_SLUG;
4683
+ return slugifySkillName(resourceDisplayName(skill)) || FALLBACK_SLUG;
4690
4684
  }
4691
4685
  var SKILL_NAMESPACE, FALLBACK_SLUG;
4692
4686
  var init_resource_paths = __esm({
4693
4687
  "../../packages/core/dist/resource-paths.js"() {
4694
4688
  "use strict";
4695
- init_chunk_6NI5RAM4();
4696
- init_chunk_D4AWK26E();
4689
+ init_chunk_S4VDZ7PZ();
4690
+ init_chunk_LD6U3CDG();
4697
4691
  init_chunk_CJ3L46X6();
4698
4692
  init_chunk_6TSQ5HXC();
4699
4693
  SKILL_NAMESPACE = "skills";
@@ -5028,10 +5022,10 @@ var init_chunk_SXDX4GHS = __esm({
5028
5022
  }
5029
5023
  });
5030
5024
 
5031
- // ../../packages/core/dist/chunk-GWOEVI6X.js
5025
+ // ../../packages/core/dist/chunk-LSK5GWKT.js
5032
5026
  var orgResourceIdParam, orgResourceFileIdParam, orgResourceFolderIdParam, hubOrgResourceParam, listOrgResourcesQuery, orgIdQuery, createOrgResourceBody, updateOrgResourceBody, createOrgResourceFolderBody, updateOrgResourceFolderBody, uploadOrgResourceFileBody, updateOrgResourceFileBody, uploadOrgSkillZipBody, linkOrgResourceBody;
5033
- var init_chunk_GWOEVI6X = __esm({
5034
- "../../packages/core/dist/chunk-GWOEVI6X.js"() {
5027
+ var init_chunk_LSK5GWKT = __esm({
5028
+ "../../packages/core/dist/chunk-LSK5GWKT.js"() {
5035
5029
  "use strict";
5036
5030
  init_zod();
5037
5031
  orgResourceIdParam = external_exports.object({
@@ -5058,15 +5052,10 @@ var init_chunk_GWOEVI6X = __esm({
5058
5052
  organization_id: external_exports.string().uuid(),
5059
5053
  resource_name: external_exports.string().min(1).max(255),
5060
5054
  resource_description: external_exports.string().max(1e3).nullish(),
5061
- // `knowledge` parses so the route can refuse it with its reason (wayai-pro/wayai#5142 step 5).
5062
- resource_type: external_exports.enum(["knowledge", "skill"]).default("skill"),
5063
- // Skill-only fields. `skill_name` is required for a skill (validated in
5064
- // the route layer since cross-field refinement complicates the inferred
5065
- // input type for callers).
5055
+ // Required (validated in the route layer, which names the field, since a refinement here
5056
+ // complicates the inferred input type for callers).
5066
5057
  skill_name: external_exports.string().min(1).max(255).nullish(),
5067
5058
  skill_version: external_exports.string().max(50).nullish(),
5068
- folder_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5069
- file_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5070
5059
  enabled: external_exports.boolean().optional(),
5071
5060
  tags: external_exports.array(external_exports.string().uuid()).optional(),
5072
5061
  environment: external_exports.enum(["preview", "production", "all"]).optional()
@@ -5076,8 +5065,6 @@ var init_chunk_GWOEVI6X = __esm({
5076
5065
  resource_description: external_exports.string().max(1e3).nullish(),
5077
5066
  skill_name: external_exports.string().min(1).max(255).nullish(),
5078
5067
  skill_version: external_exports.string().max(50).nullish(),
5079
- folder_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5080
- file_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5081
5068
  enabled: external_exports.boolean().optional(),
5082
5069
  tags: external_exports.array(external_exports.string().uuid()).optional(),
5083
5070
  environment: external_exports.enum(["preview", "production", "all"]).optional()
@@ -5219,10 +5206,10 @@ var init_chunk_HZ6CADSY = __esm({
5219
5206
  }
5220
5207
  });
5221
5208
 
5222
- // ../../packages/core/dist/chunk-EYLDTMO7.js
5209
+ // ../../packages/core/dist/chunk-DLT7IEAN.js
5223
5210
  var resourceIdParam, listResourcesQuery, createResourceBody, updateResourceBody, syncSkillsBody, resourceFileIdParam, listResourceFilesQuery, createResourceFileBody, updateResourceFileBody, uploadResourceFileBody, uploadSkillZipBody, resourceFolderIdParam, listResourceFoldersQuery, createResourceFolderBody, updateResourceFolderBody, agentResourceQuery, hubResourceQuery, linkAgentResourceBody, updateAgentResourceBody, unlinkAgentResourceQuery;
5224
- var init_chunk_EYLDTMO7 = __esm({
5225
- "../../packages/core/dist/chunk-EYLDTMO7.js"() {
5211
+ var init_chunk_DLT7IEAN = __esm({
5212
+ "../../packages/core/dist/chunk-DLT7IEAN.js"() {
5226
5213
  "use strict";
5227
5214
  init_chunk_HZ6CADSY();
5228
5215
  init_zod();
@@ -5230,7 +5217,6 @@ var init_chunk_EYLDTMO7 = __esm({
5230
5217
  listResourcesQuery = external_exports.object({
5231
5218
  hub_id: uuidSchema,
5232
5219
  enabled: external_exports.enum(["true", "false"]).optional(),
5233
- resource_type: external_exports.enum(["knowledge", "skill"]).optional(),
5234
5220
  search: external_exports.string().optional(),
5235
5221
  limit: external_exports.string().regex(/^\d+$/).optional(),
5236
5222
  offset: external_exports.string().regex(/^\d+$/).optional()
@@ -5240,9 +5226,6 @@ var init_chunk_EYLDTMO7 = __esm({
5240
5226
  resource_name: external_exports.string().min(1),
5241
5227
  resource_description: external_exports.string().optional(),
5242
5228
  enabled: external_exports.boolean().optional(),
5243
- folder_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5244
- file_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5245
- resource_type: external_exports.enum(["knowledge", "skill"]).optional(),
5246
5229
  skill_name: external_exports.string().optional(),
5247
5230
  skill_version: external_exports.string().optional()
5248
5231
  });
@@ -5250,8 +5233,6 @@ var init_chunk_EYLDTMO7 = __esm({
5250
5233
  resource_name: external_exports.string().min(1).optional(),
5251
5234
  resource_description: external_exports.string().optional(),
5252
5235
  enabled: external_exports.boolean().optional(),
5253
- folder_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5254
- file_metadata_schema: external_exports.record(external_exports.unknown()).optional(),
5255
5236
  skill_name: external_exports.string().optional(),
5256
5237
  skill_version: external_exports.string().optional()
5257
5238
  // No `anthropic_skill_id`/`anthropic_version`: `resource` has neither column.
@@ -8453,15 +8434,15 @@ var init_chunk_MH4O3YEX = __esm({
8453
8434
  }
8454
8435
  });
8455
8436
 
8456
- // ../../packages/core/dist/chunk-GWMNV3N4.js
8437
+ // ../../packages/core/dist/chunk-FQZRBIAQ.js
8457
8438
  function catalogToolSideEffects(toolName) {
8458
8439
  const sideEffects = CATALOG_SIDE_EFFECTS.get(toolName);
8459
8440
  if (sideEffects === void 0) return "unknown";
8460
8441
  return sideEffects ? "side_effects" : "none";
8461
8442
  }
8462
8443
  var NATIVE_TOOL_SCHEMAS, WAYAI_CONNECTOR, SANDBOX_AGENT_ROLES, BASE_NATIVE_TOOLS, NATIVE_TOOLS, CATALOG_SIDE_EFFECTS;
8463
- var init_chunk_GWMNV3N4 = __esm({
8464
- "../../packages/core/dist/chunk-GWMNV3N4.js"() {
8444
+ var init_chunk_FQZRBIAQ = __esm({
8445
+ "../../packages/core/dist/chunk-FQZRBIAQ.js"() {
8465
8446
  "use strict";
8466
8447
  init_chunk_DHPUPI4Y();
8467
8448
  NATIVE_TOOL_SCHEMAS = {
@@ -8682,7 +8663,7 @@ var init_chunk_GWMNV3N4 = __esm({
8682
8663
  "properties": {
8683
8664
  "path": {
8684
8665
  "type": "string",
8685
- "description": 'Path to the file. Documents of your knowledge base live under "data/<file-type>/", exactly as list_files lists them \u2014 e.g. "data/policies/eu/refunds.md" \u2014 always written in full, and come back with the version the file is at: as text, or as base64 when the file is not text. Skill files live under "skills/" and knowledge files under "resources/", exactly as listed in your resource structure or in a file listing \u2014 e.g. "skills/order-processing/references/menu.md", where the segment after "skills/" names the skill, or "resources/product-docs/menu.md", where the segment after "resources/" names the knowledge resource. Files attached to this conversation live under "conversation/" and are announced in the transcript by that path \u2014 e.g. "conversation/report.pdf". A shorter form also works for those and is matched across everything you can read, preferring an exact path over one that merely ends with what you wrote ("references/menu.md", or just "menu.md"); dropping a middle segment does not resolve, and a bare name carried by both a skill or resource and this conversation is reported as ambiguous so you can retry with the full path. Files from an EARLIER conversation with the same user live under "conversations/<conversation_id>/" \u2014 e.g. "conversations/1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed/receipt.pdf", exactly as the transcript of that conversation announces them (get_conversation). That form takes no shortening: write the mount, the conversation id and the file name in full. Prefer this over file_id: paths are stable, while IDs are regenerated whenever a hub is published.'
8666
+ "description": 'Path to the file. Documents of your knowledge base live under "data/<file-type>/", exactly as list_files lists them \u2014 e.g. "data/policies/eu/refunds.md" \u2014 always written in full, and come back with the version the file is at: as text, or as base64 when the file is not text. Skill files live under "skills/", exactly as listed in your skill structure or in a file listing \u2014 e.g. "skills/order-processing/references/menu.md", where the segment after "skills/" names the skill. Files attached to this conversation live under "conversation/" and are announced in the transcript by that path \u2014 e.g. "conversation/report.pdf". A shorter form also works for those and is matched across everything you can read, preferring an exact path over one that merely ends with what you wrote ("references/menu.md", or just "menu.md"); dropping a middle segment does not resolve, and a bare name carried by both a skill and this conversation is reported as ambiguous so you can retry with the full path. Files from an EARLIER conversation with the same user live under "conversations/<conversation_id>/" \u2014 e.g. "conversations/1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed/receipt.pdf", exactly as the transcript of that conversation announces them (get_conversation). That form takes no shortening: write the mount, the conversation id and the file name in full. Prefer this over file_id: paths are stable, while IDs are regenerated whenever a hub is published.'
8686
8667
  },
8687
8668
  "file_id": {
8688
8669
  "type": "string",
@@ -8877,7 +8858,7 @@ var init_chunk_GWMNV3N4 = __esm({
8877
8858
  "items": {
8878
8859
  "type": "string"
8879
8860
  },
8880
- "description": 'Files to send to the user, each named by path (preferred) or by ID. Paths are the addresses announced in the transcript and in your resource structure \u2014 "conversation/report.pdf" for a file attached to this conversation, "conversations/<conversation_id>/receipt.pdf" for one attached to an earlier conversation with the same user, "skills/order-processing/price-list.pdf" for a skill file, "resources/product-docs/price-list.pdf" for a knowledge file. IDs remain accepted, but they are regenerated whenever a hub is published, so a path is the stable address.'
8861
+ "description": 'Files to send to the user, each named by path (preferred) or by ID. Paths are the addresses announced in the transcript and in your skill structure \u2014 "conversation/report.pdf" for a file attached to this conversation, "conversations/<conversation_id>/receipt.pdf" for one attached to an earlier conversation with the same user, "skills/order-processing/price-list.pdf" for a skill file. IDs remain accepted, but they are regenerated whenever a hub is published, so a path is the stable address.'
8881
8862
  },
8882
8863
  "folder_ids": {
8883
8864
  "type": "array",
@@ -8907,7 +8888,7 @@ var init_chunk_GWMNV3N4 = __esm({
8907
8888
  "properties": {
8908
8889
  "path": {
8909
8890
  "type": "string",
8910
- "description": 'What to list. Omit it (or pass "") for the mounts you can browse \u2014 the available mounts are listed here at runtime. "conversation" lists the files attached to this conversation. "skills" lists every skill mount, and "resources" every knowledge resource mount. "skills/<skill-slug>" lists the top level of a skill and "resources/<resource-slug>" that of a knowledge resource; "skills/<skill-slug>/<folder>/<subfolder>" (or the same under "resources/") lists that folder. Folder rows come back with their own path, so you drill down by passing back the path of the row you want. "data" lists your document mounts, and "data/<file-type>" or "data/<file-type>/<folder>" lists every document beneath it, a page at a time.'
8891
+ "description": 'What to list. Omit it (or pass "") for the mounts you can browse \u2014 the available mounts are listed here at runtime. "conversation" lists the files attached to this conversation. "skills" lists every skill mount. "skills/<skill-slug>" lists the top level of a skill, and "skills/<skill-slug>/<folder>/<subfolder>" lists that folder. Folder rows come back with their own path, so you drill down by passing back the path of the row you want. "data" lists your document mounts, and "data/<file-type>" or "data/<file-type>/<folder>" lists every document beneath it, a page at a time.'
8911
8892
  },
8912
8893
  "query": {
8913
8894
  "type": "string",
@@ -8922,7 +8903,7 @@ var init_chunk_GWMNV3N4 = __esm({
8922
8903
  },
8923
8904
  "metadata_filter": {
8924
8905
  "type": "object",
8925
- "description": `Filter resource and data/ files by their metadata using MongoDB-style operators. Supported: $eq (equal), $ne (not equal), $gt/$gte/$lt/$lte (comparisons), $in/$nin (in/not in array), $contains (substring for text, membership for a list), $and/$or/$not (logical). Nested paths like "location.city" are supported, and a bare value means equality. Examples: {"status": "active"}, {"priority": {"$gte": 5}}, {"location.city": "Miami"}, {"$and": [{"status": "active"}, {"priority": {"$gt": 3}}]}, {"$not": {"status": "archived"}}. A comparison between different types simply does not match. Schema from resource.file_metadata_schema, or under data/ the file type's metadata schema, which refuses a field it does not declare. Searches the whole subtree, like query.`
8906
+ "description": `Filter resource and data/ files by their metadata using MongoDB-style operators. Supported: $eq (equal), $ne (not equal), $gt/$gte/$lt/$lte (comparisons), $in/$nin (in/not in array), $contains (substring for text, membership for a list), $and/$or/$not (logical). Nested paths like "location.city" are supported, and a bare value means equality. Examples: {"status": "active"}, {"priority": {"$gte": 5}}, {"location.city": "Miami"}, {"$and": [{"status": "active"}, {"priority": {"$gt": 3}}]}, {"$not": {"status": "archived"}}. A comparison between different types simply does not match. Under data/, the file type's metadata schema refuses a field it does not declare. Searches the whole subtree, like query.`
8926
8907
  },
8927
8908
  "limit": {
8928
8909
  "type": "integer",
@@ -8937,7 +8918,7 @@ var init_chunk_GWMNV3N4 = __esm({
8937
8918
  "additionalProperties": false
8938
8919
  }
8939
8920
  },
8940
- "tool_instructions": 'Use to find out which files exist before reading one. Call it with no path first: that returns the mounts \u2014 "conversation" for what the user attached here, one "skills/<slug>" per skill and one "resources/<slug>" per knowledge resource linked to you. Then pass a mount or folder path back to list its contents. Every row carries a `path`; pass that path to read_file to open the file, or (outside "data/") to send_files to deliver it. Pass query, tags or metadata_filter to search a whole skill, resource or data/ file type at once instead of walking it folder by folder. Files from EARLIER conversations are not listed here \u2014 the transcript of each past conversation announces its own files by path (get_conversation).'
8921
+ "tool_instructions": 'Use to find out which files exist before reading one. Call it with no path first: that returns the mounts \u2014 "conversation" for what the user attached here, one "skills/<slug>" per skill linked to you, and one "data/<file-type>" per document type your toolset reaches. Then pass a mount or folder path back to list its contents. Every row carries a `path`; pass that path to read_file to open the file, or (outside "data/") to send_files to deliver it. Pass query, tags or metadata_filter to search a whole skill or data/ file type at once instead of walking it folder by folder. Files from EARLIER conversations are not listed here \u2014 the transcript of each past conversation announces its own files by path (get_conversation).'
8941
8922
  },
8942
8923
  "get_tool_schema": {
8943
8924
  "tool_config": {
@@ -9588,7 +9569,7 @@ var init_chunk_T7KQKDET = __esm({
9588
9569
  }
9589
9570
  });
9590
9571
 
9591
- // ../../packages/core/dist/chunk-BV6U4HXF.js
9572
+ // ../../packages/core/dist/chunk-WFQU5HXK.js
9592
9573
  function resolveMonitorTrigger(monitorConfig) {
9593
9574
  if (!monitorConfig || typeof monitorConfig !== "object") return "idle";
9594
9575
  const raw = monitorConfig.trigger;
@@ -9894,14 +9875,14 @@ function refineMonitorRulesStructuredOutput(body, ctx) {
9894
9875
  if (refusal2) ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["response_format"], message: refusal2 });
9895
9876
  }
9896
9877
  var NATIVE_TOOL_NAMES, previousConversationsCountField, summarizationThresholdField, flagConditionSchema, MONITOR_TRIGGERS, monitorTriggerSchema, AUTOMATION_GATE_TRIGGERS, NON_FIRING_TRIGGERS, MONITOR_FIRING_TRIGGERS, MONITOR_DELAY_SECONDS_MIN, MONITOR_IDLE_DELAY_REQUIRED_MESSAGE, MONITOR_HISTORY_MESSAGES_MAX, monitorHistoryMessagesSchema, monitorIncludeToolResultsSchema, MONITOR_INPUT_SHAPING_KEYS, MONITOR_INPUT_SHAPING_SCHEMAS, MONITOR_INPUT_SHAPING_IDLE_MESSAGE, monitorArgumentSourceSchema, MONITOR_NOTE_TEMPLATE_MAX, MONITOR_STEER_NOTE_MAX, MONITOR_GATE_AGENT_NAME_MAX, monitorActionSchema, monitorRuleSchema, MONITOR_RULE_KEYS, MONITOR_RULE_SCHEMAS, MONITOR_RULE_TRIGGERS, MONITOR_RULE_TRIGGER_MESSAGE, CALL_UTTERANCE_SPEAKERS, callUtteranceSpeakerSchema, MONITOR_CALL_KEYS, MONITOR_CALL_SCHEMAS, MONITOR_CALL_KEY_MESSAGE, CALL_STEERING_MIN_CONFIDENCE, CALL_UTTERANCE_RULE_NOT_CONFIDENT_MESSAGE, CALL_UTTERANCE_FALLBACK_MESSAGE, CALL_UTTERANCE_FLAG_CONDITIONS_MESSAGE, CALL_STEER_NOTE_BLANK_MESSAGE, MONITOR_USER_MESSAGE_ACTION_KINDS, MONITOR_ASSISTANT_REPLY_ACTION_KINDS, MONITOR_CALL_UTTERANCE_ACTION_KINDS, MONITOR_AUTOMATION_FIRE_ACTION_KINDS, MONITOR_AUTOMATION_ITEM_ACTION_KINDS, INSERT_NOTE_TOOL_NAME, RUN_MONITOR_TOOL_NAME, MONITOR_RULE_ALLOWED_NATIVE_TOOLS, MONITOR_RULE_REENTRY_TOOLS, MONITOR_RULE_REENTRY_TRACKS, AUTOMATION_FIRE_FLAG_CONDITIONS_MESSAGE, AUTOMATION_FIRE_INPUT_SHAPING_MESSAGE, AUTOMATION_ITEM_FLAG_CONDITIONS_MESSAGE, AUTOMATION_ITEM_INPUT_SHAPING_MESSAGE, AUTOMATION_GATE_KEY_MESSAGES, monitorConfigField, flagConditionsField, agentIdParam, listAgentsQuery, agentConnectionsQuery, createAgentBody, updateAgentBody, AGENT_PARAMETER_TYPES, AGENT_PARAMETER_NAME_REGEX, agentParameterCreateSchema, MAX_AGENT_PARAMETERS_PER_REQUEST, createAgentParametersBody;
9897
- var init_chunk_BV6U4HXF = __esm({
9898
- "../../packages/core/dist/chunk-BV6U4HXF.js"() {
9878
+ var init_chunk_WFQU5HXK = __esm({
9879
+ "../../packages/core/dist/chunk-WFQU5HXK.js"() {
9899
9880
  "use strict";
9900
- init_chunk_GWMNV3N4();
9881
+ init_chunk_FQZRBIAQ();
9901
9882
  init_chunk_IBL7FANV();
9902
9883
  init_chunk_HZ6CADSY();
9903
9884
  init_chunk_C2UEA2KW();
9904
- init_chunk_D4AWK26E();
9885
+ init_chunk_LD6U3CDG();
9905
9886
  init_chunk_DHPUPI4Y();
9906
9887
  init_chunk_T7KQKDET();
9907
9888
  init_chunk_L5F7ZOUJ();
@@ -10120,12 +10101,12 @@ var init_chunk_BV6U4HXF = __esm({
10120
10101
  }
10121
10102
  });
10122
10103
 
10123
- // ../../packages/core/dist/chunk-MUG3LWPZ.js
10104
+ // ../../packages/core/dist/chunk-KTUVBNMI.js
10124
10105
  var conversationIdParam, conversationHubQuery, claimBody, releaseBody, transferBody, closeBody, additionalContextPayloadSchema, kanbanUpdateBody, annotateConversationBody, observabilityParams, observabilityListParams, deleteUserConversationsBody, deleteUserConversationsResponse, sendMessageBody, listConversationsQuery, flagSourceSchema, getConversationsResponse, getConversationDetailParams, getConversationDetailQuery, getConversationDetailResponse, listWhatsAppTemplatesQuery, sendWhatsAppTemplateBody;
10125
- var init_chunk_MUG3LWPZ = __esm({
10126
- "../../packages/core/dist/chunk-MUG3LWPZ.js"() {
10106
+ var init_chunk_KTUVBNMI = __esm({
10107
+ "../../packages/core/dist/chunk-KTUVBNMI.js"() {
10127
10108
  "use strict";
10128
- init_chunk_BV6U4HXF();
10109
+ init_chunk_WFQU5HXK();
10129
10110
  init_chunk_HZ6CADSY();
10130
10111
  init_chunk_DHPUPI4Y();
10131
10112
  init_zod();
@@ -10581,7 +10562,7 @@ var init_chunk_BPCNB5RT = __esm({
10581
10562
  }
10582
10563
  });
10583
10564
 
10584
- // ../../packages/core/dist/chunk-HWB3MFZT.js
10565
+ // ../../packages/core/dist/chunk-DYCGBLRW.js
10585
10566
  function idempotencyHeaderRefusal(value) {
10586
10567
  if (typeof value !== "string" || !/^[A-Za-z0-9][A-Za-z0-9-]{0,63}$/.test(value)) {
10587
10568
  return "idempotency_header must be a header name: letters, digits and dashes, at most 64";
@@ -10592,10 +10573,10 @@ function idempotencyHeaderRefusal(value) {
10592
10573
  return null;
10593
10574
  }
10594
10575
  var CATALOG_REPLAY, REPLAY_OVERRIDES, RESERVED_HEADERS;
10595
- var init_chunk_HWB3MFZT = __esm({
10596
- "../../packages/core/dist/chunk-HWB3MFZT.js"() {
10576
+ var init_chunk_DYCGBLRW = __esm({
10577
+ "../../packages/core/dist/chunk-DYCGBLRW.js"() {
10597
10578
  "use strict";
10598
- init_chunk_GWMNV3N4();
10579
+ init_chunk_FQZRBIAQ();
10599
10580
  CATALOG_REPLAY = new Map(
10600
10581
  NATIVE_TOOLS.map((tool) => [tool.tool_name, tool.replay])
10601
10582
  );
@@ -10828,7 +10809,7 @@ var init_chunk_WEXVYJ5H = __esm({
10828
10809
  }
10829
10810
  });
10830
10811
 
10831
- // ../../packages/core/dist/chunk-VHQED53I.js
10812
+ // ../../packages/core/dist/chunk-SK2X6UOC.js
10832
10813
  function refineToolConfig(value, ctx) {
10833
10814
  const raw = value.tool_config;
10834
10815
  if (raw == null) return;
@@ -10864,10 +10845,10 @@ function refineToolConfig(value, ctx) {
10864
10845
  }
10865
10846
  }
10866
10847
  var toolIdParam, listToolsQuery, toolAgentQuery, deleteToolQuery, toolConnectionsQuery, nativeToolIdSchema, CONTEXT_BOUNDARIES, contextBoundarySchema, addNativeToolBody, addMcpToolBody, toolReplaySettingsFields, toolReplaySettingsSchema, createCustomToolBody, updateCustomToolBody, updateToolExecutionConfigBody;
10867
- var init_chunk_VHQED53I = __esm({
10868
- "../../packages/core/dist/chunk-VHQED53I.js"() {
10848
+ var init_chunk_SK2X6UOC = __esm({
10849
+ "../../packages/core/dist/chunk-SK2X6UOC.js"() {
10869
10850
  "use strict";
10870
- init_chunk_HWB3MFZT();
10851
+ init_chunk_DYCGBLRW();
10871
10852
  init_chunk_WEXVYJ5H();
10872
10853
  init_chunk_HZ6CADSY();
10873
10854
  init_zod();
@@ -10890,8 +10871,8 @@ var init_chunk_VHQED53I = __esm({
10890
10871
  * Defaults to `summary` when omitted. Admin-set — the link and boundary require
10891
10872
  * hub-admin (`hub:write`), never derived from any end user's grants. */
10892
10873
  delegation_context_boundary: contextBoundarySchema.optional()
10893
- // `resource_config` was retired with knowledge (wayai-pro/wayai#5142 step 5 C1): written and never
10894
- // read. A body that still sends it is accepted, the key stripped; the column goes at step 5's E.
10874
+ // No `resource_config`: retired with knowledge, its column dropped (HubDO v106). A body that still
10875
+ // sends it is accepted, the key stripped.
10895
10876
  });
10896
10877
  addMcpToolBody = external_exports.object({
10897
10878
  agent_id: uuidSchema,
@@ -10936,7 +10917,7 @@ var init_chunk_4LXDRTO4 = __esm({
10936
10917
  }
10937
10918
  });
10938
10919
 
10939
- // ../../packages/core/dist/chunk-2FQVW3O7.js
10920
+ // ../../packages/core/dist/chunk-LEE5SOCI.js
10940
10921
  function isIanaTimezone(timezone) {
10941
10922
  try {
10942
10923
  new Intl.DateTimeFormat("en-US", { timeZone: timezone }).format(0);
@@ -10946,12 +10927,12 @@ function isIanaTimezone(timezone) {
10946
10927
  }
10947
10928
  }
10948
10929
  var evalDateContextSchema;
10949
- var init_chunk_2FQVW3O7 = __esm({
10950
- "../../packages/core/dist/chunk-2FQVW3O7.js"() {
10930
+ var init_chunk_LEE5SOCI = __esm({
10931
+ "../../packages/core/dist/chunk-LEE5SOCI.js"() {
10951
10932
  "use strict";
10952
10933
  init_chunk_HZ6CADSY();
10953
10934
  init_chunk_MIWZOSPI();
10954
- init_chunk_D4AWK26E();
10935
+ init_chunk_LD6U3CDG();
10955
10936
  init_chunk_DHPUPI4Y();
10956
10937
  init_zod();
10957
10938
  evalDateContextSchema = external_exports.object({
@@ -10976,7 +10957,7 @@ var init_chunk_2ISUBJG7 = __esm({
10976
10957
  }
10977
10958
  });
10978
10959
 
10979
- // ../../packages/core/dist/chunk-TY6K2EWO.js
10960
+ // ../../packages/core/dist/chunk-EE5FYMSX.js
10980
10961
  function describeRole(role) {
10981
10962
  if (typeof role === "string") {
10982
10963
  return JSON.stringify(role.length > ROLE_ECHO_MAX ? `${role.slice(0, ROLE_ECHO_MAX)}\u2026` : role);
@@ -11150,11 +11131,11 @@ function terminalRunCount(counts) {
11150
11131
  return counts.successful_runs + counts.failed_runs;
11151
11132
  }
11152
11133
  var evalIdParam, sessionIdParam, scenarioSetIdParam, hubIdQuery, EVAL_FIXTURE_NAME_MAX_LENGTH, evalFixtureOverrideSchema, runSessionQuery, runJourneyQuery, EVAL_INPUT_ROLES, EVAL_INPUT_ROLE_LIST, ROLE_ECHO_MAX, EVAL_INITIAL_STATE_SCOPES, MAX_INITIAL_STATE_ENTRIES, evalInitialStateEntry, evalCustomerContactIdSchema, evalBody, EVAL_LIST_MAX_LIMIT, evalListLimit, getEvalsQuery, toggleEvalBody, bulkToggleEvalsBody, pacingConfigSchema, EVAL_MAX_SELECTED_SCENARIOS, evalScenarioSelectionEntrySchema, evalScenarioSelectionSchema, sessionConfigSchema, createSessionBody, getSessionsQuery, getSessionResultsQuery, getSessionRunsQuery, evalAnalyticsQuery, getSessionCostQuery, compareSessionsQuery, evalsSqlBody, evalsSqlSchemaQuery, exportResultsQuery, validateEvalBody, hubAgentsQuery, createScenarioSetBody, updateScenarioSetBody, scenarioSetsHubQuery, createScenarioFromConversationBody, createJourneyFromConversationBody, evalAttachmentRef, turnMayCarryAttachments, ATTACHMENTS_USER_ONLY_MESSAGE, journeyIdParam, journeyToolCallSchema, journeyTurnSchema, journeyStepOverrideSchema, fixtureField, createJourneyBody, updateJourneyBody, evalSessionConfigResponseSchema, evalSessionResponseSchema, evalSessionListConfigSchema, evalSessionListItemSchema, seedReleaseStatusSchema, EVAL_SESSION_NOT_QUIESCENT;
11153
- var init_chunk_TY6K2EWO = __esm({
11154
- "../../packages/core/dist/chunk-TY6K2EWO.js"() {
11134
+ var init_chunk_EE5FYMSX = __esm({
11135
+ "../../packages/core/dist/chunk-EE5FYMSX.js"() {
11155
11136
  "use strict";
11156
11137
  init_chunk_4LXDRTO4();
11157
- init_chunk_2FQVW3O7();
11138
+ init_chunk_LEE5SOCI();
11158
11139
  init_chunk_HZ6CADSY();
11159
11140
  init_chunk_2ISUBJG7();
11160
11141
  init_zod();
@@ -12216,7 +12197,7 @@ var init_chunk_T4Q5COKJ = __esm({
12216
12197
  }
12217
12198
  });
12218
12199
 
12219
- // ../../packages/core/dist/chunk-PYQJYI32.js
12200
+ // ../../packages/core/dist/chunk-KQZM7ANN.js
12220
12201
  function refineHubAsCodeCustomTools(config, ctx) {
12221
12202
  const agents = config.agents;
12222
12203
  if (!Array.isArray(agents)) return;
@@ -12751,54 +12732,61 @@ function refineHubAsCodeMonitorRulesOutput(config, ctx) {
12751
12732
  }
12752
12733
  });
12753
12734
  }
12754
- function skillSectionsAsResources(config) {
12755
- if (!isPlainObject(config)) return config;
12756
- let out = config;
12757
- if ("skills" in out && !("resources" in out)) {
12758
- const { skills, ...rest } = out;
12759
- out = {
12760
- ...rest,
12761
- resources: Array.isArray(skills) ? skills.map((skill) => isPlainObject(skill) ? { ...skill, type: "skill" } : skill) : skills
12762
- };
12763
- }
12764
- if (Array.isArray(out.agents)) {
12765
- out = {
12766
- ...out,
12767
- agents: out.agents.map((agent) => {
12768
- if (!isPlainObject(agent) || !("skills" in agent) || "resources" in agent) return agent;
12769
- const { skills, ...rest } = agent;
12770
- return {
12771
- ...rest,
12772
- resources: Array.isArray(skills) ? skills.map((link) => {
12773
- if (!isPlainObject(link)) return link;
12774
- const { skill_id: skillId, ...linkRest } = link;
12775
- return skillId === void 0 ? linkRest : { ...linkRest, resource_id: skillId };
12776
- }) : skills
12777
- };
12778
- })
12779
- };
12780
- }
12781
- return out;
12782
- }
12783
- function refineSkillSections(config, ctx) {
12784
- if (!isPlainObject(config)) return;
12785
- if ("skills" in config) {
12786
- ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["skills"], message: BOTH_SKILL_SECTIONS_MESSAGE });
12787
- }
12788
- if (!Array.isArray(config.agents)) return;
12789
- config.agents.forEach((agent, agentIndex) => {
12790
- if (isPlainObject(agent) && "skills" in agent) {
12791
- ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["agents", agentIndex], message: `agent: ${BOTH_SKILL_SECTIONS_MESSAGE}` });
12735
+ function resourcesSectionRefusal(scope, subject) {
12736
+ const pull = scope === "org" ? "wayai org pull" : "wayai pull";
12737
+ return `${subject} \`resources\` is no longer accepted: skills are named under \`skills\`. Update the CLI to \`@wayai/cli\` ${MIN_SKILLS_LAYOUT_CLI} or later (\`wayai update\`), then run \`${pull}\` once to convert the folder.`;
12738
+ }
12739
+ function skillSectionsAsResources(scope) {
12740
+ return (config, ctx) => {
12741
+ if (!isPlainObject(config)) return config;
12742
+ let out = config;
12743
+ if ("resources" in out) {
12744
+ ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["resources"], message: resourcesSectionRefusal(scope, "A push body's") });
12745
+ const { resources: _old, ...rest } = out;
12746
+ out = rest;
12747
+ }
12748
+ if ("skills" in out) {
12749
+ const { skills, ...rest } = out;
12750
+ out = { ...rest, resources: skills };
12751
+ }
12752
+ if (Array.isArray(out.agents)) {
12753
+ out = {
12754
+ ...out,
12755
+ agents: out.agents.map((agent, agentIndex) => {
12756
+ if (!isPlainObject(agent)) return agent;
12757
+ let next = agent;
12758
+ if ("resources" in next) {
12759
+ ctx.addIssue({
12760
+ code: external_exports.ZodIssueCode.custom,
12761
+ path: ["agents", agentIndex, "resources"],
12762
+ message: resourcesSectionRefusal(scope, "An agent's")
12763
+ });
12764
+ const { resources: _old, ...rest2 } = next;
12765
+ next = rest2;
12766
+ }
12767
+ if (!("skills" in next)) return next;
12768
+ const { skills, ...rest } = next;
12769
+ return {
12770
+ ...rest,
12771
+ resources: Array.isArray(skills) ? skills.map((link) => {
12772
+ if (!isPlainObject(link)) return link;
12773
+ const { skill_id: skillId, ...linkRest } = link;
12774
+ return skillId === void 0 ? linkRest : { ...linkRest, resource_id: skillId };
12775
+ }) : skills
12776
+ };
12777
+ })
12778
+ };
12792
12779
  }
12793
- });
12780
+ return out;
12781
+ };
12794
12782
  }
12795
- var MAX_10MB_BASE64_ENCODED_BYTES, MAX_EVAL_ATTACHMENT_ENCODED_BYTES, MAX_EVAL_ATTACHMENT_CARRIERS, MAX_EVAL_ATTACHMENT_AGGREGATE_ENCODED_BYTES, MAX_RESOURCE_ENCODED_BYTES, MAX_HUB_AS_CODE_RESOURCES, MAX_HUB_AS_CODE_RESOURCE_FILES, MAX_RESOURCE_AGGREGATE_ENCODED_BYTES, MAX_CI_CONFIG_BODY_BYTES, MAX_CALL_OPENING_CARRIERS, MAX_CALL_OPENING_AGGREGATE_ENCODED_BYTES, hubAsCodeStateSchema, hubAsCodeResourceFileSchema, hubAsCodeResourceSchema, uuidPattern, ciUuidSchema, boundedHubAsCodeResourcesSchema, isPlainObject, BOTH_SKILL_SECTIONS_MESSAGE, hubAsCodeConfigSchema, ciPullHubIdParam, ciBranchParam, ciPullQuery, ciHubsQuery, ciLookupQuery, ciBranchesQuery, ciSyncBody, ciPushBody, ciDiffBody, ciPublishBody, ciPublishPreviewBody, ciSyncMcpBody, ciOrgResourcesParam, orgResourcesConfigSchema, ciOrgResourcesPushBody, ciOrgResourcesDiffBody, CI_APPLY_ENTITY_KINDS, CI_APPLY_OPERATIONS, ciApplyErrorBaseSchema, ciApplyErrorSchema, ciSyncCountSchema, ciSyncChangesSchema, ciSyncWarningSchema, ciSyncResponseSchema;
12796
- var init_chunk_PYQJYI32 = __esm({
12797
- "../../packages/core/dist/chunk-PYQJYI32.js"() {
12783
+ var MAX_10MB_BASE64_ENCODED_BYTES, MAX_EVAL_ATTACHMENT_ENCODED_BYTES, MAX_EVAL_ATTACHMENT_CARRIERS, MAX_EVAL_ATTACHMENT_AGGREGATE_ENCODED_BYTES, MAX_RESOURCE_ENCODED_BYTES, MAX_HUB_AS_CODE_RESOURCES, MAX_HUB_AS_CODE_RESOURCE_FILES, MAX_RESOURCE_AGGREGATE_ENCODED_BYTES, MAX_CI_CONFIG_BODY_BYTES, MAX_CALL_OPENING_CARRIERS, MAX_CALL_OPENING_AGGREGATE_ENCODED_BYTES, hubAsCodeStateSchema, hubAsCodeResourceFileSchema, hubAsCodeResourceSchema, uuidPattern, ciUuidSchema, boundedHubAsCodeResourcesSchema, isPlainObject, MIN_SKILLS_LAYOUT_CLI, hubAsCodeConfigSchema, ciPullHubIdParam, ciBranchParam, ciPullQuery, ciHubsQuery, ciLookupQuery, ciBranchesQuery, ciSyncBody, ciPushBody, ciDiffBody, ciPublishBody, ciPublishPreviewBody, ciSyncMcpBody, ciOrgResourcesParam, orgResourcesConfigSchema, ciOrgResourcesPushBody, ciOrgResourcesDiffBody, CI_APPLY_ENTITY_KINDS, CI_APPLY_OPERATIONS, ciApplyErrorBaseSchema, ciApplyErrorSchema, ciSyncCountSchema, ciSyncChangesSchema, ciSyncWarningSchema, ciSyncResponseSchema;
12784
+ var init_chunk_KQZM7ANN = __esm({
12785
+ "../../packages/core/dist/chunk-KQZM7ANN.js"() {
12798
12786
  "use strict";
12799
- init_chunk_VHQED53I();
12800
- init_chunk_TY6K2EWO();
12801
- init_chunk_BV6U4HXF();
12787
+ init_chunk_SK2X6UOC();
12788
+ init_chunk_EE5FYMSX();
12789
+ init_chunk_WFQU5HXK();
12802
12790
  init_chunk_LBDH7LCG();
12803
12791
  init_chunk_4LXDRTO4();
12804
12792
  init_chunk_T4Q5COKJ();
@@ -12806,7 +12794,7 @@ var init_chunk_PYQJYI32 = __esm({
12806
12794
  init_chunk_ACN6GXU6();
12807
12795
  init_chunk_WEXVYJ5H();
12808
12796
  init_chunk_C2UEA2KW();
12809
- init_chunk_6NI5RAM4();
12797
+ init_chunk_S4VDZ7PZ();
12810
12798
  init_chunk_T7KQKDET();
12811
12799
  init_zod();
12812
12800
  MAX_10MB_BASE64_ENCODED_BYTES = Math.ceil(MAX_RESOURCE_FILE_SIZE / 3) * 4 + 16;
@@ -12851,9 +12839,8 @@ var init_chunk_PYQJYI32 = __esm({
12851
12839
  hubAsCodeResourceSchema = external_exports.object({
12852
12840
  id: external_exports.string().min(1).optional(),
12853
12841
  name: external_exports.string().min(1),
12854
- // Omitted: a new resource is a skill, an existing one keeps its type. A push refuses a new
12855
- // knowledge resource and a change to knowledge (wayai-pro/wayai#5142 step 5).
12856
- type: external_exports.enum(["knowledge", "skill"]).optional(),
12842
+ // No `type`: every resource is a skill (wayai-pro/wayai#5142 step 5). The schema is
12843
+ // `.passthrough()`, so a stray `type` rides through and nothing reads it.
12857
12844
  description: external_exports.string().optional(),
12858
12845
  enabled: external_exports.boolean().optional(),
12859
12846
  // No `user_browsable`: the field is retired (wayai#4710). This schema is `.passthrough()`,
@@ -12889,8 +12876,8 @@ var init_chunk_PYQJYI32 = __esm({
12889
12876
  }
12890
12877
  }).pipe(external_exports.array(hubAsCodeResourceSchema));
12891
12878
  isPlainObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
12892
- BOTH_SKILL_SECTIONS_MESSAGE = "both `skills` and `resources` are given: name the skills under `skills` only";
12893
- hubAsCodeConfigSchema = external_exports.preprocess(skillSectionsAsResources, external_exports.object({
12879
+ MIN_SKILLS_LAYOUT_CLI = "0.3.234";
12880
+ hubAsCodeConfigSchema = external_exports.preprocess(skillSectionsAsResources("hub"), external_exports.object({
12894
12881
  version: external_exports.literal(1),
12895
12882
  hub: external_exports.object({
12896
12883
  name: external_exports.string().min(1, "config.hub.name is required"),
@@ -12914,7 +12901,6 @@ var init_chunk_PYQJYI32 = __esm({
12914
12901
  refineHubAsCodeMonitorConfig(config, ctx);
12915
12902
  refineHubAsCodeDecisionsModel(config, ctx);
12916
12903
  refineHubAsCodeMonitorRulesOutput(config, ctx);
12917
- refineSkillSections(config, ctx);
12918
12904
  }));
12919
12905
  ciPullHubIdParam = external_exports.object({
12920
12906
  hub_id: ciUuidSchema
@@ -12968,12 +12954,11 @@ var init_chunk_PYQJYI32 = __esm({
12968
12954
  ciOrgResourcesParam = external_exports.object({
12969
12955
  org_id: ciUuidSchema
12970
12956
  });
12971
- orgResourcesConfigSchema = external_exports.preprocess(skillSectionsAsResources, external_exports.object({
12957
+ orgResourcesConfigSchema = external_exports.preprocess(skillSectionsAsResources("org"), external_exports.object({
12972
12958
  version: external_exports.literal(1),
12973
12959
  resources: boundedHubAsCodeResourcesSchema.optional()
12974
12960
  }).passthrough().superRefine((config, ctx) => {
12975
12961
  refineHubAsCodeResources(config, ctx);
12976
- refineSkillSections(config, ctx);
12977
12962
  }));
12978
12963
  ciOrgResourcesPushBody = external_exports.object({
12979
12964
  organization_id: ciUuidSchema,
@@ -13815,13 +13800,13 @@ var init_chunk_LQY2OCQL = __esm({
13815
13800
  }
13816
13801
  });
13817
13802
 
13818
- // ../../packages/core/dist/chunk-H6TTCXPL.js
13803
+ // ../../packages/core/dist/chunk-5GJGVPL6.js
13819
13804
  var AUTOMATION_TRIGGER_TYPES, AUTOMATION_EVENT_TYPES, AUTOMATION_TARGET_TYPES, AUTOMATION_ACTION_TYPES, AUTOMATION_CHANNEL_TYPES, AUTOMATION_PURPOSES, AUTOMATION_NAME_MAX, AUTOMATION_DESCRIPTION_MAX, AUTOMATION_INSTRUCTIONS_MAX, AUTOMATION_TEXT_MAX, AUTOMATION_CRON_MAX, AUTOMATION_WEBHOOK_AUTHS, AUTOMATION_WEBHOOK_HEADERS, AUTOMATION_WEBHOOK_BODY_MAX_BYTES, AUTOMATION_WEBHOOK_HEADER_NAME_MAX, WEBHOOK_RESERVED_HEADERS, automationTriggerSchema, automationTargetSchema, automationActionSchema, automationGateSchema, automationName, automationDescription, automationIdParam, automationHubQuery, automationWebhookParams, AUTOMATION_RUNS_PAGE_MAX, listAutomationRunsQuery, createAutomationBody, updateAutomationBody, AUTOMATION_ALERT_CATEGORIES, AUTOMATION_BLOCKED_ALERT_CATEGORY, automationEventSubscriberParam;
13820
- var init_chunk_H6TTCXPL = __esm({
13821
- "../../packages/core/dist/chunk-H6TTCXPL.js"() {
13805
+ var init_chunk_5GJGVPL6 = __esm({
13806
+ "../../packages/core/dist/chunk-5GJGVPL6.js"() {
13822
13807
  "use strict";
13823
13808
  init_chunk_LQY2OCQL();
13824
- init_chunk_BV6U4HXF();
13809
+ init_chunk_WFQU5HXK();
13825
13810
  init_chunk_3HSB6J4J();
13826
13811
  init_chunk_5XEJSR22();
13827
13812
  init_chunk_DHPUPI4Y();
@@ -14233,10 +14218,10 @@ var init_chunk_BFG4ZWR4 = __esm({
14233
14218
  }
14234
14219
  });
14235
14220
 
14236
- // ../../packages/core/dist/chunk-6QXCHNFQ.js
14221
+ // ../../packages/core/dist/chunk-YZAIZJTO.js
14237
14222
  var dataExplorerDebugDoType, DEBUG_READ_MAX_LIMIT, DEBUG_READ_DEFAULT_LIMIT;
14238
- var init_chunk_6QXCHNFQ = __esm({
14239
- "../../packages/core/dist/chunk-6QXCHNFQ.js"() {
14223
+ var init_chunk_YZAIZJTO = __esm({
14224
+ "../../packages/core/dist/chunk-YZAIZJTO.js"() {
14240
14225
  "use strict";
14241
14226
  init_zod();
14242
14227
  dataExplorerDebugDoType = external_exports.enum(["hub", "org", "conversation", "user", "platform", "thread", "community", "contact_book", "batch"]);
@@ -14347,7 +14332,7 @@ var init_chunk_OMPT4ZHR = __esm({
14347
14332
  }
14348
14333
  });
14349
14334
 
14350
- // ../../packages/core/dist/chunk-RUFVP7Q3.js
14335
+ // ../../packages/core/dist/chunk-7LN3OG3F.js
14351
14336
  function refineScopedTarget(data, ctx) {
14352
14337
  if (data.scope === "org") {
14353
14338
  if (!data.org_id) {
@@ -14373,12 +14358,12 @@ function refineScopedTarget(data, ctx) {
14373
14358
  }
14374
14359
  }
14375
14360
  var adminOrgIdParam, adminOrgAdminIdParam, adminUserIdParam, PRICING_PLAN_ID_RE, adminPlanIdParam, adminOrganizationsQuery, adminUserSearchQuery, kanbanSlugMigrationQuery, adjustQuotaBody, updatePlanBody, addAdminUserBody, MAX_VOICE_CALL_MINUTE_OPS, voiceCallMinuteOps, AUTOMATION_GATE_EVALUATIONS_PER_OPERATION_BOUND, automationGateEvaluationsPerOperation, AUTOMATION_RUN_RETENTION_DAYS_MAX, automationRunRetentionDays, turnDeadlineSeconds, updatePlatformConfigBody, updateFreeOrgLimitBody, adminScopedTargetShape, adminScopedTargetBody, adminRepairKnowledgeBlobsBody, BRANCHING_ORPHAN_ENTITY_TYPES, BRANCHING_ORPHAN_MAX_TARGETS, adminRepairBranchingOrphansBody, adminRepairLegacyOrgGrantsBody, adminRepairCompedPlansBody, updatePricingPlanBody, dataExplorerSearchQuery, dataExplorerOrgIdParam, dataExplorerHubIdParam, dataExplorerConvIdParam, dataExplorerDoInstancesQuery, dataExplorerNsIdParam, dataExplorerKvKeysBody, dataExplorerKvKeyBody, uuidOrHexId, dataExplorerDeleteOrgParam, dataExplorerDeleteHubParam, dataExplorerDeleteConvParam, dataExplorerDeleteUserParam, dataExplorerDeleteQuery, dataExplorerKvDeleteBody, pitrDoNamespace, pitrBookmarkParam, pitrRestoreBody, healthSamplingTriggerBody, DEBUG_DO_HEX_PREFIX, debugDoEntityId, debugTableName, dataExplorerDebugTablesParam, dataExplorerDebugRowsParam, dataExplorerDebugRowsQuery, dataExplorerDebugAnalyticsTable, debugUuid, dataExplorerDebugAnalyticsRowsParam, dataExplorerDebugAnalyticsRowsQuery, dataExplorerDebugCountsDoType, dataExplorerDebugCountsParam, debugHubConvParam, debugMessageIdQuery;
14376
- var init_chunk_RUFVP7Q3 = __esm({
14377
- "../../packages/core/dist/chunk-RUFVP7Q3.js"() {
14361
+ var init_chunk_7LN3OG3F = __esm({
14362
+ "../../packages/core/dist/chunk-7LN3OG3F.js"() {
14378
14363
  "use strict";
14379
14364
  init_chunk_FECLIZTY();
14380
14365
  init_chunk_BFG4ZWR4();
14381
- init_chunk_6QXCHNFQ();
14366
+ init_chunk_YZAIZJTO();
14382
14367
  init_chunk_T4Q5COKJ();
14383
14368
  init_chunk_OMPT4ZHR();
14384
14369
  init_chunk_HZ6CADSY();
@@ -15074,9 +15059,9 @@ var init_contracts = __esm({
15074
15059
  "use strict";
15075
15060
  init_chunk_GK27ENTT();
15076
15061
  init_chunk_SXDX4GHS();
15077
- init_chunk_GWOEVI6X();
15062
+ init_chunk_LSK5GWKT();
15078
15063
  init_chunk_VXEAR36B();
15079
- init_chunk_EYLDTMO7();
15064
+ init_chunk_DLT7IEAN();
15080
15065
  init_chunk_Q7KIQHAZ();
15081
15066
  init_chunk_WBFLPPDI();
15082
15067
  init_chunk_IPXBFWUU();
@@ -15103,13 +15088,13 @@ var init_contracts = __esm({
15103
15088
  init_chunk_LWMLR2WI();
15104
15089
  init_chunk_ACGAI25T();
15105
15090
  init_chunk_MH4O3YEX();
15106
- init_chunk_MUG3LWPZ();
15091
+ init_chunk_KTUVBNMI();
15107
15092
  init_chunk_KSTYTQ7I();
15108
15093
  init_chunk_LKBSHANA();
15109
15094
  init_chunk_BPCNB5RT();
15110
- init_chunk_PYQJYI32();
15111
- init_chunk_VHQED53I();
15112
- init_chunk_TY6K2EWO();
15095
+ init_chunk_KQZM7ANN();
15096
+ init_chunk_SK2X6UOC();
15097
+ init_chunk_EE5FYMSX();
15113
15098
  init_chunk_JDJ4EUOL();
15114
15099
  init_chunk_ZLJP22IA();
15115
15100
  init_chunk_6IKFJ3GW();
@@ -15118,9 +15103,9 @@ var init_contracts = __esm({
15118
15103
  init_chunk_YULHXJ5M();
15119
15104
  init_chunk_V4FRPRH5();
15120
15105
  init_chunk_ZHJEQBXJ();
15121
- init_chunk_H6TTCXPL();
15106
+ init_chunk_5GJGVPL6();
15122
15107
  init_chunk_LQY2OCQL();
15123
- init_chunk_BV6U4HXF();
15108
+ init_chunk_WFQU5HXK();
15124
15109
  init_chunk_3HSB6J4J();
15125
15110
  init_chunk_IG6QBZMA();
15126
15111
  init_chunk_ZJJ5ODOD();
@@ -15130,13 +15115,13 @@ var init_contracts = __esm({
15130
15115
  init_chunk_E4DIIOOE();
15131
15116
  init_chunk_7CYHPF35();
15132
15117
  init_chunk_VMAX5YRT();
15133
- init_chunk_HWB3MFZT();
15134
- init_chunk_GWMNV3N4();
15118
+ init_chunk_DYCGBLRW();
15119
+ init_chunk_FQZRBIAQ();
15135
15120
  init_chunk_NVKU5PPQ();
15136
- init_chunk_RUFVP7Q3();
15121
+ init_chunk_7LN3OG3F();
15137
15122
  init_chunk_FECLIZTY();
15138
15123
  init_chunk_BFG4ZWR4();
15139
- init_chunk_6QXCHNFQ();
15124
+ init_chunk_YZAIZJTO();
15140
15125
  init_chunk_T4Q5COKJ();
15141
15126
  init_chunk_3VHMUK4W();
15142
15127
  init_chunk_AMG6HKUQ();
@@ -15147,7 +15132,7 @@ var init_contracts = __esm({
15147
15132
  init_chunk_QUKTIJKE();
15148
15133
  init_chunk_SOJMWM63();
15149
15134
  init_chunk_WEXVYJ5H();
15150
- init_chunk_2FQVW3O7();
15135
+ init_chunk_LEE5SOCI();
15151
15136
  init_chunk_5XEJSR22();
15152
15137
  init_chunk_IBL7FANV();
15153
15138
  init_chunk_VORPHGDT();
@@ -15156,8 +15141,8 @@ var init_contracts = __esm({
15156
15141
  init_chunk_MIWZOSPI();
15157
15142
  init_chunk_2ISUBJG7();
15158
15143
  init_chunk_C2UEA2KW();
15159
- init_chunk_6NI5RAM4();
15160
- init_chunk_D4AWK26E();
15144
+ init_chunk_S4VDZ7PZ();
15145
+ init_chunk_LD6U3CDG();
15161
15146
  init_chunk_CJ3L46X6();
15162
15147
  init_chunk_6TSQ5HXC();
15163
15148
  init_chunk_DHPUPI4Y();
@@ -15300,7 +15285,7 @@ var init_dist = __esm({
15300
15285
  init_chunk_QUKTIJKE();
15301
15286
  init_chunk_SOJMWM63();
15302
15287
  init_chunk_WEXVYJ5H();
15303
- init_chunk_2FQVW3O7();
15288
+ init_chunk_LEE5SOCI();
15304
15289
  init_chunk_5XEJSR22();
15305
15290
  init_chunk_IBL7FANV();
15306
15291
  init_chunk_P3AWZG3N();
@@ -15313,8 +15298,8 @@ var init_dist = __esm({
15313
15298
  init_chunk_FEOO3UPS();
15314
15299
  init_chunk_RPGBR5IN();
15315
15300
  init_chunk_C2UEA2KW();
15316
- init_chunk_6NI5RAM4();
15317
- init_chunk_D4AWK26E();
15301
+ init_chunk_S4VDZ7PZ();
15302
+ init_chunk_LD6U3CDG();
15318
15303
  init_chunk_CJ3L46X6();
15319
15304
  init_chunk_6TSQ5HXC();
15320
15305
  init_chunk_DHPUPI4Y();
@@ -36520,9 +36505,9 @@ wayai admin \u2014 platform-admin diagnostic commands
36520
36505
  Usage:
36521
36506
  wayai admin do tables <type> <id>
36522
36507
  wayai admin do read <type> <id> <table> [--limit N] [--id X] [--json]
36523
- wayai admin do counts <hub|org> <id> [--json] Knowledge as numbers, no text: a hub's knowledge rows, links, toolset connections,
36524
- knowledge placeholders per stored text and (production) publish state; an org's
36525
- resources and moved-knowledge registry
36508
+ wayai admin do counts <hub|org> <id> [--json] Numbers, no text: a hub's toolset connections, knowledge placeholders per stored
36509
+ text and (production) publish state; an org's skills, hub links and
36510
+ moved-knowledge registry
36526
36511
 
36527
36512
  wayai admin analytics tables
36528
36513
  wayai admin analytics read <table> [--conversation-id X] [--hub-id Y] [--message-id Z] [--limit N] [--json]