lua-cli 3.44.0 → 3.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-exports.d.ts +146 -51
- package/dist/api-exports.js +345 -31
- package/dist/api-exports.js.map +1 -1
- package/dist/index.js +735 -230
- package/dist/index.js.map +1 -1
- package/dist/voice/test/index.d.ts +18 -18
- package/dist/workflow-builder.d.ts +5 -1
- package/dist/workflow-builder.js +238 -4
- package/dist/workflow-builder.js.map +1 -1
- package/docs/API_REFERENCE.md +1 -1
- package/docs/api/Agents.md +16 -9
- package/docs/api/Baskets.md +11 -1
- package/docs/api/Workflows.md +12 -4
- package/docs/workflows/approvals.md +2 -0
- package/package.json +2 -2
- package/template/package.json +1 -1
- package/template-web-app/web/src/lua/client.ts +12 -7
package/dist/api-exports.js
CHANGED
|
@@ -162,6 +162,106 @@ function supervisionSubjectId(agentId) {
|
|
|
162
162
|
function isSupervisionOp(op) {
|
|
163
163
|
return typeof op === "string" && Object.prototype.hasOwnProperty.call(SUPERVISION_OPS, op);
|
|
164
164
|
}
|
|
165
|
+
function isSupervisionWatchdogOp(op) {
|
|
166
|
+
return typeof op === "string" && Object.prototype.hasOwnProperty.call(SUPERVISION_WATCHDOG_OPS, op);
|
|
167
|
+
}
|
|
168
|
+
function isSupervisionRollbackRefusalReason(v) {
|
|
169
|
+
return typeof v === "string" && Object.prototype.hasOwnProperty.call(SUPERVISION_ROLLBACK_REFUSAL_CODES, v);
|
|
170
|
+
}
|
|
171
|
+
function supervisionRollbackTargetRefusal(target, expectActive, window) {
|
|
172
|
+
if (target.status !== "superseded" || !target.promotedAt || target.compensationFailed === true) {
|
|
173
|
+
return {
|
|
174
|
+
reason: "never_active",
|
|
175
|
+
message: `Version ${target.version} was never fully the active version (status ${target.status ?? "unknown"})`
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
if (typeof expectActive !== "number" || !(target.version < expectActive)) {
|
|
179
|
+
return {
|
|
180
|
+
reason: "not_older",
|
|
181
|
+
message: `Version ${target.version} is not older than the active version ${expectActive ?? "none"}`
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
if (window) {
|
|
185
|
+
if (target.supersededVia === "rollback" || target.promotedVia === "rollback") {
|
|
186
|
+
return {
|
|
187
|
+
reason: "after_rollback",
|
|
188
|
+
message: `Version ${target.version} was retired or restored by a rollback`
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
if (target.supersededVia !== "promote" && target.supersededVia !== "scoped") {
|
|
192
|
+
return {
|
|
193
|
+
reason: "not_in_lineage",
|
|
194
|
+
message: `Version ${target.version} has no forward-promote history`
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
const ended = target.supersededAt ? new Date(target.supersededAt).getTime() : NaN;
|
|
198
|
+
if (!Number.isFinite(ended) || ended < window.now - window.windowMs) {
|
|
199
|
+
return {
|
|
200
|
+
reason: "too_old",
|
|
201
|
+
message: `Version ${target.version} was last active outside the ${Math.round(window.windowMs / 864e5)}-day window`
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
return null;
|
|
206
|
+
}
|
|
207
|
+
function supervisionRollbackRefusal(input) {
|
|
208
|
+
const { target, active, lineage, expectActive, windowMs, now } = input;
|
|
209
|
+
const pre = supervisionRollbackTargetRefusal(target, expectActive);
|
|
210
|
+
if (pre) return pre;
|
|
211
|
+
if (!active || active.version !== expectActive) {
|
|
212
|
+
return {
|
|
213
|
+
reason: "not_older",
|
|
214
|
+
message: `Version ${expectActive ?? "none"} is not the active version`
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
if (active.promotedVia === "rollback") {
|
|
218
|
+
return {
|
|
219
|
+
reason: "after_rollback",
|
|
220
|
+
message: `The active version ${active.version} was restored by a rollback; a watchdog does not roll back twice in a row`
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
let previous = active;
|
|
224
|
+
for (const step3 of lineage.slice(0, SUPERVISION_ROLLBACK_LINEAGE_MAX)) {
|
|
225
|
+
const label = `version ${step3.version}`;
|
|
226
|
+
if (step3.supersededVia === "rollback" || step3.promotedVia === "rollback") {
|
|
227
|
+
return {
|
|
228
|
+
reason: "after_rollback",
|
|
229
|
+
message: `The rollback lineage crosses ${label}, which a rollback retired or restored`
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
if (step3.supersededVia !== "promote" && step3.supersededVia !== "scoped") {
|
|
233
|
+
return {
|
|
234
|
+
reason: "not_in_lineage",
|
|
235
|
+
message: `The rollback lineage stops at ${label} (no forward-promote history)`
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
if (step3.compensationFailed === true || step3.status !== "superseded" || !step3.promotedAt) {
|
|
239
|
+
return {
|
|
240
|
+
reason: "not_in_lineage",
|
|
241
|
+
message: `The rollback lineage stops at ${label} (not fully served)`
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
if (!(step3.version < previous.version)) {
|
|
245
|
+
return {
|
|
246
|
+
reason: "after_backward_promote",
|
|
247
|
+
message: `Version ${previous.version} was promoted BACK over ${label}; a watchdog never reaches behind that`
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
const ended = step3.supersededAt ? new Date(step3.supersededAt).getTime() : NaN;
|
|
251
|
+
if (!Number.isFinite(ended) || ended < now - windowMs) {
|
|
252
|
+
return {
|
|
253
|
+
reason: "too_old",
|
|
254
|
+
message: `The rollback lineage reaches ${label}, last active outside the ${Math.round(windowMs / 864e5)}-day window`
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
if (step3.version === target.version && (!target.id || !step3.id || step3.id === target.id)) return null;
|
|
258
|
+
previous = step3;
|
|
259
|
+
}
|
|
260
|
+
return {
|
|
261
|
+
reason: "not_in_lineage",
|
|
262
|
+
message: `Version ${target.version} is not in the active version's recent forward-promote lineage`
|
|
263
|
+
};
|
|
264
|
+
}
|
|
165
265
|
function isUntargetedSupervisionOp(op) {
|
|
166
266
|
return typeof op === "string" && SUPERVISION_UNTARGETED_OPS.includes(op);
|
|
167
267
|
}
|
|
@@ -2462,6 +2562,19 @@ function resolveSlackReactionName(value3) {
|
|
|
2462
2562
|
}
|
|
2463
2563
|
return slackEmojiName(trimmed);
|
|
2464
2564
|
}
|
|
2565
|
+
function threadScopingSetting(type) {
|
|
2566
|
+
const noun = THREAD_SCOPING_NOUN[type];
|
|
2567
|
+
return {
|
|
2568
|
+
key: `${type}.threadScoping`,
|
|
2569
|
+
group: "conversations",
|
|
2570
|
+
label: `One conversation per ${noun}`,
|
|
2571
|
+
help: `Each ${noun} is its own conversation with its own history.`,
|
|
2572
|
+
effect: "Off: every message from the same person shares one conversation.",
|
|
2573
|
+
type: "boolean",
|
|
2574
|
+
default: false,
|
|
2575
|
+
confirm: "Changing this starts fresh conversations for ones that are already open. Earlier history isn't carried over."
|
|
2576
|
+
};
|
|
2577
|
+
}
|
|
2465
2578
|
function takeoverSettings(type) {
|
|
2466
2579
|
const variants = type === "email" ? [
|
|
2467
2580
|
"ses"
|
|
@@ -2817,13 +2930,13 @@ function channelSettingsGroups(channel, config) {
|
|
|
2817
2930
|
const groups = [];
|
|
2818
2931
|
for (const def of channelSettingDefinitions(channel, config)) {
|
|
2819
2932
|
const { tunableDefault: _tunable, ...shown } = def;
|
|
2820
|
-
const
|
|
2933
|
+
const unavailable2 = channelSettingUnavailable(channel, def);
|
|
2821
2934
|
const view = {
|
|
2822
2935
|
...shown,
|
|
2823
2936
|
...effectiveChannelSetting(channel, def),
|
|
2824
2937
|
resettable: channelSettingResettable(def),
|
|
2825
|
-
...
|
|
2826
|
-
unavailable:
|
|
2938
|
+
...unavailable2 && {
|
|
2939
|
+
unavailable: unavailable2
|
|
2827
2940
|
}
|
|
2828
2941
|
};
|
|
2829
2942
|
const group = groups.find((candidate) => candidate.key === def.group);
|
|
@@ -4435,6 +4548,9 @@ function workflowOccurrenceId(lineageId, stepId) {
|
|
|
4435
4548
|
function workflowOrgSlotKey(orgId, kind) {
|
|
4436
4549
|
return `wf:org:${orgId}:${kind}`;
|
|
4437
4550
|
}
|
|
4551
|
+
function isWorkflowAgentAppConnectionId(id2) {
|
|
4552
|
+
return typeof id2 === "string" && id2.startsWith(WORKFLOW_AGENT_APP_CONNECTION_PREFIX) && /^[A-Za-z0-9_-]{1,128}$/.test(id2);
|
|
4553
|
+
}
|
|
4438
4554
|
function workflowJobModelSourceLabel(source) {
|
|
4439
4555
|
return WORKFLOW_JOB_MODEL_SOURCE_LABELS[source];
|
|
4440
4556
|
}
|
|
@@ -5990,7 +6106,7 @@ function isPaymentRequiredChatErrorEnvelope(data) {
|
|
|
5990
6106
|
if (d.type !== "error") return false;
|
|
5991
6107
|
return d.textDelta === BILLING_REJECTION_TEXT_CREDITS || d.textDelta === BILLING_REJECTION_TEXT_SEAT || d.textDelta === BILLING_REJECTION_TEXT_USER_QUOTA;
|
|
5992
6108
|
}
|
|
5993
|
-
var __defProp3, __name3, PLUMBING_THREAD_CHANNELS, CHANNEL_CONVERSATION_CHANNELS, HIDDEN_THREAD_CHANNELS, CHOICE_PERSON_TURN_CHANNELS, CHOICE_REPLAY_CLIENT_CAPABILITIES, CHOICE_REPLAY_CLIENT_SURFACES, INTEGRATION_PASSTHROUGH_READ_METHODS, URL_REINTERPRETED_PATH_CHARACTERS, PERCENT_ENCODED_DOT, PERCENT_ESCAPE, DECODED_PATH_SEPARATORS, DECODED_LEADING_SEPARATOR, MAX_PERCENT_DECODE_ROUNDS, URL_RESOLUTION_PROBE_BASE, PLATFORM_INVOCATION_CALLERS, SUPERVISION_OPS, SUPERVISION_OPS_WAVE2, SUPERVISION_UNTARGETED_OPS, SUPERVISED_WORKFLOW_VERSIONS_MAX, SUPERVISION_EVENT_KINDS, AGENT_PROVISIONING_LIMITS, AGENT_PROVISIONING_APPROVAL_PAYLOAD_KEY, AGENT_PROVISIONING_ERRORS, PROVISIONED_SUPERVISION_ACTIONS, isNonEmptyString, uniqueStrings, sameSet, AGENT_PROVISIONING_APPROVAL_CARD_MAX_CHARS, APPROVAL_PAYLOAD_MEMBERS, AGENT_CONNECTION_POLICIES, AGENT_CONNECTION_POLICY_DEFAULT, AGENT_CONNECTION_MOUNT_MODES, AGENT_CONNECTION_GOVERNANCE_ERRORS, AGENT_CONNECTION_OPERATION_RULES_MAX, AGENT_CONNECTION_OPERATION_PATTERN_MAX_LENGTH, OPERATION_RULE_METHODS, PATH_SEPARATOR, PATH_SINGLE_SEGMENT_WILDCARD, PATH_REST_WILDCARD, METHOD_OVERRIDE_HEADER_NAMES, METHOD_OVERRIDE_QUERY_NAMES, ODATA_BATCH_SEGMENT, GOOGLE_BATCH_FIRST_SEGMENT, CONNECTION_CHECK_RESULTS, CONNECTION_CHECK_CATALOGUE_V1, CONNECTION_CHECK_NAME_PATTERN, CONNECTION_CHECK_NAME_MAX, CONNECT_OUTCOME_STATUSES, SECRET_TEST_RESULTS, SECRET_DATADOG_REGIONS, SECRET_PROVIDER_CATALOGUE_V1, SECRET_TEST_MAX_RESPONSE_BYTES, SECRET_ENV_KEY_PATTERN, SECRET_REQUEST_ERRORS, SECRET_OUTCOME_STATUSES, CLIENT_OUTCOME_TURNS_MAX, SHORT_TEXT_MAX, SLUG_MAX, shortText, optionalShortText, CONNECTION_REQUEST_TERMINAL_STATES, CONNECTION_USE_ORIGINS, AGENT_CONNECTION_OPERATION_LIMITS_BOUNDS, CURRENCY_CODE, LIMITS_KEYS, CAPS_KEYS, EXCLUSIONS_KEYS, EMAIL_IN_TEXT, MAX_EXCLUSION_DEPTH, PROJECTION_PARAMETER_KEYS, CHANNEL_PARAMETER_KEYS, GMAIL_SYSTEM_LABEL_IDS, ZERO_DECIMAL_CURRENCIES, THREE_DECIMAL_CURRENCIES, DECIMAL_AMOUNT, REDACTED_PLACEHOLDER, PROVIDER_MESSAGE_MAX_CHARS, ERROR_MESSAGE_MAX_CHARS, SECRET_LITERAL_PATTERNS, SECRET_NAME, SECRET_PAIR_PATTERNS, GROUP_COUNT, WORKFLOW_SECRET_KEY_RE, WORKFLOW_RESERVED_SECRET_KEYS, SCRUB_INPUT_MAX_CHARS, SCRUB_CUT_BACKOFF_CHARS, TEST_SESSION_ID_PATTERN, TEST_SESSION_COLLECTION_PREFIX, TEST_EFFECT_BODY_MAX_BYTES, TEST_EFFECT_DROPPED_HEADERS, EVAL_CREDITS_PER_1K_TOKENS, EVAL_RESERVED_TOOL_ID_PREFIXES, CONNECTION_HANDOVER_APPROVAL_PAYLOAD_KEY, CONNECTION_HANDOVER_APPROVAL_CARD_MAX_CHARS, CONNECTION_HANDOVER_LIMITS, MEMBERS, FORMAT_CHARS, oneLine, boundedString, AGENT_METRIC_NAME_PATTERN, AGENT_METRIC_LIMITS, AGENT_OBJECTIVE_ERRORS, CHANGE_LEASE_TTL_MINUTES_MIN, CHANGE_LEASE_TTL_MINUTES_MAX, CHANGE_LEASE_REASON_MAX, CHANGE_LEASE_ERRORS, AGENT_CONFIG_SET_LIMITS, SECRET_ENV_KEY_SUFFIXES, DEFAULT_OWNER_DEPARTURE_POLICY, AGENT_LIFECYCLE_ERRORS, USER_COST_COUNTER_TTL_SECONDS, USER_COST_ATTRIBUTION_CHANNELS, CALLER_DEDUPE_KEY_MAX, FOLLOW_UP_IDEMPOTENCY_TTL_SECONDS, THREAD_FOLLOW_UP_LIMITS, THREAD_FOLLOW_UP_ERRORS, PROGRESS_UPDATE_LIMITS, PAUSABLE_CAPABILITY_KINDS, UNIFIED_CATCH_UP_MAX_WINDOW_HOURS, UNIFIED_CATCH_UP_EVENTS, UNIFIED_CATCH_UP_FILTERABLE_OBJECT_TYPES, AGENT_NEVER_RULES_MAX, AGENT_NEVER_RULE_FIELD_MAX, AGENT_NEVER_RULE_INPUT_MATCH_MAX, NEVER_RULE_ID_PATTERN, NEVER_RULE_HTTP_METHODS, TEMPLATE_DISTRIBUTION_MODES, CHANNEL_SEND_CHANNELS, TAKEOVER_MAX_IDLE_MINUTES, MINUTES_PER_DAY, DEFAULT_IDLE_RELEASE_MINUTES, FALLBACK_IDLE_RELEASE_MINUTES, VARIATION_SELECTORS, SLACK_EMOJI_NAMES, SLACK_SHORTCODE, PLAIN_EMAIL_ADDRESS, DOMAIN, UNSAFE_TEXT, SLACK_CONVERSATION_ID, CHANNEL_SETTING_GROUPS, TAKEOVER_CHANNEL_TYPES, EMAIL_SETTINGS, SLACK_SETTING_DEFAULTS, SLACK_REACTION_MAX, SLACK_INTRO_MAX, SLACK_EXAMPLE_PROMPTS_MAX, SLACK_EXAMPLE_PROMPT_MAX, SLACK_SUPPORT_CONTACT_MAX, SLACK_SETTINGS, CHANNEL_SETTINGS, REVIEWABLE_ACTION_EXECUTE_TOOL_ALLOWLIST, REVIEWABLE_STANDING_START_TOOLS, REVIEWABLE_MCP_SEND_TOOL_SUFFIX, MCP_TOOL_READ_VERB_RE, MCP_DRAFT_CREATE_VERBS, NON_INTERACTIVE_CHANNELS, RICH_PARTS_MESSAGE_ID_PREFIX, SCREENSHOT_MESSAGE_ID_PREFIX, BROWSER_COMMANDS, BROWSER_COMMAND_NAMES, LOG_FIELDS_MAX_KEYS, LOG_FIELD_MAX_VALUE_BYTES, LOG_FIELDS_MAX_BYTES, LOG_FIELD_KEY_PATTERN, LOG_FIELD_SECRET_SHAPED_KEY_PATTERNS, LOG_FIELDS_CLAMPED_KEY, LOG_FIELD_ARRAY_COUNT_SUFFIX, LuaLogFieldsError, DESKTOP_FILE_COMMANDS, DESKTOP_FILE_COMMAND_SET, WORKFLOW_RETRY_BACKOFFS, WORKFLOW_RETRY_MIN_ATTEMPTS, WORKFLOW_RETRY_POLICY_KEYS, WORKFLOW_RETRY_MAX_ATTEMPTS, WORKFLOW_RETRY_ENGINE_KEYS, WORKFLOW_JOB_RESOURCES, WORKFLOW_SIDE_EFFECTS, WORKFLOW_MODEL_CLASSES, WORKFLOW_DEFAULT_TASK_CLASS_MAP, WORKFLOW_MODELS_MAX_CLASS_DEFAULT, WORKFLOW_AUTONOMY_NUMERIC_KEYS, WORKFLOW_AUTONOMY_ENVELOPE_KEYS, WORKFLOW_AUTONOMY_DEFAULTS, WORKFLOW_AUTONOMY_CEILINGS, WORKFLOW_AUTONOMY_MAX_RUNS_PER_HOUR_ENV, WORKFLOW_AUTONOMY_MAX_RUNS_PER_HOUR_CEILING, WORKFLOW_AUTONOMY_FORMS_DEFAULT, WORKFLOW_AUTONOMY_MIN_VALUE, WORKFLOW_JOB_RANGES, WORKFLOW_JOB_RANGE_MEMBERS, WORKFLOW_SINGLE_STEP_TYPES, WORKFLOW_HITL_ENTRY_TYPES, WORKFLOW_ARM_ENTRY_TYPES, WORKFLOW_HITL_ARM_CONTAINERS, WORKFLOW_GRAPH_ENTRY_STEP_KINDS, WORKFLOW_ARM_ENTRY_STEP_KINDS, WORKFLOW_BUDGET_MAX_DURATION_SECONDS, MODEL_ID_BYOK_PROVIDERS, MODEL_CLASS_REF_PREFIX, MODEL_SNAPSHOT_SUFFIX, REASONING_EFFORT_VALUES, IMPLICIT_MODEL_SELECTION_SOURCES, PLATFORM_FALLBACK_MODEL_SOURCE, AGENT_NAME_TOKEN, DEFAULT_PERSONA_GUIDE, PERSONAL_SPACE_STARTING_PERSONA, AGENT_LOG_SOURCES, AGENT_LOG_FIELDS_MAX_WIRE_KEYS, LOG_DRAIN_TYPES_PHASE1, LOG_DRAIN_TYPES_PHASE2, LOG_DRAIN_TYPES_IMPLEMENTED, LOG_DRAIN_SOURCES, LOG_DRAIN_MAX_PER_ORG, LOG_DRAIN_MAX_PER_ORG_ENTERPRISE, LOG_DRAIN_DATADOG_SITES, LOG_DRAIN_NEWRELIC_SITES, LOG_DRAIN_ENDPOINT_TEMPLATES, LOG_DRAIN_PRESET_SITES, LOG_DRAIN_BUCKET_NAME_PATTERN, LOG_DRAIN_BUCKET_HOST_PATTERNS, LOG_DRAIN_PRESET_HOST_SUFFIXES, DRAIN_CONTENT_ACK_ERROR_CODE, DRAIN_CONTENT_ACK_FIELD, DrainContentAckRequiredError, LOG_DRAIN_PRESET_PATHS, PRESET_SEGMENT_RE, LOG_DRAIN_QUOTAS, LOG_DRAIN_QUOTA_WARN_RATIO, LOG_DRAIN_QUOTA_DROP_DEBUG_RATIO, LOG_DRAIN_QUOTA_DROP_INFO_RATIO, LOG_DRAIN_QUOTA_PAUSE_RATIO, LOG_EXPORT_SOURCES, LOG_EXPORT_MAX_WINDOW_DAYS, LOG_EXPORT_MAX_WINDOW_MS, LOG_EXPORT_URL_TTL_SECONDS, LOG_EXPORT_FILE_RETENTION_DAYS, LOG_EXPORT_FILE_RETENTION_MS, LOG_EXPORT_PART_MAX_BYTES, LOG_DRAIN_NOTICE_RATE_LIMIT_MS, LOG_DRAIN_VERIFICATION_STALE_MS, LOG_DRAIN_DIGEST_INTERVAL_MS, LOG_DRAIN_DIGEST_MAX_ENTRIES, LOG_DRAIN_NOTICE_ERROR_MAX_CHARS, LOG_DRAIN_USAGE_LINE_ITEM, LOG_DRAIN_BYTES_PER_GIB, DEFAULT_LOG_DRAIN_PLAN_CONFIG, TIERS, LOG_CURSOR_MAX_LENGTH, LOG_CURSOR_MAX_ID_LENGTH, LOG_RELATIVE_TIME_PATTERN, LOG_ISO_TIME_PATTERN, RELATIVE_UNIT_MS, CORE_DRAINING_CODE, CORE_DRAINING_DEFAULT_RETRY_MS, CORE_DRAINING_MAX_RETRY_MS, VoiceNameSchema, PluginProviderSchema, RealtimeProviderSchema, PluginClassSchema, ModelDescriptorSchema, InferenceModelSchema, PluginModelSchema, RealtimeModelSchema, LuaVoiceModelSchema, TurnDetectionSchema, InterruptionSchema, BuiltinAudioClipSchema, AudioConfigSchema, BackgroundAudioEntrySchema, BackgroundAudioSchema, LuaVoiceConfigInnerSchema, LuaVoiceConfigSchema, LuaVoiceRefSchema, LUA_JOB_DEFAULT_TIMEOUT_SECONDS, LUA_JOB_MIN_TIMEOUT_SECONDS, LUA_JOB_MAX_TIMEOUT_SECONDS, KEYS, MAX_BODY_BYTES, MAX_ID_LENGTH, UTC_ISO, TEMPLATE_TRIGGER_URL_ENV_PREFIX, TEMPLATE_INSTALL_POLICY_PER_WORKSPACE_VALUES, SUBJECT_TYPES, SubjectTypeSchema, CREDENTIAL_TYPES, CredentialTypeSchema, DEVICE_OPERATIONS, DeviceOperationSchema, DEVICE_SCOPE_BY_OPERATION, DeviceBindingSchema, IdSchema, SESSION_AUTH_TIME_MAX_S, PrincipalDescriptorSchema, ActorDescriptorSchema, PrincipalOwnerSchema, CredentialLifecycleSchema, GeneralCredentialDescriptorSchema, DeviceCredentialDescriptorSchema, GeneralPrincipalContextSchema, DeviceCredentialPrincipalContextSchema, RawPrincipalContextSchema, PrincipalContextSchema, DeviceCredentialClaimSchema, LUA_CLIENT_HEADER, LUA_CLIENT_APPS, SEMVER_PATTERN, WEB_RELEASE_PATTERN, CLIENT_HEADER_PATTERN, LUA_SESSION_ID_CLAIM, SESSION_REVOKED_CODE, AUTHZ_PROJECTION_VERSION, ProjectedScopeSchema, DisplayRoleSchema, AuthorizationPrincipalSchema, CredentialContextSchema, ProjectionAnomalySchema, ProjectedOrgSchema, ProjectedResourceSchema, CapabilityProfilesSchema, RoleCatalogSchema, EffectiveAuthorizationSchema, ResourcePageSchema, SYSTEM_USER_PREFIX, WORKFLOW_RUN_IN_FLIGHT, WORKFLOW_RUN_IDLE, WORKFLOW_RUN_TERMINAL, WORKFLOW_RUN_STATUSES, WORKFLOW_RUN_GATE_KINDS, WORKFLOW_STEP_STATUSES, WORKFLOW_STEP_IN_FLIGHT, WORKFLOW_SIGNAL_EVENT_SITES, ARCHIVE_WINDOW_MARGIN_DAYS, WORKFLOW_ORG_PURGING_TTL_S, WORKFLOW_ORG_PURGE_FORCE_AFTER_MS, IDEMPOTENCY_HOLDING_STATUSES, WORKFLOW_SCHEDULED_RUN_ID_PREFIX, CLOUD_TASK_RUN_ID_PREFIX, WORKFLOW_SCHEDULE_KEY_MAX, WORKFLOW_SCHEDULE_IDEMPOTENCY_KEY_PREFIX, WORKFLOW_OPERATION_ID_PREFIX, WORKFLOW_CONNECTION_KEY_RE, WORKFLOW_JOB_MODEL_SOURCE_LABELS, WORKFLOW_SUSPEND_KINDS, WORKFLOW_RUN_NOTIFICATION_SUSPENDED_KINDS, WORKFLOW_SIGNAL_PAYLOAD_MAX_BYTES, WORKFLOW_SUSPEND_DEFAULT_TIMEOUT_HOURS, WORKFLOW_RESOLVE_OUTPUT_MAX_BYTES, SCHEDULE_HEALTH_NOTIFY_CHANNELS, SCHEDULE_HEALTH_DEFAULT_NOTIFY, SCHEDULE_HEALTH_LIMITS, KNOWN_KEYS, WORKFLOW_GOAL_JUDGE_SELF, APPROVAL_ARGS_MAX_CHARS, APPROVAL_ARG_STRING_MAX_CHARS, APPROVAL_ARGS_SUMMARY_MAX_CHARS, MAX_DEPTH, MAX_KEYS, MAX_ITEMS, MAX_NODES, MAX_KEY_CHARS, KEY_SCRUB_INPUT_MAX_CHARS, STRING_SCRUB_INPUT_MAX_CHARS, ELLIPSIS, SKIP, SCRUB_SECRETS_BEFORE_PERSIST_ENV, PERSIST_SCRUB_MAX_CHARS, PERSIST_SCRUB_REF_MAX_CHARS, WORKFLOW_AUDIT_EVENTS, WORKFLOW_AUDIT_METADATA_MAX_BYTES, INDENT, WRAP_WIDTH, NOUNS, GET_TOOL_NAMES, PREAMBLE, WORKFLOW_APPROVAL_OUTPUT_DECISIONS, WORKFLOW_APPROVAL_OUTPUT_SCHEMA, JSON_FENCE_RE, DEFAULT_ON_AGENT_FEATURES, SUBAGENT_PER_KEY_FLAG_ENV, PER_KEY_FLAG_VALUES, ONBOARDING_FLOW_KEY, ONBOARDING_SCHEMA_VERSION, id, copy, onboardingHeadingSchema, onboardingRichTextInlineSchema, onboardingRichTextSchema, onboardingDestinationSchema, onboardingArtworkSchema, onboardingAnswerSchema, onboardingQuestionSchema, onboardingTemplateSectionSchema, onboardingInstallScreenSchema, onboardingResultScreenSchema, onboardingConnectScreenSchema, onboardingTemplateContentSchema, onboardingUnavailableOutcomeSchema, onboardingFlowSchema, onboardingActorSchema, onboardingEditorSchema, onboardingPublicationSummarySchema, onboardingValidationIssueSchema, onboardingValidationResponseSchema, onboardingAssetSchema, onboardingPublicAssetSchema, getOnboardingConfigResponseSchema, saveOnboardingDraftRequestSchema, validateOnboardingRequestSchema, publishOnboardingRequestSchema, rollbackOnboardingRequestSchema, onboardingTemplateCatalogItemSchema, getPublishedOnboardingResponseSchema, WEB_ROUTE_PROTOCOL_VERSION, WEB_ROUTE_METHODS, WEB_ROUTE_REQUEST_HEADER_ALLOWLIST, WEB_ROUTE_RESPONSE_HEADER_ALLOWLIST, WEB_ROUTE_MAX_REQUEST_BODY_BYTES, WEB_ROUTE_MAX_RESPONSE_BYTES, WEB_APP_NAME_PATTERN, WEB_APP_ENTRY_HTML_MAX_CHARS, WEB_APP_MAX_ASSET_BYTES, EVIDENCE_SESSION_IDLE_MS, EVIDENCE_MIN_CONVERSATIONS, EVIDENCE_LOW_CONFIDENCE_N, EVIDENCE_SNIPPET_MAX_CHARS, EVIDENCE_EXAMPLES_PER_ITEM, EVIDENCE_SHOWN_ITEMS, EVIDENCE_LATENCY_BOUNDS_MS, EVIDENCE_WORD_BOUNDS, BAD_CONVERSATION_REASONS, ATTACHMENT_LINES, REVIEW_VERDICT_REASON_ORDER, ENV_TEMPLATE_SECRET_KEY_RE, CONNECTION_SEND_NOT_ALLOWED, CONNECTION_RECIPIENT_NOT_ALLOWED, NOT_SEND, PLAIN_ADDRESS, RecipientSet, MCP_MESSAGING_CREATE, MCP_CALENDAR_EVENT_WRITE, REPLY_KEYS, DEDICATED_MAIL_SLUGS, FULL_SUITE_SLUGS, WELL_KNOWN_MAIL_FOLDERS, MEMBER_KEYS, CANONICAL_ORIGIN, CANONICAL_PREFIX, STRICT_BASE64, GMAIL_PREFIX, GMAIL_MESSAGES_SEND, GMAIL_DRAFTS_SEND, GOOGLE_BATCH, GRAPH_VERSION, GRAPH_PRINCIPAL, GRAPH_SEND_MAIL, GRAPH_MESSAGE_ACTION, GRAPH_OWNER, GRAPH_EVENTS, GRAPH_EVENT_COLLECTION, GRAPH_EVENT_ID, GRAPH_EVENT_ITEM, GRAPH_EVENT_ACTION, GRAPH_BATCH, GRAPH_TEAMS_MESSAGE, GRAPH_ACTIVITY_NOTIFICATION, GRAPH_GROUP_CONVERSATION, GCAL_EVENTS, GRAPH_READ_KEYS, MALFORMED_POLICY, BILLING_REJECTION_TEXT_CREDITS, BILLING_REJECTION_TEXT_SEAT, BILLING_REJECTION_TEXT_USER_QUOTA;
|
|
6109
|
+
var __defProp3, __name3, PLUMBING_THREAD_CHANNELS, CHANNEL_CONVERSATION_CHANNELS, HIDDEN_THREAD_CHANNELS, CHOICE_PERSON_TURN_CHANNELS, CHOICE_REPLAY_CLIENT_CAPABILITIES, CHOICE_REPLAY_CLIENT_SURFACES, INTEGRATION_PASSTHROUGH_READ_METHODS, URL_REINTERPRETED_PATH_CHARACTERS, PERCENT_ENCODED_DOT, PERCENT_ESCAPE, DECODED_PATH_SEPARATORS, DECODED_LEADING_SEPARATOR, MAX_PERCENT_DECODE_ROUNDS, URL_RESOLUTION_PROBE_BASE, PLATFORM_INVOCATION_CALLERS, SUPERVISION_OPS, SUPERVISION_OPS_WAVE2, SUPERVISION_WATCHDOG_OPS, SUPERVISION_WATCHDOG_ERRORS, SUPERVISION_ROLLBACK_REFUSAL_CODES, SUPERVISION_ROLLBACK_LINEAGE_MAX, SUPERVISION_UNTARGETED_OPS, SUPERVISED_WORKFLOW_VERSIONS_MAX, SUPERVISION_EVENT_KINDS, AGENT_PROVISIONING_LIMITS, AGENT_PROVISIONING_APPROVAL_PAYLOAD_KEY, AGENT_PROVISIONING_ERRORS, PROVISIONED_SUPERVISION_ACTIONS, isNonEmptyString, uniqueStrings, sameSet, AGENT_PROVISIONING_APPROVAL_CARD_MAX_CHARS, APPROVAL_PAYLOAD_MEMBERS, AGENT_CONNECTION_POLICIES, AGENT_CONNECTION_POLICY_DEFAULT, AGENT_CONNECTION_MOUNT_MODES, AGENT_CONNECTION_GOVERNANCE_ERRORS, AGENT_CONNECTION_OPERATION_RULES_MAX, AGENT_CONNECTION_OPERATION_PATTERN_MAX_LENGTH, OPERATION_RULE_METHODS, PATH_SEPARATOR, PATH_SINGLE_SEGMENT_WILDCARD, PATH_REST_WILDCARD, METHOD_OVERRIDE_HEADER_NAMES, METHOD_OVERRIDE_QUERY_NAMES, ODATA_BATCH_SEGMENT, GOOGLE_BATCH_FIRST_SEGMENT, CONNECTION_CHECK_RESULTS, CONNECTION_CHECK_CATALOGUE_V1, CONNECTION_CHECK_NAME_PATTERN, CONNECTION_CHECK_NAME_MAX, CONNECT_OUTCOME_STATUSES, SECRET_TEST_RESULTS, SECRET_DATADOG_REGIONS, SECRET_PROVIDER_CATALOGUE_V1, SECRET_TEST_MAX_RESPONSE_BYTES, SECRET_ENV_KEY_PATTERN, SECRET_REQUEST_ERRORS, SECRET_OUTCOME_STATUSES, CLIENT_OUTCOME_TURNS_MAX, SHORT_TEXT_MAX, SLUG_MAX, shortText, optionalShortText, CONNECTION_REQUEST_TERMINAL_STATES, CONNECTION_USE_ORIGINS, AGENT_CONNECTION_OPERATION_LIMITS_BOUNDS, CURRENCY_CODE, LIMITS_KEYS, CAPS_KEYS, EXCLUSIONS_KEYS, EMAIL_IN_TEXT, MAX_EXCLUSION_DEPTH, PROJECTION_PARAMETER_KEYS, CHANNEL_PARAMETER_KEYS, GMAIL_SYSTEM_LABEL_IDS, ZERO_DECIMAL_CURRENCIES, THREE_DECIMAL_CURRENCIES, DECIMAL_AMOUNT, REDACTED_PLACEHOLDER, PROVIDER_MESSAGE_MAX_CHARS, ERROR_MESSAGE_MAX_CHARS, SECRET_LITERAL_PATTERNS, SECRET_NAME, SECRET_PAIR_PATTERNS, GROUP_COUNT, WORKFLOW_SECRET_KEY_RE, WORKFLOW_RESERVED_SECRET_KEYS, SCRUB_INPUT_MAX_CHARS, SCRUB_CUT_BACKOFF_CHARS, TEST_SESSION_ID_PATTERN, TEST_SESSION_COLLECTION_PREFIX, TEST_EFFECT_BODY_MAX_BYTES, TEST_EFFECT_DROPPED_HEADERS, EVAL_CREDITS_PER_1K_TOKENS, EVAL_RESERVED_TOOL_ID_PREFIXES, CONNECTION_HANDOVER_APPROVAL_PAYLOAD_KEY, CONNECTION_HANDOVER_APPROVAL_CARD_MAX_CHARS, CONNECTION_HANDOVER_LIMITS, MEMBERS, FORMAT_CHARS, oneLine, boundedString, AGENT_METRIC_NAME_PATTERN, AGENT_METRIC_LIMITS, AGENT_OBJECTIVE_ERRORS, CHANGE_LEASE_TTL_MINUTES_MIN, CHANGE_LEASE_TTL_MINUTES_MAX, CHANGE_LEASE_REASON_MAX, CHANGE_LEASE_ERRORS, AGENT_CONFIG_SET_LIMITS, SECRET_ENV_KEY_SUFFIXES, DEFAULT_OWNER_DEPARTURE_POLICY, AGENT_LIFECYCLE_ERRORS, USER_COST_COUNTER_TTL_SECONDS, USER_COST_ATTRIBUTION_CHANNELS, CALLER_DEDUPE_KEY_MAX, FOLLOW_UP_IDEMPOTENCY_TTL_SECONDS, THREAD_FOLLOW_UP_LIMITS, THREAD_FOLLOW_UP_ERRORS, PROGRESS_UPDATE_LIMITS, PAUSABLE_CAPABILITY_KINDS, UNIFIED_CATCH_UP_MAX_WINDOW_HOURS, UNIFIED_CATCH_UP_EVENTS, UNIFIED_CATCH_UP_FILTERABLE_OBJECT_TYPES, AGENT_NEVER_RULES_MAX, AGENT_NEVER_RULE_FIELD_MAX, AGENT_NEVER_RULE_INPUT_MATCH_MAX, NEVER_RULE_ID_PATTERN, NEVER_RULE_HTTP_METHODS, TEMPLATE_DISTRIBUTION_MODES, CHANNEL_SEND_CHANNELS, TAKEOVER_MAX_IDLE_MINUTES, MINUTES_PER_DAY, DEFAULT_IDLE_RELEASE_MINUTES, FALLBACK_IDLE_RELEASE_MINUTES, VARIATION_SELECTORS, SLACK_EMOJI_NAMES, SLACK_SHORTCODE, PLAIN_EMAIL_ADDRESS, DOMAIN, UNSAFE_TEXT, SLACK_CONVERSATION_ID, CHANNEL_SETTING_GROUPS, THREAD_SCOPING_NOUN, TAKEOVER_CHANNEL_TYPES, EMAIL_SETTINGS, SLACK_SETTING_DEFAULTS, SLACK_REACTION_MAX, SLACK_INTRO_MAX, SLACK_EXAMPLE_PROMPTS_MAX, SLACK_EXAMPLE_PROMPT_MAX, SLACK_SUPPORT_CONTACT_MAX, SLACK_SETTINGS, CHANNEL_SETTINGS, REVIEWABLE_ACTION_EXECUTE_TOOL_ALLOWLIST, REVIEWABLE_STANDING_START_TOOLS, REVIEWABLE_MCP_SEND_TOOL_SUFFIX, MCP_TOOL_READ_VERB_RE, MCP_DRAFT_CREATE_VERBS, NON_INTERACTIVE_CHANNELS, RICH_PARTS_MESSAGE_ID_PREFIX, SCREENSHOT_MESSAGE_ID_PREFIX, BROWSER_COMMANDS, BROWSER_COMMAND_NAMES, LOG_FIELDS_MAX_KEYS, LOG_FIELD_MAX_VALUE_BYTES, LOG_FIELDS_MAX_BYTES, LOG_FIELD_KEY_PATTERN, LOG_FIELD_SECRET_SHAPED_KEY_PATTERNS, LOG_FIELDS_CLAMPED_KEY, LOG_FIELD_ARRAY_COUNT_SUFFIX, LuaLogFieldsError, DESKTOP_FILE_COMMANDS, DESKTOP_FILE_COMMAND_SET, WORKFLOW_RETRY_BACKOFFS, WORKFLOW_RETRY_MIN_ATTEMPTS, WORKFLOW_RETRY_POLICY_KEYS, WORKFLOW_RETRY_MAX_ATTEMPTS, WORKFLOW_RETRY_ENGINE_KEYS, WORKFLOW_JOB_RESOURCES, WORKFLOW_SIDE_EFFECTS, WORKFLOW_MODEL_CLASSES, WORKFLOW_DEFAULT_TASK_CLASS_MAP, WORKFLOW_MODELS_MAX_CLASS_DEFAULT, WORKFLOW_AUTONOMY_NUMERIC_KEYS, WORKFLOW_AUTONOMY_ENVELOPE_KEYS, WORKFLOW_AUTONOMY_DEFAULTS, WORKFLOW_AUTONOMY_CEILINGS, WORKFLOW_AUTONOMY_MAX_RUNS_PER_HOUR_ENV, WORKFLOW_AUTONOMY_MAX_RUNS_PER_HOUR_CEILING, WORKFLOW_AUTONOMY_FORMS_DEFAULT, WORKFLOW_AUTONOMY_MIN_VALUE, WORKFLOW_JOB_RANGES, WORKFLOW_JOB_RANGE_MEMBERS, WORKFLOW_SINGLE_STEP_TYPES, WORKFLOW_HITL_ENTRY_TYPES, WORKFLOW_ARM_ENTRY_TYPES, WORKFLOW_HITL_ARM_CONTAINERS, WORKFLOW_GRAPH_ENTRY_STEP_KINDS, WORKFLOW_ARM_ENTRY_STEP_KINDS, WORKFLOW_BUDGET_MAX_DURATION_SECONDS, MODEL_ID_BYOK_PROVIDERS, MODEL_CLASS_REF_PREFIX, MODEL_SNAPSHOT_SUFFIX, REASONING_EFFORT_VALUES, IMPLICIT_MODEL_SELECTION_SOURCES, PLATFORM_FALLBACK_MODEL_SOURCE, AGENT_NAME_TOKEN, DEFAULT_PERSONA_GUIDE, PERSONAL_SPACE_STARTING_PERSONA, AGENT_LOG_SOURCES, AGENT_LOG_FIELDS_MAX_WIRE_KEYS, LOG_DRAIN_TYPES_PHASE1, LOG_DRAIN_TYPES_PHASE2, LOG_DRAIN_TYPES_IMPLEMENTED, LOG_DRAIN_SOURCES, LOG_DRAIN_MAX_PER_ORG, LOG_DRAIN_MAX_PER_ORG_ENTERPRISE, LOG_DRAIN_DATADOG_SITES, LOG_DRAIN_NEWRELIC_SITES, LOG_DRAIN_ENDPOINT_TEMPLATES, LOG_DRAIN_PRESET_SITES, LOG_DRAIN_BUCKET_NAME_PATTERN, LOG_DRAIN_BUCKET_HOST_PATTERNS, LOG_DRAIN_PRESET_HOST_SUFFIXES, DRAIN_CONTENT_ACK_ERROR_CODE, DRAIN_CONTENT_ACK_FIELD, DrainContentAckRequiredError, LOG_DRAIN_PRESET_PATHS, PRESET_SEGMENT_RE, LOG_DRAIN_QUOTAS, LOG_DRAIN_QUOTA_WARN_RATIO, LOG_DRAIN_QUOTA_DROP_DEBUG_RATIO, LOG_DRAIN_QUOTA_DROP_INFO_RATIO, LOG_DRAIN_QUOTA_PAUSE_RATIO, LOG_EXPORT_SOURCES, LOG_EXPORT_MAX_WINDOW_DAYS, LOG_EXPORT_MAX_WINDOW_MS, LOG_EXPORT_URL_TTL_SECONDS, LOG_EXPORT_FILE_RETENTION_DAYS, LOG_EXPORT_FILE_RETENTION_MS, LOG_EXPORT_PART_MAX_BYTES, LOG_DRAIN_NOTICE_RATE_LIMIT_MS, LOG_DRAIN_VERIFICATION_STALE_MS, LOG_DRAIN_DIGEST_INTERVAL_MS, LOG_DRAIN_DIGEST_MAX_ENTRIES, LOG_DRAIN_NOTICE_ERROR_MAX_CHARS, LOG_DRAIN_USAGE_LINE_ITEM, LOG_DRAIN_BYTES_PER_GIB, DEFAULT_LOG_DRAIN_PLAN_CONFIG, TIERS, LOG_CURSOR_MAX_LENGTH, LOG_CURSOR_MAX_ID_LENGTH, LOG_RELATIVE_TIME_PATTERN, LOG_ISO_TIME_PATTERN, RELATIVE_UNIT_MS, CORE_DRAINING_CODE, CORE_DRAINING_DEFAULT_RETRY_MS, CORE_DRAINING_MAX_RETRY_MS, VoiceNameSchema, PluginProviderSchema, RealtimeProviderSchema, PluginClassSchema, ModelDescriptorSchema, InferenceModelSchema, PluginModelSchema, RealtimeModelSchema, LuaVoiceModelSchema, TurnDetectionSchema, InterruptionSchema, BuiltinAudioClipSchema, AudioConfigSchema, BackgroundAudioEntrySchema, BackgroundAudioSchema, LuaVoiceConfigInnerSchema, LuaVoiceConfigSchema, LuaVoiceRefSchema, LUA_JOB_DEFAULT_TIMEOUT_SECONDS, LUA_JOB_MIN_TIMEOUT_SECONDS, LUA_JOB_MAX_TIMEOUT_SECONDS, KEYS, MAX_BODY_BYTES, MAX_ID_LENGTH, UTC_ISO, TEMPLATE_TRIGGER_URL_ENV_PREFIX, TEMPLATE_INSTALL_POLICY_PER_WORKSPACE_VALUES, SUBJECT_TYPES, SubjectTypeSchema, CREDENTIAL_TYPES, CredentialTypeSchema, DEVICE_OPERATIONS, DeviceOperationSchema, DEVICE_SCOPE_BY_OPERATION, DeviceBindingSchema, IdSchema, SESSION_AUTH_TIME_MAX_S, PrincipalDescriptorSchema, ActorDescriptorSchema, PrincipalOwnerSchema, CredentialLifecycleSchema, GeneralCredentialDescriptorSchema, DeviceCredentialDescriptorSchema, GeneralPrincipalContextSchema, DeviceCredentialPrincipalContextSchema, RawPrincipalContextSchema, PrincipalContextSchema, DeviceCredentialClaimSchema, LUA_CLIENT_HEADER, LUA_CLIENT_APPS, SEMVER_PATTERN, WEB_RELEASE_PATTERN, CLIENT_HEADER_PATTERN, LUA_SESSION_ID_CLAIM, SESSION_REVOKED_CODE, AUTHZ_PROJECTION_VERSION, ProjectedScopeSchema, DisplayRoleSchema, AuthorizationPrincipalSchema, CredentialContextSchema, ProjectionAnomalySchema, ProjectedOrgSchema, ProjectedResourceSchema, CapabilityProfilesSchema, RoleCatalogSchema, EffectiveAuthorizationSchema, ResourcePageSchema, SYSTEM_USER_PREFIX, WORKFLOW_RUN_IN_FLIGHT, WORKFLOW_RUN_IDLE, WORKFLOW_RUN_TERMINAL, WORKFLOW_RUN_STATUSES, WORKFLOW_RUN_GATE_KINDS, WORKFLOW_STEP_STATUSES, WORKFLOW_STEP_IN_FLIGHT, WORKFLOW_SIGNAL_EVENT_SITES, ARCHIVE_WINDOW_MARGIN_DAYS, WORKFLOW_ORG_PURGING_TTL_S, WORKFLOW_ORG_PURGE_FORCE_AFTER_MS, IDEMPOTENCY_HOLDING_STATUSES, WORKFLOW_SCHEDULED_RUN_ID_PREFIX, CLOUD_TASK_RUN_ID_PREFIX, WORKFLOW_SCHEDULE_KEY_MAX, WORKFLOW_SCHEDULE_IDEMPOTENCY_KEY_PREFIX, WORKFLOW_OPERATION_ID_PREFIX, WORKFLOW_CONNECTION_KEY_RE, WORKFLOW_AGENT_APP_CONNECTION_PREFIX, WORKFLOW_JOB_MODEL_SOURCE_LABELS, WORKFLOW_SUSPEND_KINDS, WORKFLOW_RUN_NOTIFICATION_SUSPENDED_KINDS, WORKFLOW_SIGNAL_PAYLOAD_MAX_BYTES, WORKFLOW_SIGNAL_NAME_RE, WORKFLOW_SUSPEND_DEFAULT_TIMEOUT_HOURS, WORKFLOW_RESOLVE_OUTPUT_MAX_BYTES, SCHEDULE_HEALTH_NOTIFY_CHANNELS, SCHEDULE_HEALTH_DEFAULT_NOTIFY, SCHEDULE_HEALTH_LIMITS, KNOWN_KEYS, WORKFLOW_GOAL_JUDGE_SELF, APPROVAL_ARGS_MAX_CHARS, APPROVAL_ARG_STRING_MAX_CHARS, APPROVAL_ARGS_SUMMARY_MAX_CHARS, MAX_DEPTH, MAX_KEYS, MAX_ITEMS, MAX_NODES, MAX_KEY_CHARS, KEY_SCRUB_INPUT_MAX_CHARS, STRING_SCRUB_INPUT_MAX_CHARS, ELLIPSIS, SKIP, SCRUB_SECRETS_BEFORE_PERSIST_ENV, PERSIST_SCRUB_MAX_CHARS, PERSIST_SCRUB_REF_MAX_CHARS, WORKFLOW_AUDIT_EVENTS, WORKFLOW_AUDIT_METADATA_MAX_BYTES, INDENT, WRAP_WIDTH, NOUNS, GET_TOOL_NAMES, PREAMBLE, WORKFLOW_APPROVAL_OUTPUT_DECISIONS, WORKFLOW_APPROVAL_OUTPUT_SCHEMA, JSON_FENCE_RE, DEFAULT_ON_AGENT_FEATURES, SUBAGENT_PER_KEY_FLAG_ENV, PER_KEY_FLAG_VALUES, ONBOARDING_FLOW_KEY, ONBOARDING_SCHEMA_VERSION, id, copy, onboardingHeadingSchema, onboardingRichTextInlineSchema, onboardingRichTextSchema, onboardingDestinationSchema, onboardingArtworkSchema, onboardingAnswerSchema, onboardingQuestionSchema, onboardingTemplateSectionSchema, onboardingInstallScreenSchema, onboardingResultScreenSchema, onboardingConnectScreenSchema, onboardingTemplateContentSchema, onboardingUnavailableOutcomeSchema, onboardingFlowSchema, onboardingActorSchema, onboardingEditorSchema, onboardingPublicationSummarySchema, onboardingValidationIssueSchema, onboardingValidationResponseSchema, onboardingAssetSchema, onboardingPublicAssetSchema, getOnboardingConfigResponseSchema, saveOnboardingDraftRequestSchema, validateOnboardingRequestSchema, publishOnboardingRequestSchema, rollbackOnboardingRequestSchema, onboardingTemplateCatalogItemSchema, getPublishedOnboardingResponseSchema, WEB_ROUTE_PROTOCOL_VERSION, WEB_ROUTE_METHODS, WEB_ROUTE_REQUEST_HEADER_ALLOWLIST, WEB_ROUTE_RESPONSE_HEADER_ALLOWLIST, WEB_ROUTE_MAX_REQUEST_BODY_BYTES, WEB_ROUTE_MAX_RESPONSE_BYTES, WEB_APP_NAME_PATTERN, WEB_APP_ENTRY_HTML_MAX_CHARS, WEB_APP_MAX_ASSET_BYTES, EVIDENCE_SESSION_IDLE_MS, EVIDENCE_MIN_CONVERSATIONS, EVIDENCE_LOW_CONFIDENCE_N, EVIDENCE_SNIPPET_MAX_CHARS, EVIDENCE_EXAMPLES_PER_ITEM, EVIDENCE_SHOWN_ITEMS, EVIDENCE_LATENCY_BOUNDS_MS, EVIDENCE_WORD_BOUNDS, BAD_CONVERSATION_REASONS, ATTACHMENT_LINES, REVIEW_VERDICT_REASON_ORDER, ENV_TEMPLATE_SECRET_KEY_RE, CONNECTION_SEND_NOT_ALLOWED, CONNECTION_RECIPIENT_NOT_ALLOWED, NOT_SEND, PLAIN_ADDRESS, RecipientSet, MCP_MESSAGING_CREATE, MCP_CALENDAR_EVENT_WRITE, REPLY_KEYS, DEDICATED_MAIL_SLUGS, FULL_SUITE_SLUGS, WELL_KNOWN_MAIL_FOLDERS, MEMBER_KEYS, CANONICAL_ORIGIN, CANONICAL_PREFIX, STRICT_BASE64, GMAIL_PREFIX, GMAIL_MESSAGES_SEND, GMAIL_DRAFTS_SEND, GOOGLE_BATCH, GRAPH_VERSION, GRAPH_PRINCIPAL, GRAPH_SEND_MAIL, GRAPH_MESSAGE_ACTION, GRAPH_OWNER, GRAPH_EVENTS, GRAPH_EVENT_COLLECTION, GRAPH_EVENT_ID, GRAPH_EVENT_ITEM, GRAPH_EVENT_ACTION, GRAPH_BATCH, GRAPH_TEAMS_MESSAGE, GRAPH_ACTIVITY_NOTIFICATION, GRAPH_GROUP_CONVERSATION, GCAL_EVENTS, GRAPH_READ_KEYS, MALFORMED_POLICY, BILLING_REJECTION_TEXT_CREDITS, BILLING_REJECTION_TEXT_SEAT, BILLING_REJECTION_TEXT_USER_QUOTA;
|
|
5994
6110
|
var init_dist = __esm({
|
|
5995
6111
|
"../shared-types/dist/index.mjs"() {
|
|
5996
6112
|
"use strict";
|
|
@@ -6206,7 +6322,20 @@ var init_dist = __esm({
|
|
|
6206
6322
|
* agentId }`) to its env. `act`, on a turn whose platform-picked user is the target's owner, never overwriting a
|
|
6207
6323
|
* key (`LUA_SECRET_ATTACH_EXISTING_ENABLED`).
|
|
6208
6324
|
*/
|
|
6209
|
-
"secrets.attach": "act"
|
|
6325
|
+
"secrets.attach": "act",
|
|
6326
|
+
/**
|
|
6327
|
+
* SV (LUA-1080) — `Agents.deployed(id)`: what the target serves RIGHT NOW, read from each primitive's live pointer
|
|
6328
|
+
* (skills with their tools, the published persona, pre/postprocessors), with version ids comparable to an agent
|
|
6329
|
+
* version snapshot. Works whether or not the target has a promoted agent version. Metadata and hashes only.
|
|
6330
|
+
*/
|
|
6331
|
+
"primitives.deployed": "observe",
|
|
6332
|
+
// [WD]
|
|
6333
|
+
/**
|
|
6334
|
+
* WD (watchdog grant) — `Agents.versions(id).rollback(version, { expectActive })`: restore a version of the target
|
|
6335
|
+
* that was ACTIVE before, is OLDER than the active one and was active within the last 7 days. CAS on the active
|
|
6336
|
+
* version; only from a workflow step the watchdog grant names. Held only by a watchdog grant.
|
|
6337
|
+
*/
|
|
6338
|
+
"versions.rollback": "rollback"
|
|
6210
6339
|
};
|
|
6211
6340
|
__name(isSupervisionOp, "isSupervisionOp");
|
|
6212
6341
|
__name3(isSupervisionOp, "isSupervisionOp");
|
|
@@ -6384,8 +6513,65 @@ var init_dist = __esm({
|
|
|
6384
6513
|
gate: "act",
|
|
6385
6514
|
targeted: true,
|
|
6386
6515
|
item: "SV"
|
|
6516
|
+
},
|
|
6517
|
+
/** SV (LUA-1080) — `Agents.deployed(id)`: the target's deployed primitives (live pointers, no agent version needed). */
|
|
6518
|
+
"primitives.deployed": {
|
|
6519
|
+
gate: "observe",
|
|
6520
|
+
targeted: true,
|
|
6521
|
+
item: "SV"
|
|
6522
|
+
},
|
|
6523
|
+
/** WD — `Agents.versions(id).rollback(version, { expectActive })` (watchdog grant only). */
|
|
6524
|
+
"versions.rollback": {
|
|
6525
|
+
gate: "rollback",
|
|
6526
|
+
targeted: true,
|
|
6527
|
+
item: "WD"
|
|
6387
6528
|
}
|
|
6388
6529
|
};
|
|
6530
|
+
SUPERVISION_WATCHDOG_OPS = {
|
|
6531
|
+
logs: "observe",
|
|
6532
|
+
"runs.list": "observe",
|
|
6533
|
+
"runs.get": "observe",
|
|
6534
|
+
"data.get": "observe",
|
|
6535
|
+
"data.query": "observe",
|
|
6536
|
+
"versions.list": "observe",
|
|
6537
|
+
"versions.get": "observe",
|
|
6538
|
+
"versions.diff": "observe",
|
|
6539
|
+
"versions.rollback": "rollback"
|
|
6540
|
+
};
|
|
6541
|
+
__name(isSupervisionWatchdogOp, "isSupervisionWatchdogOp");
|
|
6542
|
+
__name3(isSupervisionWatchdogOp, "isSupervisionWatchdogOp");
|
|
6543
|
+
SUPERVISION_WATCHDOG_ERRORS = {
|
|
6544
|
+
/** A watchdog holder called an op outside {@link SUPERVISION_WATCHDOG_OPS}. */
|
|
6545
|
+
OP_REFUSED: "supervision_watchdog_op_refused",
|
|
6546
|
+
/** See {@link SupervisionRollbackRefusalReason}. */
|
|
6547
|
+
ROLLBACK_NEVER_ACTIVE: "supervision_rollback_never_active",
|
|
6548
|
+
ROLLBACK_NOT_OLDER: "supervision_rollback_not_older",
|
|
6549
|
+
ROLLBACK_NOT_IN_LINEAGE: "supervision_rollback_not_in_lineage",
|
|
6550
|
+
ROLLBACK_AFTER_ROLLBACK: "supervision_rollback_after_rollback",
|
|
6551
|
+
ROLLBACK_AFTER_BACKWARD_PROMOTE: "supervision_rollback_after_backward_promote",
|
|
6552
|
+
ROLLBACK_TOO_OLD: "supervision_rollback_too_old",
|
|
6553
|
+
/** `expectActive` is not the active version (CAS). */
|
|
6554
|
+
ROLLBACK_CONFLICT: "supervision_rollback_conflict",
|
|
6555
|
+
/** The promote failed part-way and its compensation restored the previous active version. */
|
|
6556
|
+
ROLLBACK_INCOMPLETE: "supervision_rollback_incomplete",
|
|
6557
|
+
/** The promote failed part-way AND its compensation failed: the Agents DB may have moved (manual triage). */
|
|
6558
|
+
ROLLBACK_INCOMPLETE_UNCOMPENSATED: "supervision_rollback_incomplete_uncompensated"
|
|
6559
|
+
};
|
|
6560
|
+
SUPERVISION_ROLLBACK_REFUSAL_CODES = {
|
|
6561
|
+
never_active: SUPERVISION_WATCHDOG_ERRORS.ROLLBACK_NEVER_ACTIVE,
|
|
6562
|
+
not_older: SUPERVISION_WATCHDOG_ERRORS.ROLLBACK_NOT_OLDER,
|
|
6563
|
+
not_in_lineage: SUPERVISION_WATCHDOG_ERRORS.ROLLBACK_NOT_IN_LINEAGE,
|
|
6564
|
+
after_rollback: SUPERVISION_WATCHDOG_ERRORS.ROLLBACK_AFTER_ROLLBACK,
|
|
6565
|
+
after_backward_promote: SUPERVISION_WATCHDOG_ERRORS.ROLLBACK_AFTER_BACKWARD_PROMOTE,
|
|
6566
|
+
too_old: SUPERVISION_WATCHDOG_ERRORS.ROLLBACK_TOO_OLD
|
|
6567
|
+
};
|
|
6568
|
+
__name(isSupervisionRollbackRefusalReason, "isSupervisionRollbackRefusalReason");
|
|
6569
|
+
__name3(isSupervisionRollbackRefusalReason, "isSupervisionRollbackRefusalReason");
|
|
6570
|
+
SUPERVISION_ROLLBACK_LINEAGE_MAX = 25;
|
|
6571
|
+
__name(supervisionRollbackTargetRefusal, "supervisionRollbackTargetRefusal");
|
|
6572
|
+
__name3(supervisionRollbackTargetRefusal, "supervisionRollbackTargetRefusal");
|
|
6573
|
+
__name(supervisionRollbackRefusal, "supervisionRollbackRefusal");
|
|
6574
|
+
__name3(supervisionRollbackRefusal, "supervisionRollbackRefusal");
|
|
6389
6575
|
SUPERVISION_UNTARGETED_OPS = [
|
|
6390
6576
|
"agents.list",
|
|
6391
6577
|
...Object.entries(SUPERVISION_OPS_WAVE2).filter(([, contract]) => !contract.targeted).map(([op]) => op)
|
|
@@ -6821,7 +7007,9 @@ var init_dist = __esm({
|
|
|
6821
7007
|
/** `secrets.attach` would set an env key the agent already has: never overwritten (remove or rotate it first). */
|
|
6822
7008
|
KEY_EXISTS: "secret_key_exists",
|
|
6823
7009
|
/** A request held for an existing agent submitted on the public token page: its owner submits it signed in. */
|
|
6824
|
-
OWNER_SUBMIT_REQUIRED: "secret_submit_requires_owner"
|
|
7010
|
+
OWNER_SUBMIT_REQUIRED: "secret_submit_requires_owner",
|
|
7011
|
+
/** LUA-1079 — `requestSecret` with `pendingFor` on a client that did not declare the pending card capability. */
|
|
7012
|
+
PENDING_CARD_UNSUPPORTED: "secret_pending_card_unsupported"
|
|
6825
7013
|
};
|
|
6826
7014
|
SECRET_OUTCOME_STATUSES = [
|
|
6827
7015
|
...SECRET_TEST_RESULTS,
|
|
@@ -7546,6 +7734,13 @@ var init_dist = __esm({
|
|
|
7546
7734
|
welcome: "Welcome and Home page",
|
|
7547
7735
|
takeover: "Human takeover"
|
|
7548
7736
|
};
|
|
7737
|
+
THREAD_SCOPING_NOUN = {
|
|
7738
|
+
front: "Front conversation",
|
|
7739
|
+
messagebird: "MessageBird conversation",
|
|
7740
|
+
imessage: "iMessage chat"
|
|
7741
|
+
};
|
|
7742
|
+
__name(threadScopingSetting, "threadScopingSetting");
|
|
7743
|
+
__name3(threadScopingSetting, "threadScopingSetting");
|
|
7549
7744
|
TAKEOVER_CHANNEL_TYPES = [
|
|
7550
7745
|
"whatsapp",
|
|
7551
7746
|
"instagram",
|
|
@@ -7819,7 +8014,10 @@ var init_dist = __esm({
|
|
|
7819
8014
|
CHANNEL_SETTINGS = {
|
|
7820
8015
|
...Object.fromEntries(TAKEOVER_CHANNEL_TYPES.map((type) => [
|
|
7821
8016
|
type,
|
|
7822
|
-
type === "email" ? EMAIL_SETTINGS :
|
|
8017
|
+
type === "email" ? EMAIL_SETTINGS : type === "front" || type === "messagebird" || type === "imessage" ? [
|
|
8018
|
+
...takeoverSettings(type),
|
|
8019
|
+
threadScopingSetting(type)
|
|
8020
|
+
] : takeoverSettings(type)
|
|
7823
8021
|
])),
|
|
7824
8022
|
slack: SLACK_SETTINGS
|
|
7825
8023
|
};
|
|
@@ -9566,6 +9764,9 @@ This text is who you are for this person. As you learn them, their name, their w
|
|
|
9566
9764
|
__name(workflowOrgSlotKey, "workflowOrgSlotKey");
|
|
9567
9765
|
__name3(workflowOrgSlotKey, "workflowOrgSlotKey");
|
|
9568
9766
|
WORKFLOW_CONNECTION_KEY_RE = /^[a-z][a-z0-9_-]{0,63}$/;
|
|
9767
|
+
WORKFLOW_AGENT_APP_CONNECTION_PREFIX = "agentapp_";
|
|
9768
|
+
__name(isWorkflowAgentAppConnectionId, "isWorkflowAgentAppConnectionId");
|
|
9769
|
+
__name3(isWorkflowAgentAppConnectionId, "isWorkflowAgentAppConnectionId");
|
|
9569
9770
|
WORKFLOW_JOB_MODEL_SOURCE_LABELS = {
|
|
9570
9771
|
stamp: "lease stamp",
|
|
9571
9772
|
initData: "run input",
|
|
@@ -9591,6 +9792,7 @@ This text is who you are for this person. As you learn them, their name, their w
|
|
|
9591
9792
|
...WORKFLOW_RUN_GATE_KINDS
|
|
9592
9793
|
];
|
|
9593
9794
|
WORKFLOW_SIGNAL_PAYLOAD_MAX_BYTES = 64 * 1024;
|
|
9795
|
+
WORKFLOW_SIGNAL_NAME_RE = /^[a-zA-Z0-9_.-]{1,64}$/;
|
|
9594
9796
|
WORKFLOW_SUSPEND_DEFAULT_TIMEOUT_HOURS = 168;
|
|
9595
9797
|
WORKFLOW_RESOLVE_OUTPUT_MAX_BYTES = 256 * 1024;
|
|
9596
9798
|
SCHEDULE_HEALTH_NOTIFY_CHANNELS = [
|
|
@@ -12986,6 +13188,19 @@ function validateApprovalReminder(node, path3) {
|
|
|
12986
13188
|
}
|
|
12987
13189
|
return [];
|
|
12988
13190
|
}
|
|
13191
|
+
function validateHitlTimeoutHours(node, path3) {
|
|
13192
|
+
const h = node.timeoutHours;
|
|
13193
|
+
if (typeof h !== "number") return [];
|
|
13194
|
+
if (Number.isFinite(h) && h >= APPROVAL_TIMEOUT_HOURS_MIN && h <= APPROVAL_TIMEOUT_HOURS_MAX) return [];
|
|
13195
|
+
return [
|
|
13196
|
+
{
|
|
13197
|
+
code: "timeout-hours-out-of-range",
|
|
13198
|
+
path: `${path3}.timeoutHours`,
|
|
13199
|
+
severity: "error",
|
|
13200
|
+
message: `timeoutHours must be a number of hours in [${APPROVAL_TIMEOUT_HOURS_MIN}, ${APPROVAL_TIMEOUT_HOURS_MAX}] (got ${h})`
|
|
13201
|
+
}
|
|
13202
|
+
];
|
|
13203
|
+
}
|
|
12989
13204
|
function firstAskDeadline(node) {
|
|
12990
13205
|
const head = Array.isArray(node.onTimeout) ? node.onTimeout[0] : node.onTimeout;
|
|
12991
13206
|
if (typeof head === "object" && head !== null && "escalateTo" in head) {
|
|
@@ -13057,6 +13272,9 @@ function retryBackoffs() {
|
|
|
13057
13272
|
function sleepUntilUnsupportedMessage(id2) {
|
|
13058
13273
|
return `the engine does not execute \`sleepUntil\` yet (node "${id2}") \u2014 replace it with a \`sleep\` node with a \`duration\` in ms, e.g. { type: 'sleep', id: '${id2}', duration: ${SLEEP_UNTIL_REPLACEMENT.duration} }`;
|
|
13059
13274
|
}
|
|
13275
|
+
function signalNameInvalidMessage(id2, name) {
|
|
13276
|
+
return `waitForSignal "${id2}" signal "${name}" must match /${WORKFLOW_SIGNAL_NAME_RE.source}/ (the names a delivery accepts)`;
|
|
13277
|
+
}
|
|
13060
13278
|
function armSubrunUnsupportedMessage(id2, workflowId) {
|
|
13061
13279
|
return `the engine does not execute the implicit \`${workflowId}\` arm subrun (node "${id2}") \u2014 a [map, step] container arm is the step itself with the map as its \`input\` since lua-cli 3.32.4; re-run \`lua compile\` with the current CLI (a hand-written artifact: put the map on the arm node's \`input\` and drop the \`workflow\` wrapper)`;
|
|
13062
13280
|
}
|
|
@@ -13649,10 +13867,13 @@ function validateLuaExtensions(g, caps = WORKFLOW_CAPS_DEFAULT, opts = {
|
|
|
13649
13867
|
const w = node;
|
|
13650
13868
|
checkId(w.id, path3);
|
|
13651
13869
|
if (typeof w.signal !== "string" || w.signal.length === 0) err("invalid-envelope", "waitForSignal.signal is required", `${path3}.signal`, w.id);
|
|
13870
|
+
else if (!WORKFLOW_SIGNAL_NAME_RE.test(w.signal)) err("signal-name-invalid", signalNameInvalidMessage(w.id, w.signal), `${path3}.signal`, w.id);
|
|
13871
|
+
for (const r of validateHitlTimeoutHours(w, path3)) err(r.code, r.message, r.path, w.id);
|
|
13652
13872
|
return;
|
|
13653
13873
|
}
|
|
13654
13874
|
const a = node;
|
|
13655
13875
|
checkId(a.id, path3);
|
|
13876
|
+
for (const r of validateHitlTimeoutHours(a, path3)) err(r.code, r.message, r.path, a.id);
|
|
13656
13877
|
if ((a.approver ?? "creator") === "creator" && a.excludeInitiator === true) {
|
|
13657
13878
|
err("approver-excludes-only-candidate", "approver:'creator' with excludeInitiator:true always excludes the only candidate", path3, a.id);
|
|
13658
13879
|
}
|
|
@@ -16120,7 +16341,7 @@ function collectJobTierSteps(entry, out) {
|
|
|
16120
16341
|
return;
|
|
16121
16342
|
}
|
|
16122
16343
|
}
|
|
16123
|
-
var __defProp6, __name6, WorkflowTemplateError, TEMPLATE_PLACEHOLDER, TEMPLATE_NAMESPACES, MAP_DESCRIPTOR_KEYS, MAP_MEMBER_MALFORMED_CODE, fromInit, fromStep, value, template, fromRequest, rows, fromKnowledge, SideEffectsSchema, JobResourcesSchema, WORKFLOW_MODEL_TEMPLATE_ROOT, WORKFLOW_MODEL_TEMPLATE_RE, PATH_SEGMENT_RE, APPROVER_SPEC_MAX_USERS, ESCALATION_MAX_HOPS, TemplateBindingSchema, ApproverSpecSchema, FourEyesSchema, EscalationHopSchema, TerminalOutcomeSchema, ApprovalOnTimeoutSchema, APPROVER_SPEC_SHAPES, APPROVER_WRITTEN_MAX, USER_ID_SHAPED_RE, BINDING_ROOTS, APPROVAL_REMIND_AFTER_HOURS_MIN, APPROVAL_REMIND_AFTER_HOURS_MAX, WORKSPACE_TEMPLATE_EXPR_RE, SLEEP_UNTIL_REPLACEMENT, WORKFLOW_WORKSPACE_TTL_MAX_HOURS_DEFAULT, WORKFLOW_CAPS_DEFAULT, WORKFLOW_STEP_DEFAULT_TIMEOUT_SECONDS, WORKFLOW_AGENT_DEFAULT_TIMEOUT_SECONDS, WORKFLOW_JOB_DEFAULT_TIMEOUT_SECONDS, WORKFLOW_FOREACH_DEFAULT_CONCURRENCY, WORKFLOW_FOREACH_DEFAULT_MAX_ITEMS, WORKFLOW_LOOP_DEFAULT_MAX_ITERATIONS, WORKFLOW_SUSPEND_DEFAULT_TIMEOUT_HOURS2, WORKFLOW_SIGNAL_DEFAULT_SOURCES, clone, CONNECTION_ID_HEX_RE, WORKFLOW_JOB_MAX_WORKTREE_ARMS, workspaceOf, mountsWorkspace, isJobTier, jobToolsOf, schemaIsArray, isHitlNode, isSingleStep, singleId, armId, TEMPLATE_STEP_REF, EDITABLE_PATH_RE, PREDICATE_OPS, isPredicateScalar, GRAPH_HASH_PREFIX, WorkflowPlanError, isArmStep, armStepId, armStepKind, joinIdOf, containerIdOf, PATH_PLACEHOLDER, MISSING, stepIdOf, cmp, eq, ne, gt, gte, lt, lte, inSet, notIn, exists, notExists, truthy, falsy, and, or, not, CONTINUED_FAILURE_TAG, CONTINUED_FAILURE_DEFAULT_CODE, CONTINUED_FAILURE_OUTPUT_SCHEMA, CONTINUED_FAILURE_LEAF_PATHS, isHitlNode2, nodeIdOf, GOAL_JUDGE_STEP_ID, NON_LEAF_KINDS, CONDITIONAL_JOIN_ID, branchArmId, canonical, sortKeys, JOIN, entryOfJoin, FORCE_CANCEL_STALE_MS, TERMINAL, WORKFLOW_INLINE_RUN_TAG, RUN_ERROR_ISSUES_MAX, IN_FLIGHT, n, SUSPENDED_FOR_DIMENSIONS, STEP_ERROR_DETAIL_KEYS, STEP_ERROR_DETAIL_MAX_BYTES, DETAIL_MAX_DEPTH, DETAIL_MAX_ITEMS, MAX_HOLIDAYS, MAX_WALK_DAYS, HHMM, YMD, MS_PER_MIN, MS_PER_DAY, MON_FRI, supportedTz, fmtCache, WEEKDAYS, JSON_PATCH_OPS, JSON_PATCH_MAX_OPS, JSON_PATCH_MAX_VALUE_BYTES, JSON_PATCH_MAX_TOTAL_BYTES, SEGMENT_RE, WORKFLOW_SCHEDULE_TYPES, WORKFLOW_SCHEDULE_SHAPE_ISSUE, WORKFLOW_SCHEDULE_SHAPES_HINT, WORKFLOW_SCHEDULE_RUN_AS, isObject, WORKFLOW_ENV_OVERLAY_MAX_KEYS, WORKFLOW_ENV_OVERLAY_MAX_VALUE_BYTES, WORKFLOW_ENV_TEMPLATE_SECRET_KEY_RE, isEnvRef, looksLikeEmbeddedJson, ZERO, isRecord2;
|
|
16344
|
+
var __defProp6, __name6, WorkflowTemplateError, TEMPLATE_PLACEHOLDER, TEMPLATE_NAMESPACES, MAP_DESCRIPTOR_KEYS, MAP_MEMBER_MALFORMED_CODE, fromInit, fromStep, value, template, fromRequest, rows, fromKnowledge, SideEffectsSchema, JobResourcesSchema, WORKFLOW_MODEL_TEMPLATE_ROOT, WORKFLOW_MODEL_TEMPLATE_RE, PATH_SEGMENT_RE, APPROVER_SPEC_MAX_USERS, ESCALATION_MAX_HOPS, TemplateBindingSchema, ApproverSpecSchema, FourEyesSchema, EscalationHopSchema, TerminalOutcomeSchema, ApprovalOnTimeoutSchema, APPROVER_SPEC_SHAPES, APPROVER_WRITTEN_MAX, USER_ID_SHAPED_RE, BINDING_ROOTS, APPROVAL_REMIND_AFTER_HOURS_MIN, APPROVAL_REMIND_AFTER_HOURS_MAX, APPROVAL_TIMEOUT_HOURS_MIN, APPROVAL_TIMEOUT_HOURS_MAX, WORKSPACE_TEMPLATE_EXPR_RE, SLEEP_UNTIL_REPLACEMENT, WORKFLOW_WORKSPACE_TTL_MAX_HOURS_DEFAULT, WORKFLOW_CAPS_DEFAULT, WORKFLOW_STEP_DEFAULT_TIMEOUT_SECONDS, WORKFLOW_AGENT_DEFAULT_TIMEOUT_SECONDS, WORKFLOW_JOB_DEFAULT_TIMEOUT_SECONDS, WORKFLOW_FOREACH_DEFAULT_CONCURRENCY, WORKFLOW_FOREACH_DEFAULT_MAX_ITEMS, WORKFLOW_LOOP_DEFAULT_MAX_ITERATIONS, WORKFLOW_SUSPEND_DEFAULT_TIMEOUT_HOURS2, WORKFLOW_SIGNAL_DEFAULT_SOURCES, clone, CONNECTION_ID_HEX_RE, WORKFLOW_JOB_MAX_WORKTREE_ARMS, workspaceOf, mountsWorkspace, isJobTier, jobToolsOf, schemaIsArray, isHitlNode, isSingleStep, singleId, armId, TEMPLATE_STEP_REF, EDITABLE_PATH_RE, PREDICATE_OPS, isPredicateScalar, GRAPH_HASH_PREFIX, WorkflowPlanError, isArmStep, armStepId, armStepKind, joinIdOf, containerIdOf, PATH_PLACEHOLDER, MISSING, stepIdOf, cmp, eq, ne, gt, gte, lt, lte, inSet, notIn, exists, notExists, truthy, falsy, and, or, not, CONTINUED_FAILURE_TAG, CONTINUED_FAILURE_DEFAULT_CODE, CONTINUED_FAILURE_OUTPUT_SCHEMA, CONTINUED_FAILURE_LEAF_PATHS, isHitlNode2, nodeIdOf, GOAL_JUDGE_STEP_ID, NON_LEAF_KINDS, CONDITIONAL_JOIN_ID, branchArmId, canonical, sortKeys, JOIN, entryOfJoin, FORCE_CANCEL_STALE_MS, TERMINAL, WORKFLOW_INLINE_RUN_TAG, RUN_ERROR_ISSUES_MAX, IN_FLIGHT, n, SUSPENDED_FOR_DIMENSIONS, STEP_ERROR_DETAIL_KEYS, STEP_ERROR_DETAIL_MAX_BYTES, DETAIL_MAX_DEPTH, DETAIL_MAX_ITEMS, MAX_HOLIDAYS, MAX_WALK_DAYS, HHMM, YMD, MS_PER_MIN, MS_PER_DAY, MON_FRI, supportedTz, fmtCache, WEEKDAYS, JSON_PATCH_OPS, JSON_PATCH_MAX_OPS, JSON_PATCH_MAX_VALUE_BYTES, JSON_PATCH_MAX_TOTAL_BYTES, SEGMENT_RE, WORKFLOW_SCHEDULE_TYPES, WORKFLOW_SCHEDULE_SHAPE_ISSUE, WORKFLOW_SCHEDULE_SHAPES_HINT, WORKFLOW_SCHEDULE_RUN_AS, isObject, WORKFLOW_ENV_OVERLAY_MAX_KEYS, WORKFLOW_ENV_OVERLAY_MAX_VALUE_BYTES, WORKFLOW_ENV_TEMPLATE_SECRET_KEY_RE, isEnvRef, looksLikeEmbeddedJson, ZERO, isRecord2;
|
|
16124
16345
|
var init_dist2 = __esm({
|
|
16125
16346
|
"../workflow-graph/dist/index.mjs"() {
|
|
16126
16347
|
"use strict";
|
|
@@ -16329,8 +16550,12 @@ var init_dist2 = __esm({
|
|
|
16329
16550
|
__name6(validateApproverBlock, "validateApproverBlock");
|
|
16330
16551
|
APPROVAL_REMIND_AFTER_HOURS_MIN = 1;
|
|
16331
16552
|
APPROVAL_REMIND_AFTER_HOURS_MAX = 720;
|
|
16553
|
+
APPROVAL_TIMEOUT_HOURS_MIN = 1;
|
|
16554
|
+
APPROVAL_TIMEOUT_HOURS_MAX = 720;
|
|
16332
16555
|
__name(validateApprovalReminder, "validateApprovalReminder");
|
|
16333
16556
|
__name6(validateApprovalReminder, "validateApprovalReminder");
|
|
16557
|
+
__name(validateHitlTimeoutHours, "validateHitlTimeoutHours");
|
|
16558
|
+
__name6(validateHitlTimeoutHours, "validateHitlTimeoutHours");
|
|
16334
16559
|
__name(firstAskDeadline, "firstAskDeadline");
|
|
16335
16560
|
__name6(firstAskDeadline, "firstAskDeadline");
|
|
16336
16561
|
__name(liftRenderedApprover, "liftRenderedApprover");
|
|
@@ -16348,6 +16573,8 @@ var init_dist2 = __esm({
|
|
|
16348
16573
|
});
|
|
16349
16574
|
__name(sleepUntilUnsupportedMessage, "sleepUntilUnsupportedMessage");
|
|
16350
16575
|
__name6(sleepUntilUnsupportedMessage, "sleepUntilUnsupportedMessage");
|
|
16576
|
+
__name(signalNameInvalidMessage, "signalNameInvalidMessage");
|
|
16577
|
+
__name6(signalNameInvalidMessage, "signalNameInvalidMessage");
|
|
16351
16578
|
__name(armSubrunUnsupportedMessage, "armSubrunUnsupportedMessage");
|
|
16352
16579
|
__name6(armSubrunUnsupportedMessage, "armSubrunUnsupportedMessage");
|
|
16353
16580
|
WORKFLOW_WORKSPACE_TTL_MAX_HOURS_DEFAULT = 168;
|
|
@@ -17757,6 +17984,9 @@ var init_workflow = __esm({
|
|
|
17757
17984
|
for (const r of validateApprovalReminder(opts, `approval("${id2}")`)) {
|
|
17758
17985
|
if (r.severity === "error") throw new LuaWorkflowBuildError("remind-after-invalid", `"${id2}": ${r.message}`);
|
|
17759
17986
|
}
|
|
17987
|
+
for (const r of validateHitlTimeoutHours(opts, `approval("${id2}")`)) {
|
|
17988
|
+
throw new LuaWorkflowBuildError("timeout-hours-out-of-range", `"${id2}": ${r.message}`);
|
|
17989
|
+
}
|
|
17760
17990
|
if (typeof opts.details === "function") throw new LuaWorkflowBuildError("closure-binding", `approval("${id2}").details must be template(...)`);
|
|
17761
17991
|
this.recordEnvRefs(opts.details, opts.timeoutHours, opts.approver);
|
|
17762
17992
|
const node = defined({
|
|
@@ -17787,6 +18017,10 @@ var init_workflow = __esm({
|
|
|
17787
18017
|
waitForSignal(id2, opts) {
|
|
17788
18018
|
this.assertId(id2, "waitForSignal()");
|
|
17789
18019
|
if (!opts || typeof opts.signal !== "string" || opts.signal.length === 0) throw new LuaWorkflowBuildError("invalid-envelope", `waitForSignal("${id2}") needs a signal name`);
|
|
18020
|
+
if (!WORKFLOW_SIGNAL_NAME_RE.test(opts.signal)) throw new LuaWorkflowBuildError("signal-name-invalid", signalNameInvalidMessage(id2, opts.signal));
|
|
18021
|
+
for (const r of validateHitlTimeoutHours(opts, `waitForSignal("${id2}")`)) {
|
|
18022
|
+
throw new LuaWorkflowBuildError("timeout-hours-out-of-range", `"${id2}": ${r.message}`);
|
|
18023
|
+
}
|
|
17790
18024
|
this.recordEnvRefs(opts.timeoutHours);
|
|
17791
18025
|
const node = defined({
|
|
17792
18026
|
type: "waitForSignal",
|
|
@@ -17849,7 +18083,7 @@ var init_workflow = __esm({
|
|
|
17849
18083
|
if (this.mapCount >= 2 && this.unnamedMaps > 0) {
|
|
17850
18084
|
this.warnings.push({
|
|
17851
18085
|
code: "map-id-required",
|
|
17852
|
-
message: `${this.unnamedMaps} of ${this.mapCount} map() calls have no explicit id \u2014 positional ids renumber on insert; pass { id } (
|
|
18086
|
+
message: `${this.unnamedMaps} of ${this.mapCount} map() calls have no explicit id \u2014 positional ids renumber on insert; pass { id } to every map() to keep step ids stable`
|
|
17853
18087
|
});
|
|
17854
18088
|
}
|
|
17855
18089
|
if (graphHasHitl(graph, this.steps) && this.config.budget?.maxDurationSeconds === void 0) {
|
|
@@ -22601,8 +22835,20 @@ var init_agents_api_service = __esm({
|
|
|
22601
22835
|
if (!result.data) {
|
|
22602
22836
|
throw new Error("Agent invocation failed: empty response");
|
|
22603
22837
|
}
|
|
22604
|
-
if (typeof promptOrInput === "string") return result.data.text ?? "";
|
|
22605
22838
|
const data = result.data;
|
|
22839
|
+
if (data?.type === "error") {
|
|
22840
|
+
if (isPaymentRequiredChatErrorEnvelope(data)) {
|
|
22841
|
+
throw Object.assign(new Error(data.error || "Payment required"), {
|
|
22842
|
+
name: "AgentInvocationError",
|
|
22843
|
+
code: "PAYMENT_REQUIRED",
|
|
22844
|
+
statusCode: 402
|
|
22845
|
+
});
|
|
22846
|
+
}
|
|
22847
|
+
throw Object.assign(new Error(data.error || "Agent invocation failed"), {
|
|
22848
|
+
name: "AgentInvocationError",
|
|
22849
|
+
code: "AGENT_ERROR"
|
|
22850
|
+
});
|
|
22851
|
+
}
|
|
22606
22852
|
if (data?.type === "preprocessor_blocked") {
|
|
22607
22853
|
throw Object.assign(new Error(data.text || "Agent invocation blocked by preprocessor"), {
|
|
22608
22854
|
name: "AgentInvocationError",
|
|
@@ -22617,6 +22863,7 @@ var init_agents_api_service = __esm({
|
|
|
22617
22863
|
stage: data.governanceBlock?.stage
|
|
22618
22864
|
});
|
|
22619
22865
|
}
|
|
22866
|
+
if (typeof promptOrInput === "string") return data.text ?? "";
|
|
22620
22867
|
return toInvocationOutput(data, input.threadId);
|
|
22621
22868
|
}
|
|
22622
22869
|
/**
|
|
@@ -22637,7 +22884,8 @@ var init_agents_api_service = __esm({
|
|
|
22637
22884
|
code
|
|
22638
22885
|
});
|
|
22639
22886
|
}, "refuse");
|
|
22640
|
-
if (op === "versions.promote" ||
|
|
22887
|
+
if (op === "versions.promote" || // WD — a watchdog rollback changes what a live agent serves, like a promote.
|
|
22888
|
+
op === "versions.rollback" || op === "persona.activate" || op === "versions.delete" || op === "workflows.create" || op === "workflows.push" || op === "workflows.deploy") {
|
|
22641
22889
|
refuse("supervision_release_offline_refused", `${op} is refused offline: a local test never changes a live agent`);
|
|
22642
22890
|
}
|
|
22643
22891
|
if (op === "versions.preview" || op === "agents.list" || op === "agents.get" || op === "source.get" || // U25 — a subscription is live platform state (it starts a deployed trigger): never from a local test.
|
|
@@ -22805,6 +23053,8 @@ var init_agents_api_service = __esm({
|
|
|
22805
23053
|
case "evals.cancel":
|
|
22806
23054
|
case "owner.notify":
|
|
22807
23055
|
case "connections.assign":
|
|
23056
|
+
// SV (LUA-1080) — the live pointers are not exposed on a developer route: platform only.
|
|
23057
|
+
case "primitives.deployed":
|
|
22808
23058
|
return refuse("supervision_offline_unsupported", `${op} is not available offline; run it on the platform`);
|
|
22809
23059
|
default:
|
|
22810
23060
|
return refuse("supervision_unknown_op", `Unknown supervision operation ${String(op)}`);
|
|
@@ -23472,9 +23722,22 @@ function createWorkflowsRuntime(getApi) {
|
|
|
23472
23722
|
},
|
|
23473
23723
|
async list(opts = {}) {
|
|
23474
23724
|
const api = await getApi();
|
|
23475
|
-
|
|
23725
|
+
let workflowId;
|
|
23726
|
+
if (opts.workflow) {
|
|
23727
|
+
const v = opts.workflow.trim();
|
|
23728
|
+
const defs = await api.getWorkflows({
|
|
23729
|
+
includeDynamic: true
|
|
23730
|
+
});
|
|
23731
|
+
const hit = defs.success && defs.data ? defs.data.workflows.find((w) => w.name === v) ?? defs.data.workflows.find((w) => w.id === v) : void 0;
|
|
23732
|
+
if (hit) workflowId = hit.id;
|
|
23733
|
+
else if (isWorkflowIdShaped(v)) workflowId = v;
|
|
23734
|
+
else {
|
|
23735
|
+
unwrap(defs, "Workflows.list");
|
|
23736
|
+
return [];
|
|
23737
|
+
}
|
|
23738
|
+
}
|
|
23476
23739
|
const page = unwrap(await api.getRuns({
|
|
23477
|
-
workflowId
|
|
23740
|
+
workflowId,
|
|
23478
23741
|
status: opts.status,
|
|
23479
23742
|
limit: opts.limit,
|
|
23480
23743
|
correlationKey: opts.correlationKey,
|
|
@@ -23512,7 +23775,10 @@ function createWorkflowsRuntime(getApi) {
|
|
|
23512
23775
|
...opts
|
|
23513
23776
|
}), "Workflows.signalByKey");
|
|
23514
23777
|
},
|
|
23515
|
-
raiseBudget
|
|
23778
|
+
async raiseBudget(runId, patch) {
|
|
23779
|
+
const api = await getApi();
|
|
23780
|
+
return unwrap(await api.raiseBudget(runId, patch), "Workflows.raiseBudget");
|
|
23781
|
+
},
|
|
23516
23782
|
// Goals are scoped to the bound agent: the IF-21 `agentId` argument is parity with the HTTP twin
|
|
23517
23783
|
// (`/workflows/:agentId/goals`), never a way to reach another agent's goals (403 otherwise).
|
|
23518
23784
|
async setGoal(agentId, goal) {
|
|
@@ -23555,7 +23821,7 @@ function createWorkflowsRuntime(getApi) {
|
|
|
23555
23821
|
}
|
|
23556
23822
|
};
|
|
23557
23823
|
}
|
|
23558
|
-
var WORKFLOW_START_MAX_WAIT_SECONDS, WORKFLOW_START_CLIENT_DEADLINE_SLACK_MS, WorkflowApiError, unwrap, assertBoundAgent, pathId,
|
|
23824
|
+
var WORKFLOW_START_MAX_WAIT_SECONDS, WORKFLOW_START_CLIENT_DEADLINE_SLACK_MS, WorkflowApiError, unwrap, isWorkflowIdShaped, assertBoundAgent, pathId, WorkflowApi;
|
|
23559
23825
|
var init_workflow_api_service = __esm({
|
|
23560
23826
|
"src/api/workflow.api.service.ts"() {
|
|
23561
23827
|
"use strict";
|
|
@@ -23587,15 +23853,13 @@ var init_workflow_api_service = __esm({
|
|
|
23587
23853
|
}
|
|
23588
23854
|
return res.data;
|
|
23589
23855
|
}, "unwrap");
|
|
23856
|
+
isWorkflowIdShaped = /* @__PURE__ */ __name((v) => /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(v) || /^wfc?_[A-Za-z0-9]/.test(v), "isWorkflowIdShaped");
|
|
23590
23857
|
assertBoundAgent = /* @__PURE__ */ __name((api, agentId, member) => {
|
|
23591
23858
|
if (agentId && agentId !== api.agentId) {
|
|
23592
23859
|
throw new WorkflowApiError("FORBIDDEN", `Workflows.${member}: goals are scoped to the bound agent ${api.agentId}`, 403);
|
|
23593
23860
|
}
|
|
23594
23861
|
}, "assertBoundAgent");
|
|
23595
23862
|
pathId = /* @__PURE__ */ __name((id2) => encodeURIComponent(id2), "pathId");
|
|
23596
|
-
unavailable = /* @__PURE__ */ __name((member, route2) => async () => {
|
|
23597
|
-
throw new WorkflowApiError("WORKFLOWS_API_UNAVAILABLE", `Workflows.${member} is not available in this runtime yet (${route2} lands with a later wave)`, 501);
|
|
23598
|
-
}, "unavailable");
|
|
23599
23863
|
__name(createWorkflowsRuntime, "createWorkflowsRuntime");
|
|
23600
23864
|
WorkflowApi = class extends HttpClient {
|
|
23601
23865
|
static {
|
|
@@ -24035,20 +24299,35 @@ var init_device_api_service = __esm({
|
|
|
24035
24299
|
return this.httpDelete(`/developer/devices/${this.agentId}/${deviceId}`, {});
|
|
24036
24300
|
}
|
|
24037
24301
|
async sendCommand(deviceName, command, payload, timeout) {
|
|
24038
|
-
return this.httpPost(`/developer/devices/${this.agentId}/${deviceName}/command`, {
|
|
24302
|
+
return this.httpPost(`/developer/devices/${this.agentId}/${encodeURIComponent(deviceName)}/command`, {
|
|
24039
24303
|
command,
|
|
24040
24304
|
payload,
|
|
24041
24305
|
timeout: timeout || 3e4
|
|
24042
24306
|
}, {});
|
|
24043
24307
|
}
|
|
24044
24308
|
async getDeviceStatus(deviceName) {
|
|
24045
|
-
return this.httpGet(`/developer/devices/${this.agentId}/${deviceName}/status`, {});
|
|
24309
|
+
return this.httpGet(`/developer/devices/${this.agentId}/${encodeURIComponent(deviceName)}/status`, {});
|
|
24046
24310
|
}
|
|
24047
24311
|
async enableDevice(deviceName) {
|
|
24048
|
-
return this.httpPatch(`/developer/devices/${this.agentId}/${deviceName}/enable`, {}, {});
|
|
24312
|
+
return this.httpPatch(`/developer/devices/${this.agentId}/${encodeURIComponent(deviceName)}/enable`, {}, {});
|
|
24049
24313
|
}
|
|
24050
24314
|
async disableDevice(deviceName) {
|
|
24051
|
-
return this.httpPatch(`/developer/devices/${this.agentId}/${deviceName}/disable`, {}, {});
|
|
24315
|
+
return this.httpPatch(`/developer/devices/${this.agentId}/${encodeURIComponent(deviceName)}/disable`, {}, {});
|
|
24316
|
+
}
|
|
24317
|
+
/** Device instances the agent has seen, with live status; self-describing devices only appear here. */
|
|
24318
|
+
async getConnectedDevices() {
|
|
24319
|
+
return this.httpGet(`/developer/devices/${this.agentId}/connected`, {});
|
|
24320
|
+
}
|
|
24321
|
+
/** Fire a trigger as the named device would; the live handler runs. */
|
|
24322
|
+
async fireTrigger(deviceName, triggerName, payload) {
|
|
24323
|
+
return this.httpPost(`/developer/devices/${this.agentId}/${encodeURIComponent(deviceName)}/trigger`, {
|
|
24324
|
+
triggerName,
|
|
24325
|
+
payload
|
|
24326
|
+
}, {});
|
|
24327
|
+
}
|
|
24328
|
+
/** Remove a connected device's instance record (not its definition). */
|
|
24329
|
+
async deleteDeviceInstance(deviceName) {
|
|
24330
|
+
return this.httpDelete(`/developer/devices/${this.agentId}/${encodeURIComponent(deviceName)}/instance`, {});
|
|
24052
24331
|
}
|
|
24053
24332
|
};
|
|
24054
24333
|
}
|
|
@@ -24424,6 +24703,14 @@ function requireExpectActiveId(opts, what) {
|
|
|
24424
24703
|
}
|
|
24425
24704
|
__name(requireExpectActiveId, "requireExpectActiveId");
|
|
24426
24705
|
__name2(requireExpectActiveId, "requireExpectActiveId");
|
|
24706
|
+
function optionalCommitHash(opts, what) {
|
|
24707
|
+
const commitHash = opts?.commitHash;
|
|
24708
|
+
if (commitHash === void 0) return void 0;
|
|
24709
|
+
if (typeof commitHash === "string" && commitHash.length > 0) return commitHash;
|
|
24710
|
+
throw typedError("supervision_bad_args", `${what} commitHash must be a non-empty string`);
|
|
24711
|
+
}
|
|
24712
|
+
__name(optionalCommitHash, "optionalCommitHash");
|
|
24713
|
+
__name2(optionalCommitHash, "optionalCommitHash");
|
|
24427
24714
|
function approvalIdsOf(approval) {
|
|
24428
24715
|
if (approval === void 0 || approval === null) return void 0;
|
|
24429
24716
|
if (typeof approval !== "object" || Array.isArray(approval)) return {
|
|
@@ -24502,6 +24789,20 @@ function buildSupervisionAgentsApi(call2) {
|
|
|
24502
24789
|
delete: /* @__PURE__ */ __name2((version) => call2("versions.delete", agentId, {
|
|
24503
24790
|
version
|
|
24504
24791
|
}), "delete"),
|
|
24792
|
+
/**
|
|
24793
|
+
* WD — restore a previously-active, OLDER `version` (watchdog grant; last 7 days; only from a workflow step the
|
|
24794
|
+
* grant names). Compare-and-swap: `expectActive` is the active version number now (required, never null).
|
|
24795
|
+
*/
|
|
24796
|
+
rollback: /* @__PURE__ */ __name2(async (version, opts) => {
|
|
24797
|
+
const expectActive = requireExpectActive(opts, "versions.rollback");
|
|
24798
|
+
if (expectActive === null) {
|
|
24799
|
+
throw typedError("supervision_expect_active_required", "versions.rollback requires { expectActive } \u2014 the active version number (a rollback needs one)");
|
|
24800
|
+
}
|
|
24801
|
+
return call2("versions.rollback", agentId, {
|
|
24802
|
+
version,
|
|
24803
|
+
expectActive
|
|
24804
|
+
});
|
|
24805
|
+
}, "rollback"),
|
|
24505
24806
|
// wave 2 U11
|
|
24506
24807
|
/**
|
|
24507
24808
|
* U11 (DOC2 §6.1) — open a TEST SESSION on staged `opts.version`: multi-turn `chat`, `fire`, `effects()` and
|
|
@@ -24539,11 +24840,18 @@ function buildSupervisionAgentsApi(call2) {
|
|
|
24539
24840
|
}
|
|
24540
24841
|
}), "push"),
|
|
24541
24842
|
/** Publish workflow `version`. Compare-and-swap: refused unless `expectActive` is the live version id. */
|
|
24542
|
-
deploy: /* @__PURE__ */ __name2(async (workflowId, version, opts) =>
|
|
24543
|
-
|
|
24544
|
-
|
|
24545
|
-
|
|
24546
|
-
|
|
24843
|
+
deploy: /* @__PURE__ */ __name2(async (workflowId, version, opts) => {
|
|
24844
|
+
const expectActive = requireExpectActiveId(opts, "workflows.deploy");
|
|
24845
|
+
const commitHash = optionalCommitHash(opts, "workflows.deploy");
|
|
24846
|
+
return call2("workflows.deploy", agentId, {
|
|
24847
|
+
workflowId,
|
|
24848
|
+
version,
|
|
24849
|
+
expectActive,
|
|
24850
|
+
...commitHash !== void 0 ? {
|
|
24851
|
+
commitHash
|
|
24852
|
+
} : {}
|
|
24853
|
+
});
|
|
24854
|
+
}, "deploy")
|
|
24547
24855
|
}), "workflows"),
|
|
24548
24856
|
persona: /* @__PURE__ */ __name2((agentId) => ({
|
|
24549
24857
|
versions: /* @__PURE__ */ __name2(() => call2("persona.versions", agentId), "versions"),
|
|
@@ -24564,6 +24872,12 @@ function buildSupervisionAgentsApi(call2) {
|
|
|
24564
24872
|
keys: /* @__PURE__ */ __name2(() => call2("env.keys", agentId), "keys")
|
|
24565
24873
|
}), "env"),
|
|
24566
24874
|
/**
|
|
24875
|
+
* SV (LUA-1080) — what `agentId` serves RIGHT NOW: its live skills (with tools), the published persona and its
|
|
24876
|
+
* pre/postprocessors, each with the version id an agent version snapshot would pin. Works with no promoted agent
|
|
24877
|
+
* version, so a release can diff live against a staged version. Metadata and hashes only (`observe`).
|
|
24878
|
+
*/
|
|
24879
|
+
deployed: /* @__PURE__ */ __name2((agentId) => call2("primitives.deployed", agentId), "deployed"),
|
|
24880
|
+
/**
|
|
24567
24881
|
* U25 — supervision events of the target (`observe`): each event of a subscribed kind starts
|
|
24568
24882
|
* one of the CALLER's own triggers (`triggerName`) with a `source: 'supervision'` body.
|
|
24569
24883
|
*/
|
|
@@ -25788,20 +26102,20 @@ init_order_instance();
|
|
|
25788
26102
|
|
|
25789
26103
|
// src/api/threads.offline.ts
|
|
25790
26104
|
init_dist();
|
|
25791
|
-
function
|
|
26105
|
+
function unavailable(member) {
|
|
25792
26106
|
return Object.assign(new Error(`Threads.${member} only runs on the Lua platform (deployed or sandbox agents), not in lua test / lua dev`), {
|
|
25793
26107
|
name: "ThreadFollowUpError",
|
|
25794
26108
|
code: THREAD_FOLLOW_UP_ERRORS.UNAVAILABLE
|
|
25795
26109
|
});
|
|
25796
26110
|
}
|
|
25797
|
-
__name(
|
|
26111
|
+
__name(unavailable, "unavailable");
|
|
25798
26112
|
function createOfflineThreadsApi() {
|
|
25799
26113
|
return {
|
|
25800
26114
|
open: /* @__PURE__ */ __name(async () => {
|
|
25801
|
-
throw
|
|
26115
|
+
throw unavailable("open");
|
|
25802
26116
|
}, "open"),
|
|
25803
26117
|
followUp: /* @__PURE__ */ __name(async () => {
|
|
25804
|
-
throw
|
|
26118
|
+
throw unavailable("followUp");
|
|
25805
26119
|
}, "followUp")
|
|
25806
26120
|
};
|
|
25807
26121
|
}
|