@wayai/cli 0.3.44 → 0.3.46
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 +186 -15
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -15,6 +15,34 @@ var __export = (target, all) => {
|
|
|
15
15
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
+
// src/lib/redact.ts
|
|
19
|
+
function redactSecrets(text) {
|
|
20
|
+
let out = text;
|
|
21
|
+
for (const [pattern, replacement] of PATTERNS) {
|
|
22
|
+
out = out.replace(pattern, replacement);
|
|
23
|
+
}
|
|
24
|
+
return out;
|
|
25
|
+
}
|
|
26
|
+
var PATTERNS;
|
|
27
|
+
var init_redact = __esm({
|
|
28
|
+
"src/lib/redact.ts"() {
|
|
29
|
+
"use strict";
|
|
30
|
+
PATTERNS = [
|
|
31
|
+
// JWTs (header.payload.signature) — WorkOS access/refresh tokens, OAuth JWTs.
|
|
32
|
+
// Run first so a `Bearer <jwt>` collapses to the JWT placeholder.
|
|
33
|
+
[/eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+/g, "[REDACTED_JWT]"],
|
|
34
|
+
// way_ scoped API tokens (keyring/CI credentials). Leading \b avoids
|
|
35
|
+
// over-redacting benign substrings (e.g. `gateway_config`); the charset is
|
|
36
|
+
// base64url (no `.`) so a trailing sentence period stays outside the match.
|
|
37
|
+
[/\bway_[A-Za-z0-9_-]{8,}/g, "way_[REDACTED]"],
|
|
38
|
+
// wst_ single-use WebSocket tickets (same opaque base64url format).
|
|
39
|
+
[/\bwst_[A-Za-z0-9_-]{8,}/g, "wst_[REDACTED]"],
|
|
40
|
+
// Authorization: Bearer <opaque token> (anything not already masked above).
|
|
41
|
+
[/(Bearer\s+)[A-Za-z0-9._~+/=-]{8,}/gi, "$1[REDACTED]"]
|
|
42
|
+
];
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
|
|
18
46
|
// src/lib/sentry.ts
|
|
19
47
|
import * as Sentry from "@sentry/node";
|
|
20
48
|
import { readFileSync } from "fs";
|
|
@@ -51,15 +79,26 @@ function initSentry(command2) {
|
|
|
51
79
|
defaultIntegrations: false,
|
|
52
80
|
beforeSend(event) {
|
|
53
81
|
const home = homedir();
|
|
54
|
-
if (
|
|
82
|
+
if (event.exception?.values) {
|
|
55
83
|
for (const value of event.exception.values) {
|
|
56
|
-
if (value.stacktrace?.frames) {
|
|
84
|
+
if (home && value.stacktrace?.frames) {
|
|
57
85
|
for (const frame of value.stacktrace.frames) {
|
|
58
86
|
if (frame.filename && frame.filename.includes(home)) {
|
|
59
87
|
frame.filename = frame.filename.replace(home, "~");
|
|
60
88
|
}
|
|
61
89
|
}
|
|
62
90
|
}
|
|
91
|
+
if (value.value) value.value = redactSecrets(value.value);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (event.breadcrumbs) {
|
|
95
|
+
for (const crumb of event.breadcrumbs) {
|
|
96
|
+
if (crumb.message) crumb.message = redactSecrets(crumb.message);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
if (event.extra) {
|
|
100
|
+
for (const [key, val] of Object.entries(event.extra)) {
|
|
101
|
+
if (typeof val === "string") event.extra[key] = redactSecrets(val);
|
|
63
102
|
}
|
|
64
103
|
}
|
|
65
104
|
return event;
|
|
@@ -127,6 +166,7 @@ var HARDCODED_DSN, initialized;
|
|
|
127
166
|
var init_sentry = __esm({
|
|
128
167
|
"src/lib/sentry.ts"() {
|
|
129
168
|
"use strict";
|
|
169
|
+
init_redact();
|
|
130
170
|
HARDCODED_DSN = "https://ffe500121277babcabf32e5868f00f9e@o4510669417807872.ingest.us.sentry.io/4510960145465344";
|
|
131
171
|
initialized = false;
|
|
132
172
|
}
|
|
@@ -138,14 +178,16 @@ var init_api_client = __esm({
|
|
|
138
178
|
"src/lib/api-client.ts"() {
|
|
139
179
|
"use strict";
|
|
140
180
|
init_sentry();
|
|
181
|
+
init_redact();
|
|
141
182
|
ApiError = class extends Error {
|
|
142
183
|
status;
|
|
143
184
|
body;
|
|
144
185
|
constructor(method, path19, status, body) {
|
|
145
|
-
|
|
186
|
+
const safeBody = redactSecrets(body);
|
|
187
|
+
super(`API request failed: ${method} ${path19} (${status}): ${safeBody}`);
|
|
146
188
|
this.name = "ApiError";
|
|
147
189
|
this.status = status;
|
|
148
|
-
this.body =
|
|
190
|
+
this.body = safeBody;
|
|
149
191
|
}
|
|
150
192
|
/** True when the status code is a 4xx client error (expected user-facing condition, not a bug). */
|
|
151
193
|
get isExpected() {
|
|
@@ -4989,7 +5031,7 @@ function slugifyKebab(input, maxLength = 64) {
|
|
|
4989
5031
|
function slugifySkillName(name) {
|
|
4990
5032
|
return slugifyKebab(name, 64);
|
|
4991
5033
|
}
|
|
4992
|
-
var APP_ERROR_BRAND, AppError, LLM_RATE_LIMIT_BRAND, LlmRateLimitError, LLM_PROVIDER_HTTP_BRAND, LlmProviderHttpError, ExternalServiceError, CHANNEL_PROVIDER_HTTP_BRAND, ChannelProviderHttpError, MEDIA_PROVIDER_HTTP_BRAND, MediaProviderHttpError, AUTH_TYPE, ORG_CREDENTIAL_AUTH_TYPES, AUTH_TYPE_DISPLAY, LEGACY_AUTH_TYPE_MAP, VALID_AUTH_TYPES, AGENT_ROLES, SAFE_USER_ID_REGEX, uuidSchema, paginationSchema, timestampSchema, idParamSchema, primaryRegionSchema, placementSourceSchema, orgIdParam, orgAdminIdParam, createOrganizationBody, updateOrganizationBody, addOrgAdminBody, SUMMARIZATION_THRESHOLD_MIN, SUMMARIZATION_THRESHOLD_MAX, summarizationThresholdField, monitorConfigField, agentIdParam, listAgentsQuery, agentConnectionsQuery, createAgentBody, updateAgentBody, SLUG_REGEX, slugSchema, INVISIBLE_NAME_CHARS, MAX_KANBAN_STATUSES, MAX_FOLLOWUPS_PER_STATUS, MAX_ADDITIONAL_CONTEXT_SCHEMA_BYTES, RESERVED_TEMPLATE_DUMP_NAME, kanbanStatusSlugSchema, followupSchema, EXCLUSIVE_FLAG_PAIRS, kanbanStatusSchema, kanbanStatusesArraySchema, hubIdParam, hubAdminIdParam, hubUserIdParam, hubIdentityIdParam, hubTeamIdParam, hubTeamUserDeleteParam, hubSchemaQuery, createHubBody, updateHubBody, addHubAdminBody, addHubIdentityAuthorizationBody, contactDecisionBody, approveContactBody, listContactAccessQuery, createHubTeamBody, updateHubTeamBody, addHubTeamUserBody, reassignHubUserBody, replicatePreviewBody, claimCodeChannelParam, claimCodeDeleteParam, connectionIdParam, connectorIdParam, listConnectionsQuery, deleteConnectionQuery, addConnectionBody, editConnectionBody, registerWhatsappQuery, registerWhatsappBody, retryProvisioningQuery, resendDomainStatusQuery, PLACEHOLDER_TOKENS, ALLOWED_TYPES, SUBSCHEMA_OBJECT_KEYWORDS, SUBSCHEMA_LIST_KEYWORDS, SUBSCHEMA_MAP_KEYWORDS, MAX_SCHEMA_DEPTH, toolIdParam, listToolsQuery, toolAgentQuery, deleteToolQuery, toolConnectionsQuery, nativeToolIdSchema, addNativeToolBody, addMcpToolBody, createCustomToolBody, updateCustomToolBody, updateToolExecutionConfigBody, initialValueCreateSchema, initialValueUpdateSchema, stateIdParam, listStatesQuery, stateNameSchema, createStateBody, updateStateBody, reorderStatesBody, orgTagIdParam, listOrgTagsQuery, createOrgTagBody, updateOrgTagBody, orgCredentialIdParam, listOrgCredentialsQuery, createOrgCredentialBody, updateOrgCredentialBody, orgResourceIdParam, orgResourceFileIdParam, orgResourceFolderIdParam, hubOrgResourceParam, listOrgResourcesQuery, orgIdQuery, createOrgResourceBody, updateOrgResourceBody, createOrgResourceFolderBody, updateOrgResourceFolderBody, uploadOrgResourceFileBody, updateOrgResourceFileBody, uploadOrgSkillZipBody, linkOrgResourceBody, resourceIdParam, listResourcesQuery, createResourceBody, updateResourceBody, syncSkillsBody, resourceFileIdParam, listResourceFilesQuery, createResourceFileBody, updateResourceFileBody, uploadResourceFileBody, uploadSkillZipBody, resourceFolderIdParam, listResourceFoldersQuery, createResourceFolderBody, updateResourceFolderBody, agentResourceQuery, hubResourceQuery, linkAgentResourceBody, updateAgentResourceBody, unlinkAgentResourceQuery, navItemSchema, hubCountResetBody, navItemCountResetBody, typingBody, analyticsHubIdParam, analyticsVariableIdParam, updateVariablePinBody, updateAnalyticsViewBody, NUMERIC_FILTER_OPS, TEXT_FILTER_OPS, CATEGORICAL_FILTER_OPS, VARIABLE_FILTER_OPS, STRUCTURED_QUERY_OPS, STRUCTURED_QUERY_AGGREGATIONS, filterValueSchema, conversationsBody, analyticsConversationIdParam, messagesQuery, conversationDetailDataQuery, analyticsDataBody, structuredQueryBody, analyticsSqlBody, analyticsSqlSchemaQuery, PACING_INTERVAL_MIN_MS, PACING_INTERVAL_MAX_MS, EVAL_RUN_DEADLINE_MIN_MS, EVAL_RUN_DEADLINE_MAX_MS, paginationSchema2, evalIdParam, sessionIdParam, scenarioSetIdParam, hubIdQuery, createEvalBody, updateEvalBody, getEvalsQuery, toggleEvalBody, bulkToggleEvalsBody, pacingConfigSchema, sessionConfigSchema, createSessionBody, getSessionsQuery, getSessionResultsQuery, getSessionRunsQuery, evalAnalyticsQuery, getSessionCostQuery, compareSessionsQuery, evalsSqlBody, evalsSqlSchemaQuery, exportResultsQuery, validateEvalBody, hubAgentsQuery, createScenarioSetBody, updateScenarioSetBody, scenarioSetsHubQuery, createScenarioFromConversationBody, getConversationsQuery, getMessagesQuery, updateUserBody, updateProfileBody, pathnameRegex, updatePreferencesBody, activityQuery, deletionModeSchema, deletionRequestBody, archiveHubIdParam, archiveConversationParams, archiveListQuery, archiveMessageObservabilityParams, conversationIdParam, claimBody, releaseBody, transferBody, closeBody, additionalContextPayloadSchema, kanbanUpdateBody, observabilityParams, observabilityListParams, deleteUserConversationsBody, sendMessageBody, listConversationsQuery, getConversationDetailParams, getConversationDetailQuery, listWhatsAppTemplatesQuery, sendWhatsAppTemplateBody, billingOrgIdParam, subscriptionItemParams, spendCapBody, growthPacksBody, portalSessionBody, checkoutSessionBody, updateBillingCurrencyBody, invoicesQuery, downloadBody, uploadQuery, signUrlBody, completionsBody, outboundSchemaQuery, templateIdParam, listTemplatesQuery, deleteTemplateQuery, templateStatusQuery, createTemplateBody, updateTemplateBody, submitTemplateBody, testTemplateBody, contactIdParam, listContactsQuery, createContactBody, updateContactBody, listIdParam, listListsQuery, listListContactsQuery, createListBody, updateListBody, addListContactsBody, removeListContactsBody, scheduleIdParam, listSchedulesQuery, listExecutionsQuery, createScheduleBody, updateScheduleBody, uuidPattern, ciUuidSchema, hubAsCodeConfigSchema, ciPullHubIdParam, ciBranchParam, ciPullQuery, ciHubsQuery, ciLookupQuery, ciBranchesQuery, ciSyncBody, ciPushBody, ciDiffBody, ciPublishBody, ciPublishPreviewBody, ciSyncMcpBody, ciOrgResourcesParam, orgResourcesConfigSchema, ciOrgResourcesPushBody, ciOrgResourcesDiffBody, adminOrgIdParam, adminOrgAdminIdParam, adminUserIdParam, adminPlanIdParam, adminOrganizationsQuery, adminUserSearchQuery, kanbanSlugMigrationQuery, adjustQuotaBody, updatePlanBody, addAdminUserBody, updatePlatformConfigBody, updateFreeOrgLimitBody, updatePricingPlanBody, dataExplorerSearchQuery, dataExplorerOrgIdParam, dataExplorerHubIdParam, dataExplorerConvIdParam, dataExplorerDoInstancesQuery, dataExplorerNsIdParam, dataExplorerKvKeysQuery, dataExplorerKvKeyParam, uuidOrHexId, dataExplorerDeleteOrgParam, dataExplorerDeleteHubParam, dataExplorerDeleteConvParam, dataExplorerDeleteUserParam, dataExplorerDeleteQuery, dataExplorerKvDeleteQuery, pitrDoNamespace, pitrBookmarkParam, pitrRestoreBody, healthSamplingTriggerBody, dataExplorerDebugDoType, DEBUG_READ_MAX_LIMIT, DEBUG_READ_DEFAULT_LIMIT, DEBUG_DO_HEX_PREFIX, debugDoEntityId, debugTableName, dataExplorerDebugTablesParam, dataExplorerDebugRowsParam, dataExplorerDebugRowsQuery, dataExplorerDebugAnalyticsTable, debugUuid, dataExplorerDebugAnalyticsRowsParam, dataExplorerDebugAnalyticsRowsQuery, debugHubConvParam, debugMessageIdQuery, whatsappCallbackBody, authMeResponse, wsTicketResponse, sessionCheckResponse, logoutResponse, browserParams, browserFoldersQuery, browserFilesQuery, stateOperationBody, conversationListResourcesQuery, conversationReadResourceQuery, listPendingSchedulesQuery, listHubAggregateSchedulesQuery, reportSourceSchema, intakeReportSourceSchema, reportClassificationSchema, reportStatusSchema, reportLocaleSchema, reportMessageAuthorRoleSchema, sentryRefStatusSchema, createReportBody, editReportBody, contestReportBody, reporterListQuery, listReportsQuery, GITHUB_ISSUE_URL_REGEX, githubIssueUrlSchema, transitionReportBody, groupReportsBody, holdReportBody, clickhouseReadyResponse, bootstrapQuery, requestSnapshotChunkMessage, MAX_NAME_LENGTH, MAX_VALUE_LENGTH, MAX_TAGS, MAX_TAG_LENGTH, MAX_SCOPE_HUBS, MAX_SCOPE_TAGS, vaultSecretScopeSchema, vaultCreateBody, vaultUpdateBody, PERMISSIONS, MAX_NAME_LENGTH2, MAX_HUBS_PER_GRANT, MAX_HUB_TAGS_PER_GRANT, MAX_GRANTS, permissionEnum, grantScopeSchema, grantSchema, createTokenBody, tokenOrgIdParam, tokenGrantScopeSchema, tokenGrantSchema, tokenMetadataSchema, listTokensResponse, createTokenResponse, orgTokenSummarySchema, listOrgTokensResponse, invitePreviewQuery, invitePreviewResponse, discordTier, discordBillingCycle, discordMetadata, discordOAuthStartResponse, discordOAuthFinalizeBody, discordOAuthFinalizeResponse, discordDisconnectResponse, jsonSchemaSchema, hubUserIdentity, stateValueEntry, getHubUserContextResponse, updateHubUserBody, updateHubUserResponse, unlockHubUserNameResponse, stateResetParams, stateResetResponse, hubAlertsParam, hubAlertSeverity, hubAlert, hubAlertsListResponse, noticeSeveritySchema, noticeStatusSchema, NOTICE_SCOPE_REGEX, noticeScopeSchema, noticeLinkSchema, createNoticeBody, updateNoticeBody, listNoticesQuery, noticeIdParamSchema, WAYAI_WORKSPACE_LAYOUT, MAX_RESOURCE_FILE_SIZE;
|
|
5034
|
+
var APP_ERROR_BRAND, AppError, LLM_RATE_LIMIT_BRAND, LlmRateLimitError, LLM_PROVIDER_HTTP_BRAND, LlmProviderHttpError, ExternalServiceError, CHANNEL_PROVIDER_HTTP_BRAND, ChannelProviderHttpError, MEDIA_PROVIDER_HTTP_BRAND, MediaProviderHttpError, AUTH_TYPE, ORG_CREDENTIAL_AUTH_TYPES, AUTH_TYPE_DISPLAY, LEGACY_AUTH_TYPE_MAP, VALID_AUTH_TYPES, AGENT_ROLES, SAFE_USER_ID_REGEX, uuidSchema, paginationSchema, timestampSchema, idParamSchema, primaryRegionSchema, placementSourceSchema, orgIdParam, orgAdminIdParam, createOrganizationBody, updateOrganizationBody, addOrgAdminBody, SUMMARIZATION_THRESHOLD_MIN, SUMMARIZATION_THRESHOLD_MAX, summarizationThresholdField, monitorConfigField, agentIdParam, listAgentsQuery, agentConnectionsQuery, createAgentBody, updateAgentBody, SLUG_REGEX, slugSchema, INVISIBLE_NAME_CHARS, MAX_KANBAN_STATUSES, MAX_FOLLOWUPS_PER_STATUS, MAX_ADDITIONAL_CONTEXT_SCHEMA_BYTES, RESERVED_TEMPLATE_DUMP_NAME, kanbanStatusSlugSchema, followupSchema, EXCLUSIVE_FLAG_PAIRS, kanbanStatusSchema, kanbanStatusesArraySchema, hubIdParam, hubAdminIdParam, hubUserIdParam, hubIdentityIdParam, hubTeamIdParam, hubTeamUserDeleteParam, hubSchemaQuery, createHubBody, updateHubBody, addHubAdminBody, addHubIdentityAuthorizationBody, contactDecisionBody, approveContactBody, listContactAccessQuery, createHubTeamBody, updateHubTeamBody, addHubTeamUserBody, reassignHubUserBody, replicatePreviewBody, claimCodeChannelParam, claimCodeDeleteParam, connectionIdParam, connectorIdParam, listConnectionsQuery, deleteConnectionQuery, addConnectionBody, editConnectionBody, registerWhatsappQuery, registerWhatsappBody, retryProvisioningQuery, resendDomainStatusQuery, PLACEHOLDER_TOKENS, ALLOWED_TYPES, SUBSCHEMA_OBJECT_KEYWORDS, SUBSCHEMA_LIST_KEYWORDS, SUBSCHEMA_MAP_KEYWORDS, MAX_SCHEMA_DEPTH, toolIdParam, listToolsQuery, toolAgentQuery, deleteToolQuery, toolConnectionsQuery, nativeToolIdSchema, addNativeToolBody, addMcpToolBody, createCustomToolBody, updateCustomToolBody, updateToolExecutionConfigBody, initialValueCreateSchema, initialValueUpdateSchema, stateIdParam, listStatesQuery, stateNameSchema, createStateBody, updateStateBody, reorderStatesBody, orgTagIdParam, listOrgTagsQuery, createOrgTagBody, updateOrgTagBody, orgCredentialIdParam, listOrgCredentialsQuery, createOrgCredentialBody, updateOrgCredentialBody, orgResourceIdParam, orgResourceFileIdParam, orgResourceFolderIdParam, hubOrgResourceParam, listOrgResourcesQuery, orgIdQuery, createOrgResourceBody, updateOrgResourceBody, createOrgResourceFolderBody, updateOrgResourceFolderBody, uploadOrgResourceFileBody, updateOrgResourceFileBody, uploadOrgSkillZipBody, linkOrgResourceBody, resourceIdParam, listResourcesQuery, createResourceBody, updateResourceBody, syncSkillsBody, resourceFileIdParam, listResourceFilesQuery, createResourceFileBody, updateResourceFileBody, uploadResourceFileBody, uploadSkillZipBody, resourceFolderIdParam, listResourceFoldersQuery, createResourceFolderBody, updateResourceFolderBody, agentResourceQuery, hubResourceQuery, linkAgentResourceBody, updateAgentResourceBody, unlinkAgentResourceQuery, navItemSchema, hubCountResetBody, navItemCountResetBody, typingBody, analyticsHubIdParam, analyticsVariableIdParam, updateVariablePinBody, updateAnalyticsViewBody, NUMERIC_FILTER_OPS, TEXT_FILTER_OPS, CATEGORICAL_FILTER_OPS, VARIABLE_FILTER_OPS, STRUCTURED_QUERY_OPS, STRUCTURED_QUERY_AGGREGATIONS, filterValueSchema, conversationsBody, analyticsConversationIdParam, messagesQuery, conversationDetailDataQuery, analyticsDataBody, structuredQueryBody, analyticsSqlBody, analyticsSqlSchemaQuery, PACING_INTERVAL_MIN_MS, PACING_INTERVAL_MAX_MS, EVAL_RUN_DEADLINE_MIN_MS, EVAL_RUN_DEADLINE_MAX_MS, paginationSchema2, evalIdParam, sessionIdParam, scenarioSetIdParam, hubIdQuery, createEvalBody, updateEvalBody, getEvalsQuery, toggleEvalBody, bulkToggleEvalsBody, pacingConfigSchema, sessionConfigSchema, createSessionBody, getSessionsQuery, getSessionResultsQuery, getSessionRunsQuery, evalAnalyticsQuery, getSessionCostQuery, compareSessionsQuery, evalsSqlBody, evalsSqlSchemaQuery, exportResultsQuery, validateEvalBody, hubAgentsQuery, createScenarioSetBody, updateScenarioSetBody, scenarioSetsHubQuery, createScenarioFromConversationBody, getConversationsQuery, getMessagesQuery, updateUserBody, updateProfileBody, pathnameRegex, updatePreferencesBody, registerPushTokenBody, deletePushTokenQuery, activityQuery, deletionModeSchema, deletionRequestBody, archiveHubIdParam, archiveConversationParams, archiveListQuery, archiveMessageObservabilityParams, conversationIdParam, claimBody, releaseBody, transferBody, closeBody, additionalContextPayloadSchema, kanbanUpdateBody, observabilityParams, observabilityListParams, deleteUserConversationsBody, sendMessageBody, listConversationsQuery, getConversationDetailParams, getConversationDetailQuery, listWhatsAppTemplatesQuery, sendWhatsAppTemplateBody, billingOrgIdParam, subscriptionItemParams, spendCapBody, growthPacksBody, portalSessionBody, checkoutSessionBody, updateBillingCurrencyBody, invoicesQuery, downloadBody, uploadQuery, signUrlBody, completionsBody, outboundSchemaQuery, templateIdParam, listTemplatesQuery, deleteTemplateQuery, templateStatusQuery, createTemplateBody, updateTemplateBody, submitTemplateBody, testTemplateBody, contactIdParam, listContactsQuery, createContactBody, updateContactBody, listIdParam, listListsQuery, listListContactsQuery, createListBody, updateListBody, addListContactsBody, removeListContactsBody, scheduleIdParam, listSchedulesQuery, listExecutionsQuery, createScheduleBody, updateScheduleBody, uuidPattern, ciUuidSchema, hubAsCodeConfigSchema, ciPullHubIdParam, ciBranchParam, ciPullQuery, ciHubsQuery, ciLookupQuery, ciBranchesQuery, ciSyncBody, ciPushBody, ciDiffBody, ciPublishBody, ciPublishPreviewBody, ciSyncMcpBody, ciOrgResourcesParam, orgResourcesConfigSchema, ciOrgResourcesPushBody, ciOrgResourcesDiffBody, adminOrgIdParam, adminOrgAdminIdParam, adminUserIdParam, adminPlanIdParam, adminOrganizationsQuery, adminUserSearchQuery, kanbanSlugMigrationQuery, adjustQuotaBody, updatePlanBody, addAdminUserBody, updatePlatformConfigBody, updateFreeOrgLimitBody, updatePricingPlanBody, dataExplorerSearchQuery, dataExplorerOrgIdParam, dataExplorerHubIdParam, dataExplorerConvIdParam, dataExplorerDoInstancesQuery, dataExplorerNsIdParam, dataExplorerKvKeysQuery, dataExplorerKvKeyParam, uuidOrHexId, dataExplorerDeleteOrgParam, dataExplorerDeleteHubParam, dataExplorerDeleteConvParam, dataExplorerDeleteUserParam, dataExplorerDeleteQuery, dataExplorerKvDeleteQuery, pitrDoNamespace, pitrBookmarkParam, pitrRestoreBody, healthSamplingTriggerBody, dataExplorerDebugDoType, DEBUG_READ_MAX_LIMIT, DEBUG_READ_DEFAULT_LIMIT, DEBUG_DO_HEX_PREFIX, debugDoEntityId, debugTableName, dataExplorerDebugTablesParam, dataExplorerDebugRowsParam, dataExplorerDebugRowsQuery, dataExplorerDebugAnalyticsTable, debugUuid, dataExplorerDebugAnalyticsRowsParam, dataExplorerDebugAnalyticsRowsQuery, debugHubConvParam, debugMessageIdQuery, whatsappCallbackBody, authMeResponse, wsTicketResponse, sessionCheckResponse, logoutResponse, magicCodeSendBody, magicCodeSendResponse, magicCodeVerifyBody, magicCodeVerifyResponse, browserParams, browserFoldersQuery, browserFilesQuery, stateOperationBody, conversationListResourcesQuery, conversationReadResourceQuery, listPendingSchedulesQuery, listHubAggregateSchedulesQuery, reportSourceSchema, intakeReportSourceSchema, reportClassificationSchema, reportStatusSchema, reportLocaleSchema, reportMessageAuthorRoleSchema, sentryRefStatusSchema, createReportBody, editReportBody, contestReportBody, reporterListQuery, listReportsQuery, GITHUB_ISSUE_URL_REGEX, githubIssueUrlSchema, transitionReportBody, groupReportsBody, holdReportBody, clickhouseReadyResponse, bootstrapQuery, requestSnapshotChunkMessage, MAX_NAME_LENGTH, MAX_VALUE_LENGTH, MAX_TAGS, MAX_TAG_LENGTH, MAX_SCOPE_HUBS, MAX_SCOPE_TAGS, vaultSecretScopeSchema, vaultCreateBody, vaultUpdateBody, PERMISSIONS, MAX_NAME_LENGTH2, MAX_HUBS_PER_GRANT, MAX_HUB_TAGS_PER_GRANT, MAX_GRANTS, permissionEnum, grantScopeSchema, grantSchema, createTokenBody, tokenOrgIdParam, tokenGrantScopeSchema, tokenGrantSchema, tokenMetadataSchema, listTokensResponse, createTokenResponse, orgTokenSummarySchema, listOrgTokensResponse, invitePreviewQuery, invitePreviewResponse, discordTier, discordBillingCycle, discordMetadata, discordOAuthStartResponse, discordOAuthFinalizeBody, discordOAuthFinalizeResponse, discordDisconnectResponse, jsonSchemaSchema, hubUserIdentity, stateValueEntry, getHubUserContextResponse, updateHubUserBody, updateHubUserResponse, unlockHubUserNameResponse, stateResetParams, stateResetResponse, hubAlertsParam, hubAlertSeverity, hubAlert, hubAlertsListResponse, noticeSeveritySchema, noticeStatusSchema, NOTICE_SCOPE_REGEX, noticeScopeSchema, noticeLinkSchema, createNoticeBody, updateNoticeBody, listNoticesQuery, noticeIdParamSchema, WAYAI_WORKSPACE_LAYOUT, MAX_RESOURCE_FILE_SIZE;
|
|
4993
5035
|
var init_dist = __esm({
|
|
4994
5036
|
"../../packages/core/dist/index.js"() {
|
|
4995
5037
|
"use strict";
|
|
@@ -6153,7 +6195,13 @@ var init_dist = __esm({
|
|
|
6153
6195
|
// window). 'archived' = the full closed-conversation history from ClickHouse.
|
|
6154
6196
|
status: external_exports.enum(["active", "agent", "team", "ended", "archived"]).optional(),
|
|
6155
6197
|
page: external_exports.string().regex(/^\d+$/).optional(),
|
|
6156
|
-
page_size: external_exports.string().regex(/^\d+$/).optional()
|
|
6198
|
+
page_size: external_exports.string().regex(/^\d+$/).optional(),
|
|
6199
|
+
// Cursor for the continuous-history scroll (chat hubs): with status='archived',
|
|
6200
|
+
// return only conversations that ended strictly before this instant. The caller
|
|
6201
|
+
// passes the oldest warm-index `ended_at` so the CH superset excludes the
|
|
6202
|
+
// already-loaded warm slice. UTC ISO-8601 (Timestamps standard) — datetime()
|
|
6203
|
+
// hardens it before it reaches the parameterized CH predicate.
|
|
6204
|
+
before_ended_at: external_exports.string().datetime().optional()
|
|
6157
6205
|
});
|
|
6158
6206
|
getMessagesQuery = external_exports.object({
|
|
6159
6207
|
hub_id: external_exports.string().uuid(),
|
|
@@ -6193,6 +6241,15 @@ var init_dist = __esm({
|
|
|
6193
6241
|
last_viewed_nav: external_exports.string().regex(pathnameRegex, "Must be a URL pathname").max(2048).optional(),
|
|
6194
6242
|
dismissed_agentic_shortcut: external_exports.boolean().optional()
|
|
6195
6243
|
}).passthrough();
|
|
6244
|
+
registerPushTokenBody = external_exports.object({
|
|
6245
|
+
token: external_exports.string().min(1).max(512),
|
|
6246
|
+
platform: external_exports.enum(["ios", "android"]),
|
|
6247
|
+
/** Stable per-install id so re-registration replaces the prior token for the device. */
|
|
6248
|
+
device_id: external_exports.string().min(1).max(128).optional()
|
|
6249
|
+
});
|
|
6250
|
+
deletePushTokenQuery = external_exports.object({
|
|
6251
|
+
token: external_exports.string().min(1).max(512)
|
|
6252
|
+
});
|
|
6196
6253
|
activityQuery = external_exports.object({
|
|
6197
6254
|
limit: external_exports.coerce.number().int().min(1).max(100).optional()
|
|
6198
6255
|
});
|
|
@@ -6799,6 +6856,23 @@ var init_dist = __esm({
|
|
|
6799
6856
|
logoutResponse = external_exports.object({
|
|
6800
6857
|
success: external_exports.literal(true)
|
|
6801
6858
|
});
|
|
6859
|
+
magicCodeSendBody = external_exports.object({
|
|
6860
|
+
email: external_exports.string().email("Invalid email").max(254)
|
|
6861
|
+
// RFC 5321 max; bounds the request payload
|
|
6862
|
+
});
|
|
6863
|
+
magicCodeSendResponse = external_exports.object({
|
|
6864
|
+
success: external_exports.literal(true)
|
|
6865
|
+
});
|
|
6866
|
+
magicCodeVerifyBody = external_exports.object({
|
|
6867
|
+
email: external_exports.string().email("Invalid email").max(254),
|
|
6868
|
+
// RFC 5321 max; bounds the request payload
|
|
6869
|
+
code: external_exports.string().min(1, "Code is required").max(12)
|
|
6870
|
+
// WorkOS sends a 6-digit code; bound the input
|
|
6871
|
+
});
|
|
6872
|
+
magicCodeVerifyResponse = external_exports.object({
|
|
6873
|
+
access_token: external_exports.string(),
|
|
6874
|
+
refresh_token: external_exports.string()
|
|
6875
|
+
});
|
|
6802
6876
|
browserParams = external_exports.object({
|
|
6803
6877
|
hubId: uuidSchema,
|
|
6804
6878
|
resourceId: uuidSchema
|
|
@@ -8230,7 +8304,7 @@ async function exchangeCodeForTokens(authkitDomain, clientId, code, codeVerifier
|
|
|
8230
8304
|
});
|
|
8231
8305
|
if (!response.ok) {
|
|
8232
8306
|
const body = await response.text();
|
|
8233
|
-
throw new Error(`Token exchange failed (${response.status}): ${body}`);
|
|
8307
|
+
throw new Error(`Token exchange failed (${response.status}): ${redactSecrets(body)}`);
|
|
8234
8308
|
}
|
|
8235
8309
|
return response.json();
|
|
8236
8310
|
}
|
|
@@ -8256,7 +8330,7 @@ async function refreshAccessToken(authkitDomain, clientId, refreshToken) {
|
|
|
8256
8330
|
}
|
|
8257
8331
|
if (isInvalidGrant) throw new Error("SESSION_EXPIRED");
|
|
8258
8332
|
}
|
|
8259
|
-
throw new Error(`Token refresh failed (${status}): ${body}`);
|
|
8333
|
+
throw new Error(`Token refresh failed (${status}): ${redactSecrets(body)}`);
|
|
8260
8334
|
}
|
|
8261
8335
|
return response.json();
|
|
8262
8336
|
}
|
|
@@ -8388,6 +8462,7 @@ var init_auth = __esm({
|
|
|
8388
8462
|
init_config();
|
|
8389
8463
|
init_token_store();
|
|
8390
8464
|
init_sentry();
|
|
8465
|
+
init_redact();
|
|
8391
8466
|
OAUTH_CALLBACK_PORT = 3829;
|
|
8392
8467
|
AUTHKIT_DOMAIN = "https://sprightly-comic-51.authkit.app";
|
|
8393
8468
|
AUTHKIT_CLIENT_ID = "client_01KMZHB50KENM5SV90ZA80VXK4";
|
|
@@ -11311,9 +11386,58 @@ function printResultsTable(results, mode) {
|
|
|
11311
11386
|
console.log(`
|
|
11312
11387
|
Overall: ${totalPassed}/${totalTerminal} passed (${pct}%)${inProgressNote}`);
|
|
11313
11388
|
}
|
|
11389
|
+
function truncate(str, maxLen) {
|
|
11390
|
+
if (str.length <= maxLen) return str;
|
|
11391
|
+
return str.slice(0, maxLen - 3) + "...";
|
|
11392
|
+
}
|
|
11393
|
+
function summarizeResponse(resp, maxLen = 80) {
|
|
11394
|
+
if (!resp) return "(none)";
|
|
11395
|
+
const parts = [];
|
|
11396
|
+
const content = typeof resp.content === "string" ? resp.content.trim() : "";
|
|
11397
|
+
if (content) parts.push(`"${truncate(content, maxLen)}"`);
|
|
11398
|
+
if (resp.tool_calls && resp.tool_calls.length > 0) {
|
|
11399
|
+
parts.push(
|
|
11400
|
+
resp.tool_calls.map((tc) => `${tc.function.name}(${truncate(tc.function.arguments, maxLen)})`).join(", ")
|
|
11401
|
+
);
|
|
11402
|
+
}
|
|
11403
|
+
return parts.length > 0 ? parts.join(" + ") : "(empty)";
|
|
11404
|
+
}
|
|
11405
|
+
function isFailingRun(run) {
|
|
11406
|
+
if (run.run_status && !TERMINAL_RUN_STATUSES.has(run.run_status)) return false;
|
|
11407
|
+
return run.response_match !== true;
|
|
11408
|
+
}
|
|
11409
|
+
function printFailingRuns(runs) {
|
|
11410
|
+
const failing = runs.filter(isFailingRun);
|
|
11411
|
+
if (failing.length === 0) return;
|
|
11412
|
+
console.log(`
|
|
11413
|
+
Failures (${failing.length}):`);
|
|
11414
|
+
let anyComment = false;
|
|
11415
|
+
for (const run of failing) {
|
|
11416
|
+
const evalName = run.eval?.eval_name || run.eval_id?.slice(0, 8) || "eval";
|
|
11417
|
+
console.log(` ${evalName} \u2014 Run #${run.run_number} [FAIL]`);
|
|
11418
|
+
if (run.error_message) {
|
|
11419
|
+
console.log(` Error: ${run.error_message}`);
|
|
11420
|
+
}
|
|
11421
|
+
if (run.response_comment) {
|
|
11422
|
+
anyComment = true;
|
|
11423
|
+
console.log(` Why: ${run.response_comment}`);
|
|
11424
|
+
}
|
|
11425
|
+
if (run.expected_response) {
|
|
11426
|
+
console.log(` Expected: ${summarizeResponse(run.expected_response)}`);
|
|
11427
|
+
console.log(` Actual: ${summarizeResponse(run.eval_response)}`);
|
|
11428
|
+
}
|
|
11429
|
+
}
|
|
11430
|
+
if (!anyComment) {
|
|
11431
|
+
console.log(`
|
|
11432
|
+
${NO_EVALUATOR_NOTES_HINT}`);
|
|
11433
|
+
}
|
|
11434
|
+
}
|
|
11435
|
+
var NO_EVALUATOR_NOTES_HINT, TERMINAL_RUN_STATUSES;
|
|
11314
11436
|
var init_eval_format = __esm({
|
|
11315
11437
|
"src/lib/eval-format.ts"() {
|
|
11316
11438
|
"use strict";
|
|
11439
|
+
NO_EVALUATOR_NOTES_HINT = "No evaluator notes found \u2014 add a `notes` evaluation variable to the message_evaluator agent to surface its reasoning here.";
|
|
11440
|
+
TERMINAL_RUN_STATUSES = /* @__PURE__ */ new Set(["completed", "failed"]);
|
|
11317
11441
|
}
|
|
11318
11442
|
});
|
|
11319
11443
|
|
|
@@ -11434,6 +11558,16 @@ Lost connection to the eval session: ${extractApiMessage(err)}`);
|
|
|
11434
11558
|
console.log(`Session ${session.session_status}: ${session.session_name} (${session.eval_session_id})
|
|
11435
11559
|
`);
|
|
11436
11560
|
printResultsTable(results, "compact");
|
|
11561
|
+
if (results.some((r) => r.failed_runs > 0)) {
|
|
11562
|
+
try {
|
|
11563
|
+
const runsResult = await client.getEvalSessionRuns(hubId, sessionId);
|
|
11564
|
+
printFailingRuns(runsResult.data.runs);
|
|
11565
|
+
} catch (err) {
|
|
11566
|
+
console.error(`
|
|
11567
|
+
Could not load failure details (${extractApiMessage(err)}).`);
|
|
11568
|
+
console.error(`See: wayai eval-results --session ${sessionId} --runs`);
|
|
11569
|
+
}
|
|
11570
|
+
}
|
|
11437
11571
|
return;
|
|
11438
11572
|
}
|
|
11439
11573
|
process.stdout.write(`\rRunning... ${completedRuns}/${totalRuns} completed`);
|
|
@@ -11593,6 +11727,7 @@ async function showRunDetails(client, hubId, sessionId, evalNameFilter, jsonOutp
|
|
|
11593
11727
|
console.log("No runs found.");
|
|
11594
11728
|
return;
|
|
11595
11729
|
}
|
|
11730
|
+
let anyComment = false;
|
|
11596
11731
|
for (const run of runsResult.data.runs) {
|
|
11597
11732
|
const evalName = run.eval?.eval_name || run.eval_id.slice(0, 8);
|
|
11598
11733
|
const status = run.response_match === true ? "PASS" : run.response_match === false ? "FAIL" : "PENDING";
|
|
@@ -11607,7 +11742,11 @@ async function showRunDetails(client, hubId, sessionId, evalNameFilter, jsonOutp
|
|
|
11607
11742
|
console.log(` ${tc.function.name}(${truncate(tc.function.arguments, 80)})`);
|
|
11608
11743
|
}
|
|
11609
11744
|
}
|
|
11745
|
+
if (run.response_match === false && run.expected_response) {
|
|
11746
|
+
console.log(` Expected: ${summarizeResponse(run.expected_response)}`);
|
|
11747
|
+
}
|
|
11610
11748
|
if (run.response_comment) {
|
|
11749
|
+
anyComment = true;
|
|
11611
11750
|
console.log(` Comment: ${run.response_comment}`);
|
|
11612
11751
|
}
|
|
11613
11752
|
if (run.scores && Object.keys(run.scores).length > 0) {
|
|
@@ -11616,10 +11755,9 @@ async function showRunDetails(client, hubId, sessionId, evalNameFilter, jsonOutp
|
|
|
11616
11755
|
}
|
|
11617
11756
|
console.log("");
|
|
11618
11757
|
}
|
|
11619
|
-
|
|
11620
|
-
|
|
11621
|
-
|
|
11622
|
-
return str.slice(0, maxLen - 3) + "...";
|
|
11758
|
+
if (!anyComment) {
|
|
11759
|
+
console.log(NO_EVALUATOR_NOTES_HINT);
|
|
11760
|
+
}
|
|
11623
11761
|
}
|
|
11624
11762
|
var init_eval_results = __esm({
|
|
11625
11763
|
"src/commands/eval-results.ts"() {
|
|
@@ -12105,7 +12243,7 @@ function refineHubAsCodeKanbanStatuses2(config, ctx) {
|
|
|
12105
12243
|
}
|
|
12106
12244
|
}
|
|
12107
12245
|
}
|
|
12108
|
-
var uuidSchema2, paginationSchema3, timestampSchema2, idParamSchema2, primaryRegionSchema2, placementSourceSchema2, orgIdParam2, orgAdminIdParam2, createOrganizationBody2, updateOrganizationBody2, addOrgAdminBody2, AUTH_TYPE2, ORG_CREDENTIAL_AUTH_TYPES2, AUTH_TYPE_DISPLAY2, LEGACY_AUTH_TYPE_MAP2, VALID_AUTH_TYPES2, AGENT_ROLES2, SAFE_USER_ID_REGEX2, SUMMARIZATION_THRESHOLD_MIN2, SUMMARIZATION_THRESHOLD_MAX2, summarizationThresholdField2, monitorConfigField2, agentIdParam2, listAgentsQuery2, agentConnectionsQuery2, createAgentBody2, updateAgentBody2, SLUG_REGEX2, slugSchema2, INVISIBLE_NAME_CHARS2, MAX_KANBAN_STATUSES2, MAX_FOLLOWUPS_PER_STATUS2, MAX_ADDITIONAL_CONTEXT_SCHEMA_BYTES2, RESERVED_TEMPLATE_DUMP_NAME2, kanbanStatusSlugSchema2, followupSchema2, EXCLUSIVE_FLAG_PAIRS2, kanbanStatusSchema2, kanbanStatusesArraySchema2, hubIdParam2, hubAdminIdParam2, hubUserIdParam2, hubIdentityIdParam2, hubTeamIdParam2, hubTeamUserDeleteParam2, hubSchemaQuery2, createHubBody2, updateHubBody2, addHubAdminBody2, addHubIdentityAuthorizationBody2, contactDecisionBody2, approveContactBody2, listContactAccessQuery2, createHubTeamBody2, updateHubTeamBody2, addHubTeamUserBody2, reassignHubUserBody2, replicatePreviewBody2, claimCodeChannelParam2, claimCodeDeleteParam2, connectionIdParam2, connectorIdParam2, listConnectionsQuery2, deleteConnectionQuery2, addConnectionBody2, editConnectionBody2, registerWhatsappQuery2, registerWhatsappBody2, retryProvisioningQuery2, resendDomainStatusQuery2, PLACEHOLDER_TOKENS2, ALLOWED_TYPES2, SUBSCHEMA_OBJECT_KEYWORDS2, SUBSCHEMA_LIST_KEYWORDS2, SUBSCHEMA_MAP_KEYWORDS2, MAX_SCHEMA_DEPTH2, toolIdParam2, listToolsQuery2, toolAgentQuery2, deleteToolQuery2, toolConnectionsQuery2, nativeToolIdSchema2, addNativeToolBody2, addMcpToolBody2, createCustomToolBody2, updateCustomToolBody2, updateToolExecutionConfigBody2, initialValueCreateSchema2, initialValueUpdateSchema2, stateIdParam2, listStatesQuery2, stateNameSchema2, createStateBody2, updateStateBody2, reorderStatesBody2, orgTagIdParam2, listOrgTagsQuery2, createOrgTagBody2, updateOrgTagBody2, orgCredentialIdParam2, listOrgCredentialsQuery2, createOrgCredentialBody2, updateOrgCredentialBody2, orgResourceIdParam2, orgResourceFileIdParam2, orgResourceFolderIdParam2, hubOrgResourceParam2, listOrgResourcesQuery2, orgIdQuery2, createOrgResourceBody2, updateOrgResourceBody2, createOrgResourceFolderBody2, updateOrgResourceFolderBody2, uploadOrgResourceFileBody2, updateOrgResourceFileBody2, uploadOrgSkillZipBody2, linkOrgResourceBody2, resourceIdParam2, listResourcesQuery2, createResourceBody2, updateResourceBody2, syncSkillsBody2, resourceFileIdParam2, listResourceFilesQuery2, createResourceFileBody2, updateResourceFileBody2, uploadResourceFileBody2, uploadSkillZipBody2, resourceFolderIdParam2, listResourceFoldersQuery2, createResourceFolderBody2, updateResourceFolderBody2, agentResourceQuery2, hubResourceQuery2, linkAgentResourceBody2, updateAgentResourceBody2, unlinkAgentResourceQuery2, navItemSchema2, hubCountResetBody2, navItemCountResetBody2, typingBody2, analyticsHubIdParam2, analyticsVariableIdParam2, updateVariablePinBody2, updateAnalyticsViewBody2, NUMERIC_FILTER_OPS2, TEXT_FILTER_OPS2, CATEGORICAL_FILTER_OPS2, VARIABLE_FILTER_OPS2, STRUCTURED_QUERY_OPS2, STRUCTURED_QUERY_AGGREGATIONS2, filterValueSchema2, conversationsBody2, analyticsConversationIdParam2, messagesQuery2, conversationDetailDataQuery2, analyticsDataBody2, structuredQueryBody2, analyticsSqlBody2, analyticsSqlSchemaQuery2, PACING_INTERVAL_MIN_MS2, PACING_INTERVAL_MAX_MS2, EVAL_RUN_DEADLINE_MIN_MS2, EVAL_RUN_DEADLINE_MAX_MS2, paginationSchema22, evalIdParam2, sessionIdParam2, scenarioSetIdParam2, hubIdQuery2, createEvalBody2, updateEvalBody2, getEvalsQuery2, toggleEvalBody2, bulkToggleEvalsBody2, pacingConfigSchema2, sessionConfigSchema2, createSessionBody2, getSessionsQuery2, getSessionResultsQuery2, getSessionRunsQuery2, evalAnalyticsQuery2, getSessionCostQuery2, compareSessionsQuery2, evalsSqlBody2, evalsSqlSchemaQuery2, exportResultsQuery2, validateEvalBody2, hubAgentsQuery2, createScenarioSetBody2, updateScenarioSetBody2, scenarioSetsHubQuery2, createScenarioFromConversationBody2, getConversationsQuery2, getMessagesQuery2, updateUserBody2, updateProfileBody2, pathnameRegex2, updatePreferencesBody2, activityQuery2, deletionModeSchema2, deletionRequestBody2, archiveHubIdParam2, archiveConversationParams2, archiveListQuery2, archiveMessageObservabilityParams2, conversationIdParam2, claimBody2, releaseBody2, transferBody2, closeBody2, additionalContextPayloadSchema2, kanbanUpdateBody2, observabilityParams2, observabilityListParams2, deleteUserConversationsBody2, sendMessageBody2, listConversationsQuery2, getConversationDetailParams2, getConversationDetailQuery2, listWhatsAppTemplatesQuery2, sendWhatsAppTemplateBody2, billingOrgIdParam2, subscriptionItemParams2, spendCapBody2, growthPacksBody2, portalSessionBody2, checkoutSessionBody2, updateBillingCurrencyBody2, invoicesQuery2, downloadBody2, uploadQuery2, signUrlBody2, completionsBody2, outboundSchemaQuery2, templateIdParam2, listTemplatesQuery2, deleteTemplateQuery2, templateStatusQuery2, createTemplateBody2, updateTemplateBody2, submitTemplateBody2, testTemplateBody2, contactIdParam2, listContactsQuery2, createContactBody2, updateContactBody2, listIdParam2, listListsQuery2, listListContactsQuery2, createListBody2, updateListBody2, addListContactsBody2, removeListContactsBody2, scheduleIdParam2, listSchedulesQuery2, listExecutionsQuery2, createScheduleBody2, updateScheduleBody2, uuidPattern2, ciUuidSchema2, hubAsCodeConfigSchema2, ciPullHubIdParam2, ciBranchParam2, ciPullQuery2, ciHubsQuery2, ciLookupQuery2, ciBranchesQuery2, ciSyncBody2, ciPushBody2, ciDiffBody2, ciPublishBody2, ciPublishPreviewBody2, ciSyncMcpBody2, ciOrgResourcesParam2, orgResourcesConfigSchema2, ciOrgResourcesPushBody2, ciOrgResourcesDiffBody2, adminOrgIdParam2, adminOrgAdminIdParam2, adminUserIdParam2, adminPlanIdParam2, adminOrganizationsQuery2, adminUserSearchQuery2, kanbanSlugMigrationQuery2, adjustQuotaBody2, updatePlanBody2, addAdminUserBody2, updatePlatformConfigBody2, updateFreeOrgLimitBody2, updatePricingPlanBody2, dataExplorerSearchQuery2, dataExplorerOrgIdParam2, dataExplorerHubIdParam2, dataExplorerConvIdParam2, dataExplorerDoInstancesQuery2, dataExplorerNsIdParam2, dataExplorerKvKeysQuery2, dataExplorerKvKeyParam2, uuidOrHexId2, dataExplorerDeleteOrgParam2, dataExplorerDeleteHubParam2, dataExplorerDeleteConvParam2, dataExplorerDeleteUserParam2, dataExplorerDeleteQuery2, dataExplorerKvDeleteQuery2, pitrDoNamespace2, pitrBookmarkParam2, pitrRestoreBody2, healthSamplingTriggerBody2, dataExplorerDebugDoType2, DEBUG_READ_MAX_LIMIT2, DEBUG_READ_DEFAULT_LIMIT2, DEBUG_DO_HEX_PREFIX2, debugDoEntityId2, debugTableName2, dataExplorerDebugTablesParam2, dataExplorerDebugRowsParam2, dataExplorerDebugRowsQuery2, dataExplorerDebugAnalyticsTable2, debugUuid2, dataExplorerDebugAnalyticsRowsParam2, dataExplorerDebugAnalyticsRowsQuery2, debugHubConvParam2, debugMessageIdQuery2, whatsappCallbackBody2, authMeResponse2, wsTicketResponse2, sessionCheckResponse2, logoutResponse2, browserParams2, browserFoldersQuery2, browserFilesQuery2, stateOperationBody2, conversationListResourcesQuery2, conversationReadResourceQuery2, listPendingSchedulesQuery2, listHubAggregateSchedulesQuery2, reportSourceSchema2, intakeReportSourceSchema2, reportClassificationSchema2, reportStatusSchema2, reportLocaleSchema2, reportMessageAuthorRoleSchema2, sentryRefStatusSchema2, createReportBody2, editReportBody2, contestReportBody2, reporterListQuery2, listReportsQuery2, GITHUB_ISSUE_URL_REGEX2, githubIssueUrlSchema2, transitionReportBody2, groupReportsBody2, holdReportBody2, clickhouseReadyResponse2, bootstrapQuery2, requestSnapshotChunkMessage2, MAX_NAME_LENGTH3, MAX_VALUE_LENGTH2, MAX_TAGS2, MAX_TAG_LENGTH2, MAX_SCOPE_HUBS2, MAX_SCOPE_TAGS2, vaultSecretScopeSchema2, vaultCreateBody2, vaultUpdateBody2, PERMISSIONS2, MAX_NAME_LENGTH22, MAX_HUBS_PER_GRANT2, MAX_HUB_TAGS_PER_GRANT2, MAX_GRANTS2, permissionEnum2, grantScopeSchema2, grantSchema2, createTokenBody2, tokenOrgIdParam2, tokenGrantScopeSchema2, tokenGrantSchema2, tokenMetadataSchema2, listTokensResponse2, createTokenResponse2, orgTokenSummarySchema2, listOrgTokensResponse2, invitePreviewQuery2, invitePreviewResponse2, discordTier2, discordBillingCycle2, discordMetadata2, discordOAuthStartResponse2, discordOAuthFinalizeBody2, discordOAuthFinalizeResponse2, discordDisconnectResponse2, jsonSchemaSchema2, hubUserIdentity2, stateValueEntry2, getHubUserContextResponse2, updateHubUserBody2, updateHubUserResponse2, unlockHubUserNameResponse2, stateResetParams2, stateResetResponse2, hubAlertsParam2, hubAlertSeverity2, hubAlert2, hubAlertsListResponse2, noticeSeveritySchema2, noticeStatusSchema2, NOTICE_SCOPE_REGEX2, noticeScopeSchema2, noticeLinkSchema2, createNoticeBody2, updateNoticeBody2, listNoticesQuery2, noticeIdParamSchema2;
|
|
12246
|
+
var uuidSchema2, paginationSchema3, timestampSchema2, idParamSchema2, primaryRegionSchema2, placementSourceSchema2, orgIdParam2, orgAdminIdParam2, createOrganizationBody2, updateOrganizationBody2, addOrgAdminBody2, AUTH_TYPE2, ORG_CREDENTIAL_AUTH_TYPES2, AUTH_TYPE_DISPLAY2, LEGACY_AUTH_TYPE_MAP2, VALID_AUTH_TYPES2, AGENT_ROLES2, SAFE_USER_ID_REGEX2, SUMMARIZATION_THRESHOLD_MIN2, SUMMARIZATION_THRESHOLD_MAX2, summarizationThresholdField2, monitorConfigField2, agentIdParam2, listAgentsQuery2, agentConnectionsQuery2, createAgentBody2, updateAgentBody2, SLUG_REGEX2, slugSchema2, INVISIBLE_NAME_CHARS2, MAX_KANBAN_STATUSES2, MAX_FOLLOWUPS_PER_STATUS2, MAX_ADDITIONAL_CONTEXT_SCHEMA_BYTES2, RESERVED_TEMPLATE_DUMP_NAME2, kanbanStatusSlugSchema2, followupSchema2, EXCLUSIVE_FLAG_PAIRS2, kanbanStatusSchema2, kanbanStatusesArraySchema2, hubIdParam2, hubAdminIdParam2, hubUserIdParam2, hubIdentityIdParam2, hubTeamIdParam2, hubTeamUserDeleteParam2, hubSchemaQuery2, createHubBody2, updateHubBody2, addHubAdminBody2, addHubIdentityAuthorizationBody2, contactDecisionBody2, approveContactBody2, listContactAccessQuery2, createHubTeamBody2, updateHubTeamBody2, addHubTeamUserBody2, reassignHubUserBody2, replicatePreviewBody2, claimCodeChannelParam2, claimCodeDeleteParam2, connectionIdParam2, connectorIdParam2, listConnectionsQuery2, deleteConnectionQuery2, addConnectionBody2, editConnectionBody2, registerWhatsappQuery2, registerWhatsappBody2, retryProvisioningQuery2, resendDomainStatusQuery2, PLACEHOLDER_TOKENS2, ALLOWED_TYPES2, SUBSCHEMA_OBJECT_KEYWORDS2, SUBSCHEMA_LIST_KEYWORDS2, SUBSCHEMA_MAP_KEYWORDS2, MAX_SCHEMA_DEPTH2, toolIdParam2, listToolsQuery2, toolAgentQuery2, deleteToolQuery2, toolConnectionsQuery2, nativeToolIdSchema2, addNativeToolBody2, addMcpToolBody2, createCustomToolBody2, updateCustomToolBody2, updateToolExecutionConfigBody2, initialValueCreateSchema2, initialValueUpdateSchema2, stateIdParam2, listStatesQuery2, stateNameSchema2, createStateBody2, updateStateBody2, reorderStatesBody2, orgTagIdParam2, listOrgTagsQuery2, createOrgTagBody2, updateOrgTagBody2, orgCredentialIdParam2, listOrgCredentialsQuery2, createOrgCredentialBody2, updateOrgCredentialBody2, orgResourceIdParam2, orgResourceFileIdParam2, orgResourceFolderIdParam2, hubOrgResourceParam2, listOrgResourcesQuery2, orgIdQuery2, createOrgResourceBody2, updateOrgResourceBody2, createOrgResourceFolderBody2, updateOrgResourceFolderBody2, uploadOrgResourceFileBody2, updateOrgResourceFileBody2, uploadOrgSkillZipBody2, linkOrgResourceBody2, resourceIdParam2, listResourcesQuery2, createResourceBody2, updateResourceBody2, syncSkillsBody2, resourceFileIdParam2, listResourceFilesQuery2, createResourceFileBody2, updateResourceFileBody2, uploadResourceFileBody2, uploadSkillZipBody2, resourceFolderIdParam2, listResourceFoldersQuery2, createResourceFolderBody2, updateResourceFolderBody2, agentResourceQuery2, hubResourceQuery2, linkAgentResourceBody2, updateAgentResourceBody2, unlinkAgentResourceQuery2, navItemSchema2, hubCountResetBody2, navItemCountResetBody2, typingBody2, analyticsHubIdParam2, analyticsVariableIdParam2, updateVariablePinBody2, updateAnalyticsViewBody2, NUMERIC_FILTER_OPS2, TEXT_FILTER_OPS2, CATEGORICAL_FILTER_OPS2, VARIABLE_FILTER_OPS2, STRUCTURED_QUERY_OPS2, STRUCTURED_QUERY_AGGREGATIONS2, filterValueSchema2, conversationsBody2, analyticsConversationIdParam2, messagesQuery2, conversationDetailDataQuery2, analyticsDataBody2, structuredQueryBody2, analyticsSqlBody2, analyticsSqlSchemaQuery2, PACING_INTERVAL_MIN_MS2, PACING_INTERVAL_MAX_MS2, EVAL_RUN_DEADLINE_MIN_MS2, EVAL_RUN_DEADLINE_MAX_MS2, paginationSchema22, evalIdParam2, sessionIdParam2, scenarioSetIdParam2, hubIdQuery2, createEvalBody2, updateEvalBody2, getEvalsQuery2, toggleEvalBody2, bulkToggleEvalsBody2, pacingConfigSchema2, sessionConfigSchema2, createSessionBody2, getSessionsQuery2, getSessionResultsQuery2, getSessionRunsQuery2, evalAnalyticsQuery2, getSessionCostQuery2, compareSessionsQuery2, evalsSqlBody2, evalsSqlSchemaQuery2, exportResultsQuery2, validateEvalBody2, hubAgentsQuery2, createScenarioSetBody2, updateScenarioSetBody2, scenarioSetsHubQuery2, createScenarioFromConversationBody2, getConversationsQuery2, getMessagesQuery2, updateUserBody2, updateProfileBody2, pathnameRegex2, updatePreferencesBody2, registerPushTokenBody2, deletePushTokenQuery2, activityQuery2, deletionModeSchema2, deletionRequestBody2, archiveHubIdParam2, archiveConversationParams2, archiveListQuery2, archiveMessageObservabilityParams2, conversationIdParam2, claimBody2, releaseBody2, transferBody2, closeBody2, additionalContextPayloadSchema2, kanbanUpdateBody2, observabilityParams2, observabilityListParams2, deleteUserConversationsBody2, sendMessageBody2, listConversationsQuery2, getConversationDetailParams2, getConversationDetailQuery2, listWhatsAppTemplatesQuery2, sendWhatsAppTemplateBody2, billingOrgIdParam2, subscriptionItemParams2, spendCapBody2, growthPacksBody2, portalSessionBody2, checkoutSessionBody2, updateBillingCurrencyBody2, invoicesQuery2, downloadBody2, uploadQuery2, signUrlBody2, completionsBody2, outboundSchemaQuery2, templateIdParam2, listTemplatesQuery2, deleteTemplateQuery2, templateStatusQuery2, createTemplateBody2, updateTemplateBody2, submitTemplateBody2, testTemplateBody2, contactIdParam2, listContactsQuery2, createContactBody2, updateContactBody2, listIdParam2, listListsQuery2, listListContactsQuery2, createListBody2, updateListBody2, addListContactsBody2, removeListContactsBody2, scheduleIdParam2, listSchedulesQuery2, listExecutionsQuery2, createScheduleBody2, updateScheduleBody2, uuidPattern2, ciUuidSchema2, hubAsCodeConfigSchema2, ciPullHubIdParam2, ciBranchParam2, ciPullQuery2, ciHubsQuery2, ciLookupQuery2, ciBranchesQuery2, ciSyncBody2, ciPushBody2, ciDiffBody2, ciPublishBody2, ciPublishPreviewBody2, ciSyncMcpBody2, ciOrgResourcesParam2, orgResourcesConfigSchema2, ciOrgResourcesPushBody2, ciOrgResourcesDiffBody2, adminOrgIdParam2, adminOrgAdminIdParam2, adminUserIdParam2, adminPlanIdParam2, adminOrganizationsQuery2, adminUserSearchQuery2, kanbanSlugMigrationQuery2, adjustQuotaBody2, updatePlanBody2, addAdminUserBody2, updatePlatformConfigBody2, updateFreeOrgLimitBody2, updatePricingPlanBody2, dataExplorerSearchQuery2, dataExplorerOrgIdParam2, dataExplorerHubIdParam2, dataExplorerConvIdParam2, dataExplorerDoInstancesQuery2, dataExplorerNsIdParam2, dataExplorerKvKeysQuery2, dataExplorerKvKeyParam2, uuidOrHexId2, dataExplorerDeleteOrgParam2, dataExplorerDeleteHubParam2, dataExplorerDeleteConvParam2, dataExplorerDeleteUserParam2, dataExplorerDeleteQuery2, dataExplorerKvDeleteQuery2, pitrDoNamespace2, pitrBookmarkParam2, pitrRestoreBody2, healthSamplingTriggerBody2, dataExplorerDebugDoType2, DEBUG_READ_MAX_LIMIT2, DEBUG_READ_DEFAULT_LIMIT2, DEBUG_DO_HEX_PREFIX2, debugDoEntityId2, debugTableName2, dataExplorerDebugTablesParam2, dataExplorerDebugRowsParam2, dataExplorerDebugRowsQuery2, dataExplorerDebugAnalyticsTable2, debugUuid2, dataExplorerDebugAnalyticsRowsParam2, dataExplorerDebugAnalyticsRowsQuery2, debugHubConvParam2, debugMessageIdQuery2, whatsappCallbackBody2, authMeResponse2, wsTicketResponse2, sessionCheckResponse2, logoutResponse2, magicCodeSendBody2, magicCodeSendResponse2, magicCodeVerifyBody2, magicCodeVerifyResponse2, browserParams2, browserFoldersQuery2, browserFilesQuery2, stateOperationBody2, conversationListResourcesQuery2, conversationReadResourceQuery2, listPendingSchedulesQuery2, listHubAggregateSchedulesQuery2, reportSourceSchema2, intakeReportSourceSchema2, reportClassificationSchema2, reportStatusSchema2, reportLocaleSchema2, reportMessageAuthorRoleSchema2, sentryRefStatusSchema2, createReportBody2, editReportBody2, contestReportBody2, reporterListQuery2, listReportsQuery2, GITHUB_ISSUE_URL_REGEX2, githubIssueUrlSchema2, transitionReportBody2, groupReportsBody2, holdReportBody2, clickhouseReadyResponse2, bootstrapQuery2, requestSnapshotChunkMessage2, MAX_NAME_LENGTH3, MAX_VALUE_LENGTH2, MAX_TAGS2, MAX_TAG_LENGTH2, MAX_SCOPE_HUBS2, MAX_SCOPE_TAGS2, vaultSecretScopeSchema2, vaultCreateBody2, vaultUpdateBody2, PERMISSIONS2, MAX_NAME_LENGTH22, MAX_HUBS_PER_GRANT2, MAX_HUB_TAGS_PER_GRANT2, MAX_GRANTS2, permissionEnum2, grantScopeSchema2, grantSchema2, createTokenBody2, tokenOrgIdParam2, tokenGrantScopeSchema2, tokenGrantSchema2, tokenMetadataSchema2, listTokensResponse2, createTokenResponse2, orgTokenSummarySchema2, listOrgTokensResponse2, invitePreviewQuery2, invitePreviewResponse2, discordTier2, discordBillingCycle2, discordMetadata2, discordOAuthStartResponse2, discordOAuthFinalizeBody2, discordOAuthFinalizeResponse2, discordDisconnectResponse2, jsonSchemaSchema2, hubUserIdentity2, stateValueEntry2, getHubUserContextResponse2, updateHubUserBody2, updateHubUserResponse2, unlockHubUserNameResponse2, stateResetParams2, stateResetResponse2, hubAlertsParam2, hubAlertSeverity2, hubAlert2, hubAlertsListResponse2, noticeSeveritySchema2, noticeStatusSchema2, NOTICE_SCOPE_REGEX2, noticeScopeSchema2, noticeLinkSchema2, createNoticeBody2, updateNoticeBody2, listNoticesQuery2, noticeIdParamSchema2;
|
|
12109
12247
|
var init_contracts = __esm({
|
|
12110
12248
|
"../../packages/core/dist/contracts/index.js"() {
|
|
12111
12249
|
"use strict";
|
|
@@ -13194,7 +13332,13 @@ var init_contracts = __esm({
|
|
|
13194
13332
|
// window). 'archived' = the full closed-conversation history from ClickHouse.
|
|
13195
13333
|
status: external_exports.enum(["active", "agent", "team", "ended", "archived"]).optional(),
|
|
13196
13334
|
page: external_exports.string().regex(/^\d+$/).optional(),
|
|
13197
|
-
page_size: external_exports.string().regex(/^\d+$/).optional()
|
|
13335
|
+
page_size: external_exports.string().regex(/^\d+$/).optional(),
|
|
13336
|
+
// Cursor for the continuous-history scroll (chat hubs): with status='archived',
|
|
13337
|
+
// return only conversations that ended strictly before this instant. The caller
|
|
13338
|
+
// passes the oldest warm-index `ended_at` so the CH superset excludes the
|
|
13339
|
+
// already-loaded warm slice. UTC ISO-8601 (Timestamps standard) — datetime()
|
|
13340
|
+
// hardens it before it reaches the parameterized CH predicate.
|
|
13341
|
+
before_ended_at: external_exports.string().datetime().optional()
|
|
13198
13342
|
});
|
|
13199
13343
|
getMessagesQuery2 = external_exports.object({
|
|
13200
13344
|
hub_id: external_exports.string().uuid(),
|
|
@@ -13234,6 +13378,15 @@ var init_contracts = __esm({
|
|
|
13234
13378
|
last_viewed_nav: external_exports.string().regex(pathnameRegex2, "Must be a URL pathname").max(2048).optional(),
|
|
13235
13379
|
dismissed_agentic_shortcut: external_exports.boolean().optional()
|
|
13236
13380
|
}).passthrough();
|
|
13381
|
+
registerPushTokenBody2 = external_exports.object({
|
|
13382
|
+
token: external_exports.string().min(1).max(512),
|
|
13383
|
+
platform: external_exports.enum(["ios", "android"]),
|
|
13384
|
+
/** Stable per-install id so re-registration replaces the prior token for the device. */
|
|
13385
|
+
device_id: external_exports.string().min(1).max(128).optional()
|
|
13386
|
+
});
|
|
13387
|
+
deletePushTokenQuery2 = external_exports.object({
|
|
13388
|
+
token: external_exports.string().min(1).max(512)
|
|
13389
|
+
});
|
|
13237
13390
|
activityQuery2 = external_exports.object({
|
|
13238
13391
|
limit: external_exports.coerce.number().int().min(1).max(100).optional()
|
|
13239
13392
|
});
|
|
@@ -13840,6 +13993,23 @@ var init_contracts = __esm({
|
|
|
13840
13993
|
logoutResponse2 = external_exports.object({
|
|
13841
13994
|
success: external_exports.literal(true)
|
|
13842
13995
|
});
|
|
13996
|
+
magicCodeSendBody2 = external_exports.object({
|
|
13997
|
+
email: external_exports.string().email("Invalid email").max(254)
|
|
13998
|
+
// RFC 5321 max; bounds the request payload
|
|
13999
|
+
});
|
|
14000
|
+
magicCodeSendResponse2 = external_exports.object({
|
|
14001
|
+
success: external_exports.literal(true)
|
|
14002
|
+
});
|
|
14003
|
+
magicCodeVerifyBody2 = external_exports.object({
|
|
14004
|
+
email: external_exports.string().email("Invalid email").max(254),
|
|
14005
|
+
// RFC 5321 max; bounds the request payload
|
|
14006
|
+
code: external_exports.string().min(1, "Code is required").max(12)
|
|
14007
|
+
// WorkOS sends a 6-digit code; bound the input
|
|
14008
|
+
});
|
|
14009
|
+
magicCodeVerifyResponse2 = external_exports.object({
|
|
14010
|
+
access_token: external_exports.string(),
|
|
14011
|
+
refresh_token: external_exports.string()
|
|
14012
|
+
});
|
|
13843
14013
|
browserParams2 = external_exports.object({
|
|
13844
14014
|
hubId: uuidSchema2,
|
|
13845
14015
|
resourceId: uuidSchema2
|
|
@@ -16691,6 +16861,7 @@ function friendlyHint(err) {
|
|
|
16691
16861
|
}
|
|
16692
16862
|
|
|
16693
16863
|
// src/index.ts
|
|
16864
|
+
init_redact();
|
|
16694
16865
|
init_utils();
|
|
16695
16866
|
|
|
16696
16867
|
// src/lib/version-refresh.ts
|
|
@@ -17072,7 +17243,7 @@ async function runForeground() {
|
|
|
17072
17243
|
captureException2(err);
|
|
17073
17244
|
}
|
|
17074
17245
|
await closeSentry();
|
|
17075
|
-
console.error(err instanceof Error ? err.message : String(err));
|
|
17246
|
+
console.error(redactSecrets(err instanceof Error ? err.message : String(err)));
|
|
17076
17247
|
const hint = friendlyHint(err);
|
|
17077
17248
|
if (hint) console.error(hint);
|
|
17078
17249
|
process.exit(1);
|