lua-cli 3.49.1 → 3.49.2

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
@@ -950,6 +950,17 @@ function aiGenerateInputFromSimplified(prompt, content) {
950
950
  ]
951
951
  };
952
952
  }
953
+ function directProviderOfOpenRouterModel(model) {
954
+ return OPENROUTER_DIRECT_VENDORS.find((vendor) => vendor.pattern.test(model))?.provider;
955
+ }
956
+ function openRouterModelIssue(options) {
957
+ const model = typeof options.model === "string" && options.model ? options.model : void 0;
958
+ if (options.provider === "openrouter" && !model) return OPENROUTER_NEEDS_MODEL_MESSAGE;
959
+ if (!model || !model.includes("/")) return null;
960
+ const direct = directProviderOfOpenRouterModel(model);
961
+ if (!direct) return null;
962
+ return `model ${model} runs on provider '${direct}': set provider '${direct}' instead of a vendor/model id`;
963
+ }
953
964
  function formatDecisionSandboxPrimitive(name, tool) {
954
965
  return tool ? `${name}${DECISION_SANDBOX_TOOL_SEPARATOR}${tool}` : name;
955
966
  }
@@ -4711,6 +4722,10 @@ function browserLogContextOfWorkerContext(context) {
4711
4722
  if (context?.primitiveId) out.primitiveId = context.primitiveId;
4712
4723
  if (context?.primitiveName) out.primitiveName = context.primitiveName;
4713
4724
  if (context?.channel) out.channel = context.channel;
4725
+ if (context?.environment && AGENT_LOG_ENVIRONMENTS.includes(context.environment)) {
4726
+ out.environment = context.environment;
4727
+ }
4728
+ if (context?.agentVersion) out.agentVersion = context.agentVersion;
4714
4729
  return out;
4715
4730
  }
4716
4731
  function browserLogEventOfWorkerEvent(event, mapping = {}) {
@@ -7514,7 +7529,7 @@ function maskMcpServerHeaders(server) {
7514
7529
  headersSet: headerNames.length > 0
7515
7530
  };
7516
7531
  }
7517
- var __defProp3, __name3, PLUMBING_THREAD_CHANNELS, CHANNEL_CONVERSATION_CHANNELS, HIDDEN_THREAD_CHANNELS, CHOICE_PERSON_TURN_CHANNELS, CHOICE_REPLAY_CLIENT_CAPABILITIES, CHOICE_REPLAY_CLIENT_SURFACES, DECISION_PROVIDERS, DECISION_QUESTION_TYPES, DECISION_NAME_PATTERN, DECISION_SANDBOX_SITE_HEADER, DECISION_SANDBOX_PRIMITIVE_HEADER, DECISION_SANDBOX_TOOL_SEPARATOR, DECISION_LIMITS, DECISION_ERROR_CODES, DECISION_INACTIVE_CODE, MAX_NAME_CHARS, InstructionsSchema, NameSchema, OddsQuestionSchema, ChoiceQuestionSchema, ScoreQuestionSchema, DecisionQuestionSchema, DecisionOptionsSchema, DecisionQuestionsSchema, DecisionDefinitionSchema, 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, MESSAGING_CHANNELS, VOICE_CHANNELS, TURN_CATEGORIES, AGENT_TOOL_CATEGORIES, count, AnthropicSseUsageReader, 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, 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, WORK_ITEMS_KEY, MAX_WORK_ITEMS, LIMITS, BROWSER_COMMANDS, BROWSER_COMMAND_NAMES, SERVER_TRIGGERED_BROWSER_SOURCES, BROWSER_FALLBACKS, DEFAULT_BROWSER_FALLBACK, PROXY_COUNTRY_CODE, BROWSER_LOG_CONTENT_MODES, DEFAULT_BROWSER_LOG_CONTENT, BROWSER_SCREENSHOT_POLICIES, DEFAULT_BROWSER_SCREENSHOT_POLICY, BROWSER_ENGINES, BROWSER_PROFILE_NAME_PATTERN, BROWSER_LIMIT_KEYS, BROWSER_LIMIT_MAX, BROWSER_EXECUTE_METHOD, BROWSER_GLOBAL_METHODS, BROWSER_EXECUTE_DEFAULT_TIMEOUT_MS, BROWSER_EXECUTE_MAX_TIMEOUT_MS, 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, BROWSER_READ_FORMATS, BROWSER_READ_DEFAULT_TIMEOUT_MS, BROWSER_READ_MIN_TIMEOUT_MS, BROWSER_READ_MAX_TIMEOUT_MS, BROWSER_READ_MAX_CONTENT_CHARS, BROWSER_READ_DEFAULT_SELECTOR, BROWSER_READ_MATCH_SEPARATOR, BROWSER_READ_LOGIN_BLOCKER, BROWSER_ERROR_NAME, HTTP_STATUS_FAILURE, LOGIN_PATH_SEGMENTS, LOGIN_HOST_LABELS, AGENT_LOG_SOURCES, AGENT_LOG_ENVIRONMENTS, AGENT_LOG_FIELDS_MAX_WIRE_KEYS, BROWSER_LOG_EVENT_KINDS, BROWSER_LOG_ENGINES, BROWSER_SESSION_OPEN_REASONS, BROWSER_BLOCK_KINDS, BROWSER_WALL_KINDS, BROWSER_WALL_NEXT_ACTIONS, BROWSER_CONFIRM_DECISIONS, BROWSER_SESSION_CLOSE_REASONS, BROWSER_LOG_CONTEXT_KEYS, BROWSER_LOG_ID_MAX_CHARS, BROWSER_LOG_TEXT_MAX_CHARS, isString, isBoolean, isCount, isPlainObject2, oneOf, isLimits, EVENT_SHAPES, BASE_KEYS, BROWSER_WORKER_SESSION_ID_SEPARATOR, BROWSER_WORKER_BLOCK_REASON_MAX_CHARS, 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_AGENT_EFFORTS, WORKFLOW_MODEL_CLASSES, WORKFLOW_TASK_CLASSES, WORKFLOW_MODEL_TRAITS, WORKFLOW_MODEL_REASON_MAX_LENGTH, WORKFLOW_MODELS_COMPOSE_MODES, WORKFLOW_MODELS_PIN_MODES, WORKFLOW_MODELS_FALLBACK_MODES, WORKFLOW_MODELS_CONSENT_ACTIONS_MIN, WORKFLOW_DEFAULT_TASK_CLASS_MAP, WORKFLOW_MODELS_MAX_CLASS_DEFAULT, WORKFLOW_AUTONOMY_FORMS, WORKFLOW_AUTONOMY_NUMERIC_KEYS, WORKFLOW_AUTONOMY_ENVELOPE_KEYS, WORKFLOW_AUTONOMY_ENABLED_DEFAULT, 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, LOG_DRAIN_TYPES_PHASE1, LOG_DRAIN_TYPES_PHASE2, LOG_DRAIN_TYPES_IMPLEMENTED, LOG_DRAIN_FORMATS, LOG_DRAIN_SEVERITIES, LOG_DRAIN_SOURCES, LOG_DRAIN_CONTENT_SOURCES, LOG_DRAIN_DEFAULT_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, EventType, 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, TYPED_API_KEY, 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_JOURNAL_PROTOCOL_VERSION, 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_WALL_MS, WEB_ROUTE_MAX_REQUEST_BODY_BYTES, WEB_ROUTE_MAX_RESPONSE_BYTES, WEB_APP_NAME_PATTERN, WEB_APP_ENTRY_HTML_MAX_CHARS, WEB_APP_MAX_ASSETS, WEB_APP_ASSET_PATH_PATTERN, WEB_APP_ASSET_PATH_MAX_CHARS, WEB_APP_MAX_ROUTES, WEB_APP_MAX_ASSET_BYTES, WEB_APP_CSP_NONCE_PLACEHOLDER, 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, CUSTOM_MCP_CONNECTION_ID_PREFIX, CUSTOM_MCP_SOURCE, CUSTOM_MCP_TRANSPORT, CUSTOM_MCP_CONNECTION_ID_PATTERN, customMcpConnectionIdSchema, CONNECTION_BACKED_MCP_SOURCES, CUSTOM_MCP_REFERENCE_ID_PATTERN, customMcpReferenceIdSchema, CUSTOM_MCP_AUTH_KINDS, customMcpAuthKindSchema, CUSTOM_MCP_OAUTH_REGISTRATIONS, customMcpOAuthRegistrationSchema, CUSTOM_MCP_HEALTH_STATES, customMcpHealthStateSchema, CUSTOM_MCP_FAILURE_STEPS, customMcpFailureStepSchema, CUSTOM_MCP_CONNECT_STEPS, customMcpConnectStepSchema, customMcpFailureCodeSchema, WORKFLOW_KEY_MAX_LENGTH, CUSTOM_MCP_URL_MAX_LENGTH, CUSTOM_MCP_DISPLAY_NAME_MAX_LENGTH, CUSTOM_MCP_MAX_HEADERS, CUSTOM_MCP_HEADER_NAME_MAX_LENGTH, CUSTOM_MCP_HEADER_VALUE_MAX_LENGTH, CUSTOM_MCP_MAX_TOOLS, CUSTOM_MCP_TOOL_NAME_MAX_LENGTH, CUSTOM_MCP_TOOL_TEXT_MAX_LENGTH, CUSTOM_MCP_MIN_TIMEOUT_MS, CUSTOM_MCP_MAX_TIMEOUT_MS, CUSTOM_MCP_OAUTH_PENDING_TTL_MS, isoDateTime, agentId, nonNegativeInt, customMcpUrlInputSchema, customMcpDisplayNameSchema, customMcpTimeoutSchema, CUSTOM_MCP_RESERVED_HEADER_NAMES, HEADER_NAME, HEADER_VALUE_FORBIDDEN, customMcpHeaderNameSchema, headerValue, customMcpHeadersSchema, customMcpHeadersPatchSchema, customMcpToolNameSchema, customMcpToolSchema, customMcpServerInfoSchema, customMcpToolSelectionSchema, customMcpToolsResponseSchema, customMcpFailureSchema, customMcpHealthSchema, customMcpErrorBodySchema, customMcpConnectionBlockSchema, customMcpConnectionViewSchema, customMcpConnectionResponseSchema, customMcpProbeBodySchema, customMcpOAuthDiscoverySchema, customMcpProbeResponseSchema, createFields, mountAgentField, customMcpCreateAgentBodySchema, customMcpCreateUserBodySchema, customMcpOAuthClientSchema, startFields, customMcpOAuthStartAgentBodySchema, customMcpOAuthStartUserBodySchema, customMcpOAuthStartResponseSchema, nonce, customMcpOAuthSuccessRedirectQuerySchema, CUSTOM_MCP_OAUTH_CALLBACK_ERRORS, customMcpOAuthFailureRedirectQuerySchema, customMcpOAuthFinalizeBodySchema, customMcpCimdDocumentSchema, customMcpPatchBodySchema, customMcpCredentialRequestSchema, customMcpCredentialAuthSchema, customMcpCredentialResponseSchema, CUSTOM_MCP_CREDENTIAL_ERRORS, customMcpCredentialErrorBodySchema, customMcpHealthReportSchema, customMcpProbeRequestSchema, customMcpProbeResultSchema, customMcpOriginUrlSchema, customMcpServerProjectionSchema, customMcpMountUpsertBodySchema;
7532
+ var __defProp3, __name3, PLUMBING_THREAD_CHANNELS, CHANNEL_CONVERSATION_CHANNELS, HIDDEN_THREAD_CHANNELS, CHOICE_PERSON_TURN_CHANNELS, CHOICE_REPLAY_CLIENT_CAPABILITIES, CHOICE_REPLAY_CLIENT_SURFACES, DECISION_PROVIDERS, DECISION_FALLBACK_PROVIDERS, OPENROUTER_DIRECT_VENDORS, OPENROUTER_NEEDS_MODEL_MESSAGE, DECISION_QUESTION_TYPES, DECISION_NAME_PATTERN, DECISION_SANDBOX_SITE_HEADER, DECISION_SANDBOX_PRIMITIVE_HEADER, DECISION_SANDBOX_TOOL_SEPARATOR, DECISION_LIMITS, DECISION_ERROR_CODES, DECISION_INACTIVE_CODE, MAX_NAME_CHARS, InstructionsSchema, NameSchema, OddsQuestionSchema, ChoiceQuestionSchema, ScoreQuestionSchema, DecisionQuestionSchema, DecisionOptionsSchema, DecisionQuestionsSchema, DecisionDefinitionSchema, DecisionDefinitionWriteSchema, 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, MESSAGING_CHANNELS, VOICE_CHANNELS, TURN_CATEGORIES, AGENT_TOOL_CATEGORIES, count, AnthropicSseUsageReader, 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, 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, WORK_ITEMS_KEY, MAX_WORK_ITEMS, LIMITS, BROWSER_COMMANDS, BROWSER_COMMAND_NAMES, SERVER_TRIGGERED_BROWSER_SOURCES, BROWSER_FALLBACKS, DEFAULT_BROWSER_FALLBACK, PROXY_COUNTRY_CODE, BROWSER_LOG_CONTENT_MODES, DEFAULT_BROWSER_LOG_CONTENT, BROWSER_SCREENSHOT_POLICIES, DEFAULT_BROWSER_SCREENSHOT_POLICY, BROWSER_ENGINES, BROWSER_PROFILE_NAME_PATTERN, BROWSER_LIMIT_KEYS, BROWSER_LIMIT_MAX, BROWSER_EXECUTE_METHOD, BROWSER_GLOBAL_METHODS, BROWSER_EXECUTE_DEFAULT_TIMEOUT_MS, BROWSER_EXECUTE_MAX_TIMEOUT_MS, 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, BROWSER_READ_FORMATS, BROWSER_READ_DEFAULT_TIMEOUT_MS, BROWSER_READ_MIN_TIMEOUT_MS, BROWSER_READ_MAX_TIMEOUT_MS, BROWSER_READ_MAX_CONTENT_CHARS, BROWSER_READ_DEFAULT_SELECTOR, BROWSER_READ_MATCH_SEPARATOR, BROWSER_READ_LOGIN_BLOCKER, BROWSER_ERROR_NAME, HTTP_STATUS_FAILURE, LOGIN_PATH_SEGMENTS, LOGIN_HOST_LABELS, AGENT_LOG_SOURCES, AGENT_LOG_ENVIRONMENTS, AGENT_LOG_FIELDS_MAX_WIRE_KEYS, BROWSER_LOG_EVENT_KINDS, BROWSER_LOG_ENGINES, BROWSER_SESSION_OPEN_REASONS, BROWSER_BLOCK_KINDS, BROWSER_WALL_KINDS, BROWSER_WALL_NEXT_ACTIONS, BROWSER_CONFIRM_DECISIONS, BROWSER_SESSION_CLOSE_REASONS, BROWSER_LOG_CONTEXT_KEYS, BROWSER_LOG_ID_MAX_CHARS, BROWSER_LOG_TEXT_MAX_CHARS, isString, isBoolean, isCount, isPlainObject2, oneOf, isLimits, EVENT_SHAPES, BASE_KEYS, BROWSER_WORKER_SESSION_ID_SEPARATOR, BROWSER_WORKER_BLOCK_REASON_MAX_CHARS, 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_AGENT_EFFORTS, WORKFLOW_MODEL_CLASSES, WORKFLOW_TASK_CLASSES, WORKFLOW_MODEL_TRAITS, WORKFLOW_MODEL_REASON_MAX_LENGTH, WORKFLOW_MODELS_COMPOSE_MODES, WORKFLOW_MODELS_PIN_MODES, WORKFLOW_MODELS_FALLBACK_MODES, WORKFLOW_MODELS_CONSENT_ACTIONS_MIN, WORKFLOW_DEFAULT_TASK_CLASS_MAP, WORKFLOW_MODELS_MAX_CLASS_DEFAULT, WORKFLOW_AUTONOMY_FORMS, WORKFLOW_AUTONOMY_NUMERIC_KEYS, WORKFLOW_AUTONOMY_ENVELOPE_KEYS, WORKFLOW_AUTONOMY_ENABLED_DEFAULT, 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, LOG_DRAIN_TYPES_PHASE1, LOG_DRAIN_TYPES_PHASE2, LOG_DRAIN_TYPES_IMPLEMENTED, LOG_DRAIN_FORMATS, LOG_DRAIN_SEVERITIES, LOG_DRAIN_SOURCES, LOG_DRAIN_CONTENT_SOURCES, LOG_DRAIN_DEFAULT_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, EventType, 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, TYPED_API_KEY, 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_JOURNAL_PROTOCOL_VERSION, 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_WALL_MS, WEB_ROUTE_MAX_REQUEST_BODY_BYTES, WEB_ROUTE_MAX_RESPONSE_BYTES, WEB_APP_NAME_PATTERN, WEB_APP_ENTRY_HTML_MAX_CHARS, WEB_APP_MAX_ASSETS, WEB_APP_ASSET_PATH_PATTERN, WEB_APP_ASSET_PATH_MAX_CHARS, WEB_APP_MAX_ROUTES, WEB_APP_MAX_ASSET_BYTES, WEB_APP_CSP_NONCE_PLACEHOLDER, 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, CUSTOM_MCP_CONNECTION_ID_PREFIX, CUSTOM_MCP_SOURCE, CUSTOM_MCP_TRANSPORT, CUSTOM_MCP_CONNECTION_ID_PATTERN, customMcpConnectionIdSchema, CONNECTION_BACKED_MCP_SOURCES, CUSTOM_MCP_REFERENCE_ID_PATTERN, customMcpReferenceIdSchema, CUSTOM_MCP_AUTH_KINDS, customMcpAuthKindSchema, CUSTOM_MCP_OAUTH_REGISTRATIONS, customMcpOAuthRegistrationSchema, CUSTOM_MCP_HEALTH_STATES, customMcpHealthStateSchema, CUSTOM_MCP_FAILURE_STEPS, customMcpFailureStepSchema, CUSTOM_MCP_CONNECT_STEPS, customMcpConnectStepSchema, customMcpFailureCodeSchema, WORKFLOW_KEY_MAX_LENGTH, CUSTOM_MCP_URL_MAX_LENGTH, CUSTOM_MCP_DISPLAY_NAME_MAX_LENGTH, CUSTOM_MCP_MAX_HEADERS, CUSTOM_MCP_HEADER_NAME_MAX_LENGTH, CUSTOM_MCP_HEADER_VALUE_MAX_LENGTH, CUSTOM_MCP_MAX_TOOLS, CUSTOM_MCP_TOOL_NAME_MAX_LENGTH, CUSTOM_MCP_TOOL_TEXT_MAX_LENGTH, CUSTOM_MCP_MIN_TIMEOUT_MS, CUSTOM_MCP_MAX_TIMEOUT_MS, CUSTOM_MCP_OAUTH_PENDING_TTL_MS, isoDateTime, agentId, nonNegativeInt, customMcpUrlInputSchema, customMcpDisplayNameSchema, customMcpTimeoutSchema, CUSTOM_MCP_RESERVED_HEADER_NAMES, HEADER_NAME, HEADER_VALUE_FORBIDDEN, customMcpHeaderNameSchema, headerValue, customMcpHeadersSchema, customMcpHeadersPatchSchema, customMcpToolNameSchema, customMcpToolSchema, customMcpServerInfoSchema, customMcpToolSelectionSchema, customMcpToolsResponseSchema, customMcpFailureSchema, customMcpHealthSchema, customMcpErrorBodySchema, customMcpConnectionBlockSchema, customMcpConnectionViewSchema, customMcpConnectionResponseSchema, customMcpProbeBodySchema, customMcpOAuthDiscoverySchema, customMcpProbeResponseSchema, createFields, mountAgentField, customMcpCreateAgentBodySchema, customMcpCreateUserBodySchema, customMcpOAuthClientSchema, startFields, customMcpOAuthStartAgentBodySchema, customMcpOAuthStartUserBodySchema, customMcpOAuthStartResponseSchema, nonce, customMcpOAuthSuccessRedirectQuerySchema, CUSTOM_MCP_OAUTH_CALLBACK_ERRORS, customMcpOAuthFailureRedirectQuerySchema, customMcpOAuthFinalizeBodySchema, customMcpCimdDocumentSchema, customMcpPatchBodySchema, customMcpCredentialRequestSchema, customMcpCredentialAuthSchema, customMcpCredentialResponseSchema, CUSTOM_MCP_CREDENTIAL_ERRORS, customMcpCredentialErrorBodySchema, customMcpHealthReportSchema, customMcpProbeRequestSchema, customMcpProbeResultSchema, customMcpOriginUrlSchema, customMcpServerProjectionSchema, customMcpMountUpsertBodySchema;
7518
7533
  var init_dist = __esm({
7519
7534
  "../shared-types/dist/index.mjs"() {
7520
7535
  "use strict";
@@ -7587,9 +7602,29 @@ var init_dist = __esm({
7587
7602
  __name(aiGenerateInputFromSimplified, "aiGenerateInputFromSimplified");
7588
7603
  __name3(aiGenerateInputFromSimplified, "aiGenerateInputFromSimplified");
7589
7604
  DECISION_PROVIDERS = [
7605
+ "jev",
7606
+ "openai",
7607
+ "openrouter"
7608
+ ];
7609
+ DECISION_FALLBACK_PROVIDERS = [
7590
7610
  "jev",
7591
7611
  "openai"
7592
7612
  ];
7613
+ OPENROUTER_DIRECT_VENDORS = [
7614
+ {
7615
+ pattern: /^~?typesafe\//,
7616
+ provider: "jev"
7617
+ },
7618
+ {
7619
+ pattern: /^openai\//,
7620
+ provider: "openai"
7621
+ }
7622
+ ];
7623
+ __name(directProviderOfOpenRouterModel, "directProviderOfOpenRouterModel");
7624
+ __name3(directProviderOfOpenRouterModel, "directProviderOfOpenRouterModel");
7625
+ OPENROUTER_NEEDS_MODEL_MESSAGE = "provider openrouter needs a model id, such as liquid/d1";
7626
+ __name(openRouterModelIssue, "openRouterModelIssue");
7627
+ __name3(openRouterModelIssue, "openRouterModelIssue");
7593
7628
  DECISION_QUESTION_TYPES = [
7594
7629
  "odds",
7595
7630
  "choice",
@@ -7673,7 +7708,7 @@ var init_dist = __esm({
7673
7708
  ]).optional(),
7674
7709
  model: z.string().min(1).optional(),
7675
7710
  fallback: z.union([
7676
- z.enum(DECISION_PROVIDERS),
7711
+ z.enum(DECISION_FALLBACK_PROVIDERS),
7677
7712
  z.literal("none")
7678
7713
  ]).optional(),
7679
7714
  region: z.literal("eu").optional(),
@@ -7702,6 +7737,16 @@ var init_dist = __esm({
7702
7737
  description: z.string().max(DECISION_LIMITS.maxInstructionChars).optional(),
7703
7738
  questions: DecisionQuestionsSchema
7704
7739
  }).strict();
7740
+ DecisionDefinitionWriteSchema = DecisionDefinitionSchema.superRefine((definition, ctx) => {
7741
+ const issue = openRouterModelIssue(definition);
7742
+ if (issue) ctx.addIssue({
7743
+ code: z.ZodIssueCode.custom,
7744
+ path: [
7745
+ "model"
7746
+ ],
7747
+ message: issue
7748
+ });
7749
+ });
7705
7750
  INTEGRATION_PASSTHROUGH_READ_METHODS = [
7706
7751
  "GET",
7707
7752
  "HEAD"
@@ -10252,7 +10297,11 @@ var init_dist = __esm({
10252
10297
  "max-steps",
10253
10298
  "cost-cap",
10254
10299
  "error",
10255
- "reaped"
10300
+ "reaped",
10301
+ "cancelled",
10302
+ "confirmation",
10303
+ "blocked",
10304
+ "stopped"
10256
10305
  ];
10257
10306
  BROWSER_LOG_CONTEXT_KEYS = [
10258
10307
  "runId",
@@ -10280,7 +10329,8 @@ var init_dist = __esm({
10280
10329
  optional: {
10281
10330
  limits: isLimits,
10282
10331
  region: isString,
10283
- liveUrl: isString
10332
+ liveUrl: isString,
10333
+ browser: isString
10284
10334
  }
10285
10335
  },
10286
10336
  command: {
@@ -13597,6 +13647,12 @@ function joinHint(...parts) {
13597
13647
  const lines = parts.filter((part) => typeof part === "string" && part.length > 0);
13598
13648
  return lines.length > 0 ? lines.join("\n") : void 0;
13599
13649
  }
13650
+ function isLuaErrorBody(body) {
13651
+ return typeof body.message === "string" || typeof body.statusCode === "number" || typeof body.code === "string";
13652
+ }
13653
+ function isEdgeBlockedError(error) {
13654
+ return CliError.isCliError(error) && error.serverCode === EDGE_BLOCKED_CODE;
13655
+ }
13600
13656
  function isAccessDeniedError(error) {
13601
13657
  if (CliError.isCliError(error)) return error.statusCode === 403;
13602
13658
  return error instanceof Error && error.message.startsWith("Access denied (403)");
@@ -13868,7 +13924,7 @@ function reportUnhandledCliError(error) {
13868
13924
  process.exitCode = reported.exitCode;
13869
13925
  return reported.exitCode;
13870
13926
  }
13871
- var CLI_EXIT, CliError, HandledCliError, debugFlag, NETWORK_ERRNO, NETWORK_MESSAGE, UNAVAILABLE_HINT, VENDOR_RETRY_SOON_SECONDS, VENDOR_LABELS, PROVIDER_REJECTED_SERVER_CODE, PROVIDER_REJECTED_HTTP_STATUS, PROVIDER_REJECTION_REASONS, PROVIDER_REJECTED_NO_RETRY, PROVIDER_REJECTED_LUA_SIDE, MODEL_SETTINGS_URL, DECISION_STATUS, CLI_EXIT_CODE_HELP;
13927
+ var CLI_EXIT, CliError, EDGE_BLOCKED_CODE, HandledCliError, debugFlag, NETWORK_ERRNO, NETWORK_MESSAGE, UNAVAILABLE_HINT, VENDOR_RETRY_SOON_SECONDS, VENDOR_LABELS, PROVIDER_REJECTED_SERVER_CODE, PROVIDER_REJECTED_HTTP_STATUS, PROVIDER_REJECTION_REASONS, PROVIDER_REJECTED_NO_RETRY, PROVIDER_REJECTED_LUA_SIDE, MODEL_SETTINGS_URL, DECISION_STATUS, CLI_EXIT_CODE_HELP;
13872
13928
  var init_cli_error = __esm({
13873
13929
  "src/errors/cli.error.ts"() {
13874
13930
  "use strict";
@@ -13984,6 +14040,9 @@ var init_cli_error = __esm({
13984
14040
  __name(isTypedCliError, "isTypedCliError");
13985
14041
  __name(listHint, "listHint");
13986
14042
  __name(joinHint, "joinHint");
14043
+ EDGE_BLOCKED_CODE = "EDGE_BLOCKED";
14044
+ __name(isLuaErrorBody, "isLuaErrorBody");
14045
+ __name(isEdgeBlockedError, "isEdgeBlockedError");
13987
14046
  __name(isAccessDeniedError, "isAccessDeniedError");
13988
14047
  HandledCliError = class extends Error {
13989
14048
  static {
@@ -20818,6 +20877,14 @@ async function classifyErrorResponse(response) {
20818
20877
  }
20819
20878
  throw new AuthenticationError(`Authentication failed: ${serverMessage}`, "unknown", serverMessage);
20820
20879
  }
20880
+ if (response.status === 403 && !isLuaErrorBody(errorData) && isHtmlResponse(response)) {
20881
+ throw new CliError("forbidden", "The request was blocked before it reached Lua (HTTP 403 from the network firewall), not by your credentials.", {
20882
+ exitCode: CLI_EXIT.FORBIDDEN,
20883
+ statusCode: 403,
20884
+ serverCode: EDGE_BLOCKED_CODE,
20885
+ hint: "Something in the request looked like an attack to the firewall, for example a URL that contains a system path. Change the request and try again."
20886
+ });
20887
+ }
20821
20888
  if (response.status === 403) {
20822
20889
  const detail = errorData.message || "You do not have permission to access this resource.";
20823
20890
  const serverCode = serverCodeOf(errorData.code, errorData.error);
@@ -20933,6 +21000,9 @@ async function* parseSseStream(body, signal) {
20933
21000
  }
20934
21001
  }
20935
21002
  }
21003
+ function isHtmlResponse(response) {
21004
+ return (response.headers.get("content-type") ?? "").toLowerCase().includes("text/html");
21005
+ }
20936
21006
  function parseRetryAfter(raw) {
20937
21007
  if (!raw) return void 0;
20938
21008
  const seconds = Number.parseInt(raw, 10);
@@ -21351,6 +21421,7 @@ var init_http_client = __esm({
21351
21421
  __name(serverCodeOf, "serverCodeOf");
21352
21422
  __name(refusalFromResponse, "refusalFromResponse");
21353
21423
  __name(parseSseStream, "parseSseStream");
21424
+ __name(isHtmlResponse, "isHtmlResponse");
21354
21425
  __name(parseRetryAfter, "parseRetryAfter");
21355
21426
  __name(isCoreDrainApiError, "isCoreDrainApiError");
21356
21427
  __name(coreDrainApiRetryDelayMs, "coreDrainApiRetryDelayMs");
@@ -23666,15 +23737,22 @@ var init_analytics = __esm({
23666
23737
  });
23667
23738
 
23668
23739
  // src/utils/write-info.ts
23740
+ function clearLineFor(stream) {
23741
+ return stream.isTTY ? CLEAR_LINE : "";
23742
+ }
23669
23743
  function writeInfo(message) {
23670
- process.stdout.write("\r\x1B[K" + message + "\n");
23744
+ process.stdout.write(clearLineFor(process.stdout) + message + "\n");
23671
23745
  }
23672
23746
  function writeProgress(message) {
23673
- process.stderr.write("\r\x1B[K" + message);
23747
+ if (process.stderr.isTTY) process.stderr.write(CLEAR_LINE + message);
23748
+ else process.stderr.write(message + "\n");
23674
23749
  }
23750
+ var CLEAR_LINE;
23675
23751
  var init_write_info = __esm({
23676
23752
  "src/utils/write-info.ts"() {
23677
23753
  "use strict";
23754
+ CLEAR_LINE = "\r\x1B[K";
23755
+ __name(clearLineFor, "clearLineFor");
23678
23756
  __name(writeInfo, "writeInfo");
23679
23757
  __name(writeProgress, "writeProgress");
23680
23758
  }
@@ -23843,10 +23921,10 @@ function clearPromptLines(count2 = 1) {
23843
23921
  }
23844
23922
  }
23845
23923
  function writeSuccess(message) {
23846
- process.stdout.write("\r\x1B[K" + message + "\n");
23924
+ process.stdout.write(clearLineFor(process.stdout) + message + "\n");
23847
23925
  }
23848
23926
  function writeError(message) {
23849
- process.stderr.write("\r\x1B[K" + message + "\n");
23927
+ process.stderr.write(clearLineFor(process.stderr) + message + "\n");
23850
23928
  }
23851
23929
  var isCiMode, jsonOutputRequested;
23852
23930
  var init_cli = __esm({
@@ -23859,6 +23937,7 @@ var init_cli = __esm({
23859
23937
  init_analytics();
23860
23938
  init_hints();
23861
23939
  init_write_info();
23940
+ init_write_info();
23862
23941
  isCiMode = false;
23863
23942
  __name(setCiMode, "setCiMode");
23864
23943
  __name(isCiModeEnabled, "isCiModeEnabled");
@@ -34311,7 +34390,7 @@ function unresolvedRefIssues(all, browsers) {
34311
34390
  }
34312
34391
  return issues;
34313
34392
  }
34314
- var oneOf2, stringList, positiveIntUpTo, SETTING_CHECKS, BROWSER_SETTING_KEYS, BrowserPlugin;
34393
+ var oneOf2, stringList, positiveIntUpTo, SETTING_CHECKS, wholeNumberUpTo, SETTING_RULES, BROWSER_SETTING_KEYS, BrowserPlugin;
34315
34394
  var init_browser_plugin = __esm({
34316
34395
  "src/compiler/plugins/browser.plugin.ts"() {
34317
34396
  "use strict";
@@ -34338,6 +34417,21 @@ var init_browser_plugin = __esm({
34338
34417
  persist: /* @__PURE__ */ __name((value3) => typeof value3 === "boolean", "persist"),
34339
34418
  credentials: stringList
34340
34419
  };
34420
+ wholeNumberUpTo = /* @__PURE__ */ __name((max, unit) => `it must be a whole number of ${unit} from 1 to ${max}`, "wholeNumberUpTo");
34421
+ SETTING_RULES = {
34422
+ engine: `it must be one of ${BROWSER_ENGINES.join(", ")}`,
34423
+ fallback: `it must be one of ${BROWSER_FALLBACKS.join(", ")}`,
34424
+ proxyCountry: 'it must be a two-letter country code, like "de"',
34425
+ allowedDomains: "it must be a list of non-empty domain strings",
34426
+ confirmActions: "it must be a list of non-empty action names",
34427
+ maxSessionMinutes: wholeNumberUpTo(BROWSER_LIMIT_MAX.maxSessionMinutes, "minutes"),
34428
+ idleTimeoutSeconds: wholeNumberUpTo(BROWSER_LIMIT_MAX.idleTimeoutSeconds, "seconds"),
34429
+ maxConcurrentSessions: wholeNumberUpTo(BROWSER_LIMIT_MAX.maxConcurrentSessions, "sessions"),
34430
+ screenshots: `it must be one of ${BROWSER_SCREENSHOT_POLICIES.join(", ")}`,
34431
+ logContent: `it must be one of ${BROWSER_LOG_CONTENT_MODES.join(", ")}`,
34432
+ persist: "it must be true or false",
34433
+ credentials: "it must be a list of non-empty credential names"
34434
+ };
34341
34435
  BROWSER_SETTING_KEYS = Object.keys(SETTING_CHECKS);
34342
34436
  __name(shapeBrowserSettings, "shapeBrowserSettings");
34343
34437
  __name(duplicateNameIssues, "duplicateNameIssues");
@@ -34379,7 +34473,7 @@ var init_browser_plugin = __esm({
34379
34473
  }));
34380
34474
  }
34381
34475
  for (const key of metadata.metadata.invalidSettings ?? []) {
34382
- errors.push(validationError(`Browser "${metadata.name}" has an invalid \`${key}\``, {
34476
+ errors.push(validationError(`Browser "${metadata.name}" has an invalid \`${key}\`: ${SETTING_RULES[key]}`, {
34383
34477
  line: metadata.line
34384
34478
  }));
34385
34479
  }
@@ -34600,7 +34694,7 @@ var init_decision_plugin = __esm({
34600
34694
  line
34601
34695
  }));
34602
34696
  if (extractionErrors.length === 0) {
34603
- const parsed = DecisionDefinitionSchema.safeParse(definitionOf(metadata.name, metadata.description, metadata.metadata));
34697
+ const parsed = DecisionDefinitionWriteSchema.safeParse(definitionOf(metadata.name, metadata.description, metadata.metadata));
34604
34698
  if (!parsed.success) {
34605
34699
  for (const issue of parsed.error.issues) {
34606
34700
  const path32 = issue.path.length > 0 ? issue.path.join(".") : "<root>";
@@ -53085,6 +53179,7 @@ __name(printToolOutput, "printToolOutput");
53085
53179
 
53086
53180
  // src/commands/test.ts
53087
53181
  init_cli();
53182
+ init_write_info();
53088
53183
  init_command_utils();
53089
53184
 
53090
53185
  // src/utils/web-app-route.ts
@@ -55821,7 +55916,7 @@ async function selectEntityOrPrompt(options) {
55821
55916
  __name(selectEntityOrPrompt, "selectEntityOrPrompt");
55822
55917
  function progress(asJson, message) {
55823
55918
  if (asJson) {
55824
- process.stderr.write("\r\x1B[K" + message + "\n");
55919
+ process.stderr.write(clearLineFor(process.stderr) + message + "\n");
55825
55920
  } else {
55826
55921
  writeProgress(message);
55827
55922
  }
@@ -55829,7 +55924,7 @@ function progress(asJson, message) {
55829
55924
  __name(progress, "progress");
55830
55925
  function success(asJson, message) {
55831
55926
  if (asJson) {
55832
- process.stderr.write("\r\x1B[K" + message + "\n");
55927
+ process.stderr.write(clearLineFor(process.stderr) + message + "\n");
55833
55928
  } else {
55834
55929
  writeSuccess(message);
55835
55930
  }
@@ -65451,7 +65546,8 @@ function renderLogEntry(log, isLast) {
65451
65546
  }
65452
65547
  } else {
65453
65548
  if (primitiveName) {
65454
- console.log(chalk2.gray(` ${capitalizedType} Name: ${primitiveName}`));
65549
+ const label2 = logSource === "browser" ? "Called by" : `${capitalizedType} Name`;
65550
+ console.log(chalk2.gray(` ${label2}: ${primitiveName}`));
65455
65551
  }
65456
65552
  if (primitiveId) {
65457
65553
  console.log(chalk2.gray(` ${capitalizedType} ID: ${primitiveId}`));
@@ -72525,6 +72621,13 @@ function parseProvider2(raw) {
72525
72621
  return provider;
72526
72622
  }
72527
72623
  __name(parseProvider2, "parseProvider");
72624
+ function parseModel(raw) {
72625
+ if (raw === void 0) return void 0;
72626
+ const model = raw.trim();
72627
+ if (!model) throw CliError.usage("--model must name a model, such as jev-latest, gpt-6-luna or liquid/d1");
72628
+ return model;
72629
+ }
72630
+ __name(parseModel, "parseModel");
72528
72631
  function parseMinConfidence(raw) {
72529
72632
  if (raw === void 0) return void 0;
72530
72633
  const value3 = Number(raw);
@@ -72664,6 +72767,7 @@ async function runAction(api, name, options) {
72664
72767
  const decisionName = requireArg(name, "A decision name", "lua decisions run <name> --message '<text>'");
72665
72768
  const { state: state3, input } = parseState(options);
72666
72769
  const provider = parseProvider2(options.provider);
72770
+ const model = parseModel(options.model);
72667
72771
  const minConfidence = parseMinConfidence(options.minConfidence);
72668
72772
  const request2 = {
72669
72773
  name: decisionName,
@@ -72671,6 +72775,9 @@ async function runAction(api, name, options) {
72671
72775
  ...provider !== void 0 && {
72672
72776
  provider
72673
72777
  },
72778
+ ...model !== void 0 && {
72779
+ model
72780
+ },
72674
72781
  ...minConfidence !== void 0 && {
72675
72782
  minConfidence
72676
72783
  }
@@ -72679,6 +72786,7 @@ async function runAction(api, name, options) {
72679
72786
  trackEvent("cli_decisions_run", {
72680
72787
  input,
72681
72788
  provider: result.provider,
72789
+ model: model !== void 0,
72682
72790
  rule: result.rule,
72683
72791
  fallback: !!result.fallback,
72684
72792
  cached: result.cached,
@@ -89482,14 +89590,29 @@ var REFUSAL_HINTS = {
89482
89590
  BROWSER_CLI_CONCURRENCY: "Wait for a run to finish, or press Ctrl-C on it to cancel it.",
89483
89591
  BROWSER_CLI_LIMITER_UNAVAILABLE: "Try again in a minute."
89484
89592
  };
89593
+ var BROWSER_RUN_MAX_STEPS = 60;
89594
+ var BROWSER_RUN_MIN_COST_USD = 0.01;
89595
+ var BROWSER_RUN_MAX_COST_USD = 10;
89485
89596
  function parseEnvironment2(raw) {
89486
89597
  if (raw === void 0) return "sandbox";
89487
89598
  const env = raw.toLowerCase();
89488
- if (env === "sandbox" || env === "staging") return "sandbox";
89489
- if (env === "production") return "production";
89490
- throw CliError.usage(`-e must be sandbox, staging or production (got '${raw}')`);
89599
+ if (env === "sandbox" || env === "production") return env;
89600
+ throw CliError.usage(`-e must be sandbox or production (got '${raw}')`, "Log rows are tagged sandbox or production.");
89491
89601
  }
89492
89602
  __name(parseEnvironment2, "parseEnvironment");
89603
+ function parseWebUrl(raw, flag) {
89604
+ let parsed;
89605
+ try {
89606
+ parsed = new URL(raw.trim());
89607
+ } catch {
89608
+ throw CliError.usage(`${flag} must be a full web address like https://example.com (got '${raw}')`);
89609
+ }
89610
+ if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
89611
+ throw CliError.usage(`${flag} must start with http:// or https:// (got '${raw}')`);
89612
+ }
89613
+ return raw.trim();
89614
+ }
89615
+ __name(parseWebUrl, "parseWebUrl");
89493
89616
  function parseReadFormat(raw) {
89494
89617
  if (raw === void 0) return void 0;
89495
89618
  const format = BROWSER_READ_FORMATS2.find((f) => f === raw);
@@ -89510,12 +89633,20 @@ function parseMaxCost(raw) {
89510
89633
  if (raw === void 0) return void 0;
89511
89634
  const amount = raw.trim().replace(/^\$/, "");
89512
89635
  const n2 = Number(amount);
89513
- if (!/^(\d+(\.\d+)?|\.\d+)$/.test(amount) || n2 <= 0) {
89514
- throw CliError.usage(`--max-cost must be an amount in USD above 0, like 0.50 (got '${raw}')`);
89636
+ if (!/^(\d+(\.\d+)?|\.\d+)$/.test(amount) || n2 < BROWSER_RUN_MIN_COST_USD || n2 > BROWSER_RUN_MAX_COST_USD) {
89637
+ throw CliError.usage(`--max-cost must be an amount in USD from ${BROWSER_RUN_MIN_COST_USD} to ${BROWSER_RUN_MAX_COST_USD}, like 0.50 (got '${raw}')`);
89515
89638
  }
89516
89639
  return n2;
89517
89640
  }
89518
89641
  __name(parseMaxCost, "parseMaxCost");
89642
+ function parseMaxSteps(raw) {
89643
+ const n2 = parsePositiveInt(raw, "--max-steps");
89644
+ if (n2 !== void 0 && n2 > BROWSER_RUN_MAX_STEPS) {
89645
+ throw CliError.usage(`--max-steps must be ${BROWSER_RUN_MAX_STEPS} or less (got '${raw}')`);
89646
+ }
89647
+ return n2;
89648
+ }
89649
+ __name(parseMaxSteps, "parseMaxSteps");
89519
89650
  function readSchemaFile(path32, read = readUtf8) {
89520
89651
  if (path32 === void 0) return void 0;
89521
89652
  let text2;
@@ -89548,6 +89679,7 @@ function readResultLines(output) {
89548
89679
  ];
89549
89680
  if (data.url && data.finalUrl && data.url !== data.finalUrl) lines.push(`Requested: ${data.url}`);
89550
89681
  if (typeof data.status === "number" && data.status !== 200) lines.push(`Status: HTTP ${data.status}`);
89682
+ if (typeof data.matches === "number") lines.push(`Matches: ${data.matches}`);
89551
89683
  lines.push(`Engine: ${output.engine}`, ...blockedLines(data), "", data.content ?? "");
89552
89684
  if (data.truncated) lines.push("", "(content was cut short)");
89553
89685
  return lines;
@@ -89616,7 +89748,7 @@ async function guarded(agentId2, call2) {
89616
89748
  try {
89617
89749
  return await call2();
89618
89750
  } catch (error) {
89619
- if (!isAccessDeniedError(error)) throw error;
89751
+ if (!isAccessDeniedError(error) || isEdgeBlockedError(error)) throw error;
89620
89752
  throw CliError.forbidden(`Your API key can't run the browser for agent ${agentId2}.`, "It needs agents:write on that agent. Check the agent id, or run `lua auth configure` with a key for it.");
89621
89753
  }
89622
89754
  }
@@ -89656,8 +89788,9 @@ function logsHint() {
89656
89788
  __name(logsHint, "logsHint");
89657
89789
  async function runBrowserRead(ctx, url, options) {
89658
89790
  const format = parseReadFormat(options.format);
89791
+ const target = parseWebUrl(url, "The URL");
89659
89792
  const output = unwrap5(await guarded(ctx.agentId, () => ctx.api.read({
89660
- url,
89793
+ url: target,
89661
89794
  environment: ctx.environment,
89662
89795
  ...options.selector ? {
89663
89796
  selector: options.selector
@@ -89719,22 +89852,31 @@ async function followBrowserRun(api, first, signal, out, startedAt = Date.now())
89719
89852
  return view;
89720
89853
  }
89721
89854
  __name(followBrowserRun, "followBrowserRun");
89722
- async function runBrowserTask(ctx, task, options, out = {
89723
- write: /* @__PURE__ */ __name((line) => console.log(line), "write"),
89724
- progress: writeProgress
89725
- }) {
89855
+ function terminalRunOutput(stderr = process.stderr) {
89856
+ return {
89857
+ write: /* @__PURE__ */ __name((line) => {
89858
+ if (stderr.isTTY) stderr.write("\r\x1B[K");
89859
+ console.log(line);
89860
+ }, "write"),
89861
+ progress: /* @__PURE__ */ __name((line) => {
89862
+ if (stderr.isTTY) writeProgress(line);
89863
+ }, "progress")
89864
+ };
89865
+ }
89866
+ __name(terminalRunOutput, "terminalRunOutput");
89867
+ async function runBrowserTask(ctx, task, options, out = terminalRunOutput()) {
89726
89868
  if (!task.trim()) throw CliError.usage("A task is required", 'Usage: lua browser run "<task>"');
89727
89869
  const body = {
89728
89870
  task,
89729
89871
  environment: ctx.environment,
89730
89872
  ...options.startUrl ? {
89731
- startUrl: options.startUrl
89873
+ startUrl: parseWebUrl(options.startUrl, "--start-url")
89732
89874
  } : {},
89733
89875
  ...options.schema ? {
89734
89876
  schema: readSchemaFile(options.schema)
89735
89877
  } : {},
89736
89878
  ...options.maxSteps !== void 0 ? {
89737
- maxSteps: parsePositiveInt(options.maxSteps, "--max-steps")
89879
+ maxSteps: parseMaxSteps(options.maxSteps)
89738
89880
  } : {},
89739
89881
  ...options.maxCost !== void 0 ? {
89740
89882
  maxCostUsd: parseMaxCost(options.maxCost)
@@ -90392,7 +90534,7 @@ Examples:
90392
90534
  $ lua jobs versions -i myJob View job versions
90393
90535
  $ lua jobs history -i myJob View execution history
90394
90536
  `).action(jobsCommand);
90395
- program2.command("decisions [action] [name] [version]").description("\u{1F9ED} See, try and roll back named decisions (list, versions, publish, run, delete)").option("--json", "Machine-readable output (list, versions, run)").option("--force", "Skip the confirmation (publish, delete)").option("--state <json>", "run: the state to decide on, as JSON").option("--message <text>", "run: a message to decide on, sent as { message: <text> }").option("--provider <provider>", "run: jev, openai or auto").option("--min-confidence <n>", "run: below this confidence an answer is marked uncertain (0 to 1)").addHelpText("after", `
90537
+ program2.command("decisions [action] [name] [version]").description("\u{1F9ED} See, try and roll back named decisions (list, versions, publish, run, delete)").option("--json", "Machine-readable output (list, versions, run)").option("--force", "Skip the confirmation (publish, delete)").option("--state <json>", "run: the state to decide on, as JSON").option("--message <text>", "run: a message to decide on, sent as { message: <text> }").option("--provider <provider>", "run: jev, openai, openrouter or auto").option("--model <id>", "run: the model to answer with; an OpenRouter id such as liquid/d1 pins openrouter").option("--min-confidence <n>", "run: below this confidence an answer is marked uncertain (0 to 1)").addHelpText("after", `
90396
90538
  Arguments:
90397
90539
  action Optional: list (default), versions, publish, run, delete
90398
90540
  name The decision's name