@wayai/cli 0.3.190 → 0.3.192

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
@@ -9380,7 +9380,7 @@ var init_chunk_XJDAH2N7 = __esm({
9380
9380
  }
9381
9381
  });
9382
9382
 
9383
- // ../../packages/core/dist/chunk-3LINNTBI.js
9383
+ // ../../packages/core/dist/chunk-GTV7SIKE.js
9384
9384
  function refineLaneReferences(val, ctx) {
9385
9385
  const lanes = val.lanes;
9386
9386
  const statuses = val.kanban_statuses;
@@ -9416,9 +9416,9 @@ function refineScopedTarget(data, ctx) {
9416
9416
  }
9417
9417
  }
9418
9418
  }
9419
- var primaryRegionSchema, placementSourceSchema, orgIdParam, orgAdminIdParam, createOrganizationBody, updateOrganizationBody, addOrgAdminBody, hubIdParam, hubAdminIdParam, hubUserIdParam, hubIdentityIdParam, hubTeamIdParam, hubTeamUserDeleteParam, hubSchemaQuery, PREVIEW_LABEL_MAX_LENGTH, MAX_ENDED_INDEX_RETENTION_DAYS, MAX_EVAL_RETENTION_DAYS, previewLabelField, createHubBody, updateHubBody, addHubAdminBody, addHubIdentityAuthorizationBody, contactDecisionBody, approveContactBody, listContactAccessQuery, createHubTeamBody, updateHubTeamBody, addHubTeamUserBody, reassignHubUserBody, replicatePreviewBody, updateChannelTestIdentitiesBody, claimCodeChannelParam, claimCodeDeleteParam, connectionIdParam, connectorIdParam, listConnectionsQuery, deleteConnectionQuery, addConnectionBody, editConnectionBody, PRODUCTION_DIRECT_FIELDS, setProductionCredentialBody, registerWhatsappQuery, registerWhatsappBody, retryProvisioningQuery, resendDomainStatusQuery, initialValueCreateSchema, initialValueUpdateSchema, stateIdParam, listStatesQuery, stateNameSchema, createStateBody, updateStateBody, reorderStatesBody, variantAiModeSchema, experimentStatusSchema, overlayUpdateSchema, experimentIdParam, variantIdParam, listExperimentsQuery, listVariantsQuery, listOverridesQuery, deleteOverrideQuery, createExperimentBody, updateExperimentBody, setExperimentStatusBody, createVariantBody, updateVariantBody, upsertOverrideBody, orgTagIdParam, listOrgTagsQuery, ORG_TAG_NAME_REGEX, ORG_TAG_NAME_MAX_LENGTH, createOrgTagBody, updateOrgTagBody, orgCredentialIdParam, listOrgCredentialsQuery, createOrgCredentialBody, updateOrgCredentialBody, BASE_CREDENTIAL_MANAGED_BY, BASE_CREDENTIAL_NAME_MAX, baseCredentialNameSchema, createBaseCredentialLinkBody, baseCredentialLinkParams, baseCredentialLinkQuery, 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, analyticsSqlTable, analyticsSqlSchemaQuery, getConversationsQuery, getMessagesQuery, appMessageSenderType, appMessageReceiverType, apiChannelMessage, apiChannelMessageBody, appMessageBody, appMessageResponse, CALL_STATUSES, callStatus, CALL_END_REASONS, callEndReason, CALL_TRANSPORTS, callTransport, CALL_PARTICIPANT_TYPES, callParticipantType, callInstant, MAX_SDP_OFFER_LENGTH, sdpDescription, sdpOffer, MAX_CALL_REQUEST_BODY_BYTES, hubScoped, callSummaryFields, callSummary, callIdParam, createCallBody, createCallResponse, callReadyBody, callHangupBody, callStatusQuery, MAX_REPORTED_DELEGATION_IDS, callDelegationId, callDelegationsBody, callResponse, MAX_CALL_RECORDING_GAPS, callRecordingGap, callRecordingNoteMetadata, evalCallInstant, EVAL_CALL_MIN_SECONDS, EVAL_CALL_MAX_SECONDS, EVAL_CALL_SPOKEN_LINE_MAX_CHARS, hubScoped2, createEvalCallBody, createEvalCallResponse, evalCallConversationQuery, evalCallRecordQuery, evalCallSpeaker, evalCallUtterance, evalCallTurn, evalCallRecording, evalCallRecordResponse, evalCallFinishResponse, updateUserBody, updateProfileBody, pathnameRegex, updatePreferencesBody, registerPushTokenBody, deletePushTokenQuery, recordAiDisclosureAcceptanceBody, activityQuery, deletionModeSchema, deletionRequestBody, CACHE_RECONCILE_MAX_IDS, CACHE_RECONCILE_MAX_HUBS, cacheReconcileScopeSchema, cachedConversationPageSchema, cachedHistoryThreadSchema, cachedPeopleThreadSchema, cacheReconcileBody, archiveHubIdParam, archiveConversationParams, archiveListQuery, archiveMessageObservabilityParams, conversationIdParam, conversationHubQuery, claimBody, releaseBody, transferBody, closeBody, additionalContextPayloadSchema, kanbanUpdateBody, annotateConversationBody, observabilityParams, observabilityListParams, deleteUserConversationsBody, deleteUserConversationsResponse, sendMessageBody, listConversationsQuery, flagSourceSchema, getConversationsResponse, getConversationDetailParams, getConversationDetailQuery, getConversationDetailResponse, listWhatsAppTemplatesQuery, sendWhatsAppTemplateBody, copilotSuggestBody, copilotSuggestResponse, CONSULT_THREAD_STATUSES, consultThreadStatus, CONSULT_THREAD_TITLE_MAX, consultThreadTitle, consultThreadSummary, listConsultThreadsQuery, listConsultThreadsResponse, createConsultThreadBody, createConsultThreadResponse, consultThreadIdParam, updateConsultThreadBody, updateConsultThreadResponse, CONSULT_AWAIT_TIMEOUT_MS, billingOrgIdParam, subscriptionItemParams, spendCapBody, growthPacksBody, portalSessionBody, checkoutSessionBody, updateBillingCurrencyBody, invoicesQuery, planKeySchema, billingStatusSchema, billingPlanTypeSchema, dataUsageCountersSchema, REKOR_ENTITLEMENT_CONTRACT_VERSION, entitlementProjectionSchema, rekorEntitlementRefreshMessageSchema, downloadBody, uploadQuery, SIGN_URL_MAX_EXPIRES_IN_SECONDS, signUrlBody, 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, VERSION_PART, MOBILE_APP_VERSION_RE, mobileAppVersionSchema, MOBILE_PLATFORMS, mobilePlatformSchema, mobileVersionPolicyQuery, mobileVersionPolicySchema, mobileVersionPolicyResponse, adminOrgIdParam, adminOrgAdminIdParam, adminUserIdParam, PRICING_PLAN_ID_RE, adminPlanIdParam, adminOrganizationsQuery, adminUserSearchQuery, kanbanSlugMigrationQuery, adjustQuotaBody, updatePlanBody, addAdminUserBody, MAX_VOICE_CALL_MINUTE_OPS, voiceCallMinuteOps, updatePlatformConfigBody, updateFreeOrgLimitBody, adminScopedTargetShape, adminScopedTargetBody, BRANCHING_ORPHAN_ENTITY_TYPES, BRANCHING_ORPHAN_MAX_TARGETS, adminRepairBranchingOrphansBody, adminRepairLegacyOrgGrantsBody, adminRepairCompedPlansBody, updatePricingPlanBody, dataExplorerSearchQuery, dataExplorerOrgIdParam, dataExplorerHubIdParam, dataExplorerConvIdParam, dataExplorerDoInstancesQuery, dataExplorerNsIdParam, dataExplorerKvKeysBody, dataExplorerKvKeyBody, uuidOrHexId, dataExplorerDeleteOrgParam, dataExplorerDeleteHubParam, dataExplorerDeleteConvParam, dataExplorerDeleteUserParam, dataExplorerDeleteQuery, dataExplorerKvDeleteBody, pitrDoNamespace, pitrBookmarkParam, pitrRestoreBody, healthSamplingTriggerBody, dataExplorerDebugDoType, DEBUG_READ_MAX_LIMIT, DEBUG_READ_DEFAULT_LIMIT, DEBUG_DO_HEX_PREFIX, debugDoEntityId, debugTableName, dataExplorerDebugTablesParam, dataExplorerDebugRowsParam, dataExplorerDebugRowsQuery, dataExplorerDebugAnalyticsTable, debugUuid, dataExplorerDebugAnalyticsRowsParam, dataExplorerDebugAnalyticsRowsQuery, debugHubConvParam, debugMessageIdQuery, sandboxEgressPolicy, SANDBOX_EXEC_MAX_CMD_LENGTH, SANDBOX_EXEC_MAX_ALLOWLIST, SANDBOX_EXEC_MAX_TIMEOUT_MS, adminSandboxExecBody, META_ENTITY_ID_PATTERN, metaEntityId, whatsappCallbackBody, authMeResponse, wsTicketResponse, sessionCheckResponse, logoutResponse, magicCodeSendBody, magicCodeSendResponse, magicCodeVerifyBody, magicCodeVerifyResponse, passwordLoginBody, stateOperationBody, conversationListResourcesQuery, conversationReadResourceQuery, listPendingSchedulesQuery, listHubAggregateSchedulesQuery, reportSourceSchema, intakeReportSourceSchema, reportClassificationSchema, reportStatusSchema, reportLocaleSchema, reportMessageAuthorRoleSchema, reportMessageSchema, sentryRefStatusSchema, createReportBody, editReportBody, reporterReportSummarySchema, reporterListResponseSchema, getReportResponseSchema, reporterTransitionResponseSchema, contestReportBody, reporterListQuery, listReportsQuery, GITHUB_ISSUE_URL_REGEX, githubIssueUrlSchema, transitionReportBody, groupReportsBody, holdReportBody, clickhouseReadyResponse, bootstrapQuery, MAX_NAME_LENGTH, MAX_VALUE_LENGTH, MAX_TAGS, MAX_TAG_LENGTH, MAX_SCOPE_HUBS, MAX_SCOPE_TAGS, vaultSecretScopeSchema, vaultCreateBody, vaultUpdateBody, MAX_NAME_LENGTH2, MAX_HUBS_PER_GRANT, MAX_HUB_TAGS_PER_GRANT, MAX_GRANTS, permissionEnum, grantScopeSchema, grantSchema, createTokenBody, tokenOrgIdParam, invitePreviewQuery, inviteRolePreviewResponse, inviteContactPreviewResponse, invitePreviewResponse, inviteUnsubscribeBody, jsonSchemaSchema, hubUserIdentity, stateValueEntry, getHubUserContextResponse, updateHubUserBody, updateHubUserResponse, unlockHubUserNameResponse, stateResetParams, stateResetResponse, hubAlertsParam, hubAlertSeverity, hubAlert, hubAlertsListResponse, noticeSeveritySchema, noticeStatusSchema, NOTICE_SCOPE_REGEX, noticeScopeSchema, noticeLinkSchema, createNoticeBody, updateNoticeBody, listNoticesQuery, noticeIdParamSchema, ADMIN_SKILL_NAME_REGEX, adminSkillNameParam, REKOR_ACTOR_TYPE_HEADER, REKOR_ACTOR_ID_HEADER, REKOR_ACTOR_LABEL_HEADER, REKOR_ACTOR_ORG_HEADER, REKOR_ACTOR_ADMIN_HEADER, REKOR_CLIENT_HEADER, REKOR_TOOL_ID_HEADER, REKOR_CLIENTS, rekorClientSchema, MAX_REKOR_TOOL_ID_LENGTH, rekorToolIdSchema, DATA_PROXY_MOUNT, DATA_PROXY_PREFIX, REKOR_V1_PREFIX, DATA_PROXY_ORG_QUERY_PARAM, MAX_PROVISIONING_BODY_BYTES, dataProxyQuery, rekorAttestation, REQUIRED_REKOR_ATTESTATION_HEADERS, BASE_DESTRUCTION_MOUNT, BASE_DESTRUCTION_PREFIX, BASE_DESTRUCTION_CONFIRM_PATH, baseDestructionConfirmBody, BASE_DESTRUCTION_GRACE_MS, BASE_DESTRUCTION_CONFIRM_TTL_MS, BASE_DESTRUCTION_ORG_QUERY_PARAM, baseDestructionQuery, baseDestructionParam, baseDestructionInitiateBody, baseDestructionStatus, baseDestructionRequest, baseDestructionListResponse, baseDestructionInitiateResponse, baseDestructionConfirmResponse, baseDestructionCancelResponse, rekorBaseChangeMessageSchema, PEOPLE_CONTACT_PAGE_MAX, PEOPLE_CONTACT_PAGE_DEFAULT, PEOPLE_CONTACT_EMAIL_MAX_LENGTH, peopleUserIdSchema, peopleInviteEmailSchema, peopleContactInviteBody, peopleContactInviteIdParam, peopleContactUserIdParam, peopleContactBlockBody, peopleContactPageQuery, peopleOutgoingInviteSchema, peopleContactPersonSchema, peopleContactSchema, peopleIncomingInviteSchema, peopleBlockedUserSchema, PEOPLE_THREAD_MESSAGE_MAX_LENGTH, PEOPLE_THREAD_MESSAGES_PAGE_MAX, PEOPLE_THREAD_PAGE_MAX, PEOPLE_THREAD_PAGE_DEFAULT, PEOPLE_GROUP_NAME_MAX_LENGTH, PEOPLE_GROUP_AVATAR_URL_MAX_LENGTH, PEOPLE_THREAD_ATTACHMENT_MAX_BYTES, PEOPLE_THREAD_ATTACHMENT_NAME_MAX_LENGTH, PEOPLE_ATTACHMENT_STORAGE_PER_USER_BYTES, PEOPLE_THREAD_ATTACHMENT_MAX_MB, PEOPLE_THREAD_ATTACHMENT_URL_TTL_SECONDS, PEOPLE_THREAD_ATTACHMENT_URLS_MAX, peopleThreadIdParam, peopleThreadMessageIdParam, peopleThreadListQuery, peopleThreadMessagesQuery, peopleThreadAttachmentUploadSchema, peopleThreadSendBody, peopleThreadAttachmentUrlsBody, peopleThreadReadBody, peopleThreadSettingsBody, peopleGroupNameSchema, peopleGroupAvatarUrlSchema, peopleGroupCreateBody, peopleOrgDirectBody, peopleGroupUpdateBody, peopleGroupInviteBody, peopleOrgErasureBody, peopleGroupLeaveBody, peopleGroupInviteIdParam, peopleGroupIncomingInviteIdParam, peopleGroupMemberParam, peopleThreadKindSchema, peopleThreadMemberSchema, peopleThreadLastMessageSchema, peopleGroupRoleSchema, peopleGroupSummarySchema, peopleThreadSummarySchema, peopleThreadAttachmentSchema, peopleThreadMessageSchema, peopleGroupMemberSchema, peopleGroupSentInviteSchema, peopleGroupIncomingInviteSchema, PEOPLE_REPORT_DETAILS_MAX_LENGTH, peopleReportReasonSchema, reportDetailsSchema, reportFields, peopleReportBody, PEOPLE_MODERATION_NOTE_MAX_LENGTH, ADMIN_PEOPLE_REPORTS_PAGE_MAX, ADMIN_PEOPLE_REPORTS_PAGE_DEFAULT, peopleModerationActionSchema, moderationNoteSchema, adminPeopleReportListQuery, adminPeopleReportIdParam, adminPeopleMessageRemovalBody, adminPeopleSuspendBody, adminPeopleNoteBody, COMMUNITIES_PER_ORG_MAX, COMMUNITY_NAME_MAX_LENGTH, COMMUNITY_REGISTRY_CLOSED_REASON, communityNameSchema, adminCreateCommunityBody;
9420
- var init_chunk_3LINNTBI = __esm({
9421
- "../../packages/core/dist/chunk-3LINNTBI.js"() {
9419
+ var primaryRegionSchema, placementSourceSchema, orgIdParam, orgAdminIdParam, createOrganizationBody, updateOrganizationBody, addOrgAdminBody, hubIdParam, hubAdminIdParam, hubUserIdParam, hubIdentityIdParam, hubTeamIdParam, hubTeamUserDeleteParam, hubSchemaQuery, PREVIEW_LABEL_MAX_LENGTH, MAX_ENDED_INDEX_RETENTION_DAYS, MAX_EVAL_RETENTION_DAYS, previewLabelField, createHubBody, updateHubBody, addHubAdminBody, addHubIdentityAuthorizationBody, contactDecisionBody, approveContactBody, listContactAccessQuery, createHubTeamBody, updateHubTeamBody, addHubTeamUserBody, reassignHubUserBody, replicatePreviewBody, updateChannelTestIdentitiesBody, claimCodeChannelParam, claimCodeDeleteParam, connectionIdParam, connectorIdParam, listConnectionsQuery, deleteConnectionQuery, addConnectionBody, editConnectionBody, PRODUCTION_DIRECT_FIELDS, setProductionCredentialBody, registerWhatsappQuery, registerWhatsappBody, retryProvisioningQuery, resendDomainStatusQuery, initialValueCreateSchema, initialValueUpdateSchema, stateIdParam, listStatesQuery, stateNameSchema, createStateBody, updateStateBody, reorderStatesBody, variantAiModeSchema, experimentStatusSchema, overlayUpdateSchema, experimentIdParam, variantIdParam, listExperimentsQuery, listVariantsQuery, listOverridesQuery, deleteOverrideQuery, createExperimentBody, updateExperimentBody, setExperimentStatusBody, createVariantBody, updateVariantBody, upsertOverrideBody, orgTagIdParam, listOrgTagsQuery, ORG_TAG_NAME_REGEX, ORG_TAG_NAME_MAX_LENGTH, createOrgTagBody, updateOrgTagBody, orgCredentialIdParam, listOrgCredentialsQuery, createOrgCredentialBody, updateOrgCredentialBody, BASE_CREDENTIAL_MANAGED_BY, BASE_CREDENTIAL_NAME_MAX, baseCredentialNameSchema, createBaseCredentialLinkBody, baseCredentialLinkParams, baseCredentialLinkQuery, 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, analyticsSqlTable, analyticsSqlSchemaQuery, getConversationsQuery, getMessagesQuery, appMessageSenderType, appMessageReceiverType, apiChannelMessage, apiChannelMessageBody, appMessageBody, appMessageResponse, CALL_STATUSES, callStatus, CALL_END_REASONS, callEndReason, CALL_TRANSPORTS, callTransport, CALL_PARTICIPANT_TYPES, callParticipantType, callInstant, MAX_SDP_OFFER_LENGTH, sdpDescription, sdpOffer, MAX_CALL_REQUEST_BODY_BYTES, hubScoped, callSummaryFields, callSummary, callIdParam, createCallBody, createCallResponse, callReadyBody, callHangupBody, callStatusQuery, MAX_REPORTED_DELEGATION_IDS, callDelegationId, callDelegationsBody, callResponse, MAX_CALL_RECORDING_GAPS, callRecordingGap, callRecordingNoteMetadata, evalCallInstant, EVAL_CALL_MIN_SECONDS, EVAL_CALL_MAX_SECONDS, EVAL_CALL_SPOKEN_LINE_MAX_CHARS, hubScoped2, createEvalCallBody, createEvalCallResponse, evalCallConversationQuery, evalCallRecordQuery, evalCallSpeaker, evalCallUtterance, evalCallTurn, evalCallRecording, evalCallRecordResponse, evalCallFinishResponse, updateUserBody, updateProfileBody, pathnameRegex, updatePreferencesBody, registerPushTokenBody, deletePushTokenQuery, recordAiDisclosureAcceptanceBody, activityQuery, deletionModeSchema, deletionRequestBody, CACHE_RECONCILE_MAX_IDS, CACHE_RECONCILE_MAX_HUBS, cacheReconcileScopeSchema, cachedConversationPageSchema, cachedHistoryThreadSchema, cachedPeopleThreadSchema, cacheReconcileBody, archiveHubIdParam, archiveConversationParams, archiveListQuery, archiveMessageObservabilityParams, conversationIdParam, conversationHubQuery, claimBody, releaseBody, transferBody, closeBody, additionalContextPayloadSchema, kanbanUpdateBody, annotateConversationBody, observabilityParams, observabilityListParams, deleteUserConversationsBody, deleteUserConversationsResponse, sendMessageBody, listConversationsQuery, flagSourceSchema, getConversationsResponse, getConversationDetailParams, getConversationDetailQuery, getConversationDetailResponse, listWhatsAppTemplatesQuery, sendWhatsAppTemplateBody, copilotSuggestBody, copilotSuggestResponse, CONSULT_THREAD_STATUSES, consultThreadStatus, CONSULT_THREAD_TITLE_MAX, consultThreadTitle, consultThreadSummary, listConsultThreadsQuery, listConsultThreadsResponse, createConsultThreadBody, createConsultThreadResponse, consultThreadIdParam, updateConsultThreadBody, updateConsultThreadResponse, CONSULT_AWAIT_TIMEOUT_MS, billingOrgIdParam, subscriptionItemParams, spendCapBody, growthPacksBody, portalSessionBody, checkoutSessionBody, updateBillingCurrencyBody, invoicesQuery, planKeySchema, billingStatusSchema, billingPlanTypeSchema, dataUsageCountersSchema, REKOR_ENTITLEMENT_CONTRACT_VERSION, entitlementProjectionSchema, rekorEntitlementRefreshMessageSchema, downloadBody, uploadQuery, SIGN_URL_MAX_EXPIRES_IN_SECONDS, signUrlBody, 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, VERSION_PART, MOBILE_APP_VERSION_RE, mobileAppVersionSchema, MOBILE_PLATFORMS, mobilePlatformSchema, mobileVersionPolicyQuery, mobileVersionPolicySchema, mobileVersionPolicyResponse, adminOrgIdParam, adminOrgAdminIdParam, adminUserIdParam, PRICING_PLAN_ID_RE, adminPlanIdParam, adminOrganizationsQuery, adminUserSearchQuery, kanbanSlugMigrationQuery, adjustQuotaBody, updatePlanBody, addAdminUserBody, MAX_VOICE_CALL_MINUTE_OPS, voiceCallMinuteOps, updatePlatformConfigBody, updateFreeOrgLimitBody, adminScopedTargetShape, adminScopedTargetBody, BRANCHING_ORPHAN_ENTITY_TYPES, BRANCHING_ORPHAN_MAX_TARGETS, adminRepairBranchingOrphansBody, adminRepairLegacyOrgGrantsBody, adminRepairCompedPlansBody, updatePricingPlanBody, dataExplorerSearchQuery, dataExplorerOrgIdParam, dataExplorerHubIdParam, dataExplorerConvIdParam, dataExplorerDoInstancesQuery, dataExplorerNsIdParam, dataExplorerKvKeysBody, dataExplorerKvKeyBody, uuidOrHexId, dataExplorerDeleteOrgParam, dataExplorerDeleteHubParam, dataExplorerDeleteConvParam, dataExplorerDeleteUserParam, dataExplorerDeleteQuery, dataExplorerKvDeleteBody, pitrDoNamespace, pitrBookmarkParam, pitrRestoreBody, healthSamplingTriggerBody, dataExplorerDebugDoType, DEBUG_READ_MAX_LIMIT, DEBUG_READ_DEFAULT_LIMIT, DEBUG_DO_HEX_PREFIX, debugDoEntityId, debugTableName, dataExplorerDebugTablesParam, dataExplorerDebugRowsParam, dataExplorerDebugRowsQuery, dataExplorerDebugAnalyticsTable, debugUuid, dataExplorerDebugAnalyticsRowsParam, dataExplorerDebugAnalyticsRowsQuery, debugHubConvParam, debugMessageIdQuery, sandboxEgressPolicy, SANDBOX_EXEC_MAX_CMD_LENGTH, SANDBOX_EXEC_MAX_ALLOWLIST, SANDBOX_EXEC_MAX_TIMEOUT_MS, adminSandboxExecBody, META_ENTITY_ID_PATTERN, metaEntityId, whatsappCallbackBody, authMeResponse, wsTicketResponse, sessionCheckResponse, logoutResponse, magicCodeSendBody, magicCodeSendResponse, magicCodeVerifyBody, magicCodeVerifyResponse, passwordLoginBody, stateOperationBody, conversationListResourcesQuery, conversationReadResourceQuery, listPendingSchedulesQuery, listHubAggregateSchedulesQuery, reportSourceSchema, intakeReportSourceSchema, reportClassificationSchema, reportStatusSchema, reportLocaleSchema, reportMessageAuthorRoleSchema, reportMessageSchema, sentryRefStatusSchema, createReportBody, editReportBody, reporterReportSummarySchema, reporterListResponseSchema, getReportResponseSchema, reporterTransitionResponseSchema, contestReportBody, reporterListQuery, listReportsQuery, GITHUB_ISSUE_URL_REGEX, githubIssueUrlSchema, transitionReportBody, groupReportsBody, holdReportBody, clickhouseReadyResponse, bootstrapQuery, MAX_NAME_LENGTH, MAX_VALUE_LENGTH, MAX_TAGS, MAX_TAG_LENGTH, MAX_SCOPE_HUBS, MAX_SCOPE_TAGS, vaultSecretScopeSchema, vaultCreateBody, vaultUpdateBody, MAX_NAME_LENGTH2, MAX_HUBS_PER_GRANT, MAX_HUB_TAGS_PER_GRANT, MAX_GRANTS, permissionEnum, grantScopeSchema, grantSchema, createTokenBody, tokenOrgIdParam, invitePreviewQuery, inviteRolePreviewResponse, inviteContactPreviewResponse, invitePreviewResponse, inviteUnsubscribeBody, jsonSchemaSchema, hubUserIdentity, stateValueEntry, getHubUserContextResponse, updateHubUserBody, updateHubUserResponse, unlockHubUserNameResponse, stateResetParams, stateResetResponse, hubAlertsParam, hubAlertSeverity, hubAlert, hubAlertsListResponse, noticeSeveritySchema, noticeStatusSchema, NOTICE_SCOPE_REGEX, noticeScopeSchema, noticeLinkSchema, createNoticeBody, updateNoticeBody, listNoticesQuery, noticeIdParamSchema, ADMIN_SKILL_NAME_REGEX, adminSkillNameParam, REKOR_ACTOR_TYPE_HEADER, REKOR_ACTOR_ID_HEADER, REKOR_ACTOR_LABEL_HEADER, REKOR_ACTOR_ORG_HEADER, REKOR_ACTOR_ADMIN_HEADER, REKOR_CLIENT_HEADER, REKOR_TOOL_ID_HEADER, REKOR_CLIENTS, rekorClientSchema, MAX_REKOR_TOOL_ID_LENGTH, rekorToolIdSchema, DATA_PROXY_MOUNT, DATA_PROXY_PREFIX, REKOR_V1_PREFIX, DATA_PROXY_ORG_QUERY_PARAM, MAX_PROVISIONING_BODY_BYTES, dataProxyQuery, rekorAttestation, REQUIRED_REKOR_ATTESTATION_HEADERS, BASE_DESTRUCTION_MOUNT, BASE_DESTRUCTION_PREFIX, BASE_DESTRUCTION_CONFIRM_PATH, baseDestructionConfirmBody, BASE_DESTRUCTION_GRACE_MS, BASE_DESTRUCTION_CONFIRM_TTL_MS, BASE_DESTRUCTION_ORG_QUERY_PARAM, baseDestructionQuery, baseDestructionParam, baseDestructionInitiateBody, baseDestructionStatus, baseDestructionRequest, baseDestructionListResponse, baseDestructionInitiateResponse, baseDestructionConfirmResponse, baseDestructionCancelResponse, rekorBaseChangeMessageSchema, PEOPLE_CONTACT_PAGE_MAX, PEOPLE_CONTACT_PAGE_DEFAULT, PEOPLE_CONTACT_EMAIL_MAX_LENGTH, peopleUserIdSchema, peopleInviteEmailSchema, peopleContactInviteBody, peopleContactInviteIdParam, peopleContactUserIdParam, peopleContactBlockBody, peopleContactPageQuery, peopleOutgoingInviteSchema, peopleContactPersonSchema, peopleContactSchema, peopleIncomingInviteSchema, peopleBlockedUserSchema, PEOPLE_THREAD_MESSAGE_MAX_LENGTH, PEOPLE_THREAD_MESSAGES_PAGE_MAX, PEOPLE_THREAD_PAGE_MAX, PEOPLE_THREAD_PAGE_DEFAULT, PEOPLE_GROUP_NAME_MAX_LENGTH, PEOPLE_GROUP_AVATAR_URL_MAX_LENGTH, PEOPLE_THREAD_ATTACHMENT_MAX_BYTES, PEOPLE_THREAD_ATTACHMENT_NAME_MAX_LENGTH, PEOPLE_ATTACHMENT_STORAGE_PER_USER_BYTES, PEOPLE_THREAD_ATTACHMENT_MAX_MB, PEOPLE_THREAD_ATTACHMENT_URL_TTL_SECONDS, PEOPLE_THREAD_ATTACHMENT_URLS_MAX, peopleThreadIdParam, peopleThreadMessageIdParam, peopleThreadListQuery, peopleThreadMessagesQuery, peopleThreadAttachmentUploadSchema, peopleThreadSendBody, peopleThreadAttachmentUrlsBody, peopleThreadReadBody, peopleThreadSettingsBody, peopleGroupNameSchema, peopleGroupAvatarUrlSchema, peopleGroupCreateBody, peopleOrgDirectBody, peopleGroupUpdateBody, peopleGroupInviteBody, peopleOrgErasureBody, peopleGroupLeaveBody, peopleGroupInviteIdParam, peopleGroupIncomingInviteIdParam, peopleGroupMemberParam, peopleThreadKindSchema, peopleThreadMemberSchema, peopleThreadLastMessageSchema, peopleGroupRoleSchema, peopleGroupSummarySchema, peopleThreadSummarySchema, peopleThreadAttachmentSchema, peopleThreadMessageSchema, peopleGroupMemberSchema, peopleGroupSentInviteSchema, peopleGroupIncomingInviteSchema, PEOPLE_REPORT_DETAILS_MAX_LENGTH, peopleReportReasonSchema, reportDetailsSchema, reportFields, peopleReportBody, PEOPLE_MODERATION_NOTE_MAX_LENGTH, ADMIN_PEOPLE_REPORTS_PAGE_MAX, ADMIN_PEOPLE_REPORTS_PAGE_DEFAULT, peopleModerationActionSchema, moderationNoteSchema, adminPeopleReportListQuery, adminPeopleReportIdParam, adminPeopleMessageRemovalBody, adminPeopleSuspendBody, adminPeopleNoteBody, COMMUNITIES_PER_ORG_MAX, COMMUNITY_NAME_MAX_LENGTH, COMMUNITY_REGISTRY_CLOSED_REASON, COMMUNITY_JOIN_SOURCE_MAX_LENGTH, COMMUNITY_JOIN_FLOW_TOKEN_MAX_LENGTH, COMMUNITY_ROOM_NAME_MAX_LENGTH, COMMUNITY_MESSAGE_MAX_LENGTH, COMMUNITY_POST_TITLE_MAX_LENGTH, COMMUNITY_POST_SEARCH_MAX_LENGTH, COMMUNITY_RULES_MAX_LENGTH, COMMUNITY_SLOW_MODE_MAX_SECONDS, communityNameSchema, adminCreateCommunityBody, communityIdParam, communityJoinTokenSchema, communityJoinSourceSchema, communityJoinPreviewQuery, communityJoinBody, communityRoomKindSchema, communityRoomNameSchema, communityRoomIdParam, communityMessageIdParam, communityRoomCreateBody, communityRoomUpdateBody, communityMessagesQuery, communityMessageBodySchema, communityPostTitleSchema, communitySendBody, communityEditBody, communityPostIdParam, communityPostsQuery, communityAnswerBody, communityReadBody, communityPersonParam, communityOrgParam, communityPeopleQuery, communitySettingsBody, communityBanBody, communityLockBody, communityPinBody, communityModLogQuery, communityReportsQuery, communityReportIdParam;
9420
+ var init_chunk_GTV7SIKE = __esm({
9421
+ "../../packages/core/dist/chunk-GTV7SIKE.js"() {
9422
9422
  "use strict";
9423
9423
  init_chunk_FJKE7WIF();
9424
9424
  init_chunk_IYXLMIWU();
@@ -12206,7 +12206,10 @@ var init_chunk_3LINNTBI = __esm({
12206
12206
  }).strict();
12207
12207
  peopleContactInviteIdParam = external_exports.object({ inviteId: uuidSchema });
12208
12208
  peopleContactUserIdParam = external_exports.object({ userId: peopleUserIdSchema });
12209
- peopleContactBlockBody = external_exports.object({ user_id: peopleUserIdSchema, thread_id: uuidSchema.optional() }).strict();
12209
+ peopleContactBlockBody = external_exports.object({ user_id: peopleUserIdSchema, thread_id: uuidSchema.optional(), community_id: uuidSchema.optional() }).strict().refine((body) => body.thread_id === void 0 || body.community_id === void 0, {
12210
+ message: "Name a thread or a community, not both",
12211
+ path: ["community_id"]
12212
+ });
12210
12213
  peopleContactPageQuery = external_exports.object({
12211
12214
  cursor: external_exports.string().min(1).max(256).optional(),
12212
12215
  limit: external_exports.coerce.number().int().min(1).max(PEOPLE_CONTACT_PAGE_MAX).default(PEOPLE_CONTACT_PAGE_DEFAULT)
@@ -12379,7 +12382,15 @@ var init_chunk_3LINNTBI = __esm({
12379
12382
  peopleReportBody = external_exports.discriminatedUnion("target", [
12380
12383
  external_exports.object({ target: external_exports.literal("message"), thread_id: uuidSchema, message_id: uuidSchema, ...reportFields }).strict(),
12381
12384
  external_exports.object({ target: external_exports.literal("thread"), thread_id: uuidSchema, ...reportFields }).strict(),
12382
- external_exports.object({ target: external_exports.literal("user"), user_id: peopleUserIdSchema, thread_id: uuidSchema.optional(), ...reportFields }).strict()
12385
+ external_exports.object({ target: external_exports.literal("user"), user_id: peopleUserIdSchema, thread_id: uuidSchema.optional(), ...reportFields }).strict(),
12386
+ external_exports.object({
12387
+ target: external_exports.literal("community_message"),
12388
+ community_id: uuidSchema,
12389
+ room_id: uuidSchema,
12390
+ message_id: uuidSchema,
12391
+ ...reportFields
12392
+ }).strict(),
12393
+ external_exports.object({ target: external_exports.literal("community_member"), community_id: uuidSchema, user_id: peopleUserIdSchema, ...reportFields }).strict()
12383
12394
  ]);
12384
12395
  PEOPLE_MODERATION_NOTE_MAX_LENGTH = 500;
12385
12396
  ADMIN_PEOPLE_REPORTS_PAGE_MAX = 100;
@@ -12400,8 +12411,67 @@ var init_chunk_3LINNTBI = __esm({
12400
12411
  COMMUNITIES_PER_ORG_MAX = 10;
12401
12412
  COMMUNITY_NAME_MAX_LENGTH = 100;
12402
12413
  COMMUNITY_REGISTRY_CLOSED_REASON = "community_registry_closed";
12414
+ COMMUNITY_JOIN_SOURCE_MAX_LENGTH = 32;
12415
+ COMMUNITY_JOIN_FLOW_TOKEN_MAX_LENGTH = 128;
12416
+ COMMUNITY_ROOM_NAME_MAX_LENGTH = 100;
12417
+ COMMUNITY_MESSAGE_MAX_LENGTH = 4e3;
12418
+ COMMUNITY_POST_TITLE_MAX_LENGTH = 200;
12419
+ COMMUNITY_POST_SEARCH_MAX_LENGTH = 100;
12420
+ COMMUNITY_RULES_MAX_LENGTH = 4e3;
12421
+ COMMUNITY_SLOW_MODE_MAX_SECONDS = 21600;
12403
12422
  communityNameSchema = external_exports.string().trim().min(1).max(COMMUNITY_NAME_MAX_LENGTH);
12404
12423
  adminCreateCommunityBody = external_exports.object({ org_id: uuidSchema, name: communityNameSchema }).strict();
12424
+ communityIdParam = external_exports.object({ communityId: uuidSchema });
12425
+ communityJoinTokenSchema = external_exports.string().regex(/^[0-9a-f]{32}$/);
12426
+ communityJoinSourceSchema = external_exports.string().regex(new RegExp(`^[a-z0-9_-]{1,${COMMUNITY_JOIN_SOURCE_MAX_LENGTH}}$`));
12427
+ communityJoinPreviewQuery = external_exports.object({ c: uuidSchema, k: communityJoinTokenSchema });
12428
+ communityJoinBody = external_exports.object({
12429
+ token: communityJoinTokenSchema,
12430
+ src: communityJoinSourceSchema.optional(),
12431
+ flow_token: external_exports.string().max(COMMUNITY_JOIN_FLOW_TOKEN_MAX_LENGTH).optional()
12432
+ }).strict();
12433
+ communityRoomKindSchema = external_exports.enum(["discussion", "forum", "announcements"]);
12434
+ communityRoomNameSchema = external_exports.string().trim().min(1).max(COMMUNITY_ROOM_NAME_MAX_LENGTH);
12435
+ communityRoomIdParam = external_exports.object({ communityId: uuidSchema, roomId: uuidSchema });
12436
+ communityMessageIdParam = external_exports.object({ communityId: uuidSchema, roomId: uuidSchema, messageId: uuidSchema });
12437
+ communityRoomCreateBody = external_exports.object({ kind: communityRoomKindSchema, name: communityRoomNameSchema }).strict();
12438
+ communityRoomUpdateBody = external_exports.object({ name: communityRoomNameSchema.optional(), archived: external_exports.boolean().optional() }).strict().refine((b) => b.name !== void 0 || b.archived !== void 0, "nothing to change");
12439
+ communityMessagesQuery = external_exports.object({
12440
+ before: external_exports.coerce.number().int().min(1).optional(),
12441
+ after: external_exports.coerce.number().int().min(0).optional()
12442
+ }).refine((q) => q.before === void 0 || q.after === void 0, "before and after cannot be combined");
12443
+ communityMessageBodySchema = external_exports.string().max(COMMUNITY_MESSAGE_MAX_LENGTH).refine((body) => body.trim().length > 0, "must not be empty");
12444
+ communityPostTitleSchema = external_exports.string().trim().min(1).max(COMMUNITY_POST_TITLE_MAX_LENGTH);
12445
+ communitySendBody = external_exports.object({
12446
+ body: communityMessageBodySchema,
12447
+ client_message_id: uuidSchema.optional(),
12448
+ title: communityPostTitleSchema.optional(),
12449
+ parent_message_id: uuidSchema.optional()
12450
+ }).strict().refine((b) => b.title === void 0 || b.parent_message_id === void 0, "a post is not a reply: send a title or a parent_message_id, not both");
12451
+ communityEditBody = external_exports.object({ body: communityMessageBodySchema, title: communityPostTitleSchema.optional() }).strict();
12452
+ communityPostIdParam = external_exports.object({ communityId: uuidSchema, roomId: uuidSchema, postId: uuidSchema });
12453
+ communityPostsQuery = external_exports.object({
12454
+ before_activity: external_exports.coerce.number().int().min(1).optional(),
12455
+ q: optionalTrimmedText(COMMUNITY_POST_SEARCH_MAX_LENGTH),
12456
+ unanswered: external_exports.enum(["true", "false"]).optional().transform((value) => value === "true")
12457
+ });
12458
+ communityAnswerBody = external_exports.object({ reply_id: uuidSchema.nullable() }).strict();
12459
+ communityReadBody = external_exports.object({ seq: external_exports.number().int().min(0) }).strict();
12460
+ communityPersonParam = external_exports.object({ communityId: uuidSchema, userId: peopleUserIdSchema });
12461
+ communityOrgParam = external_exports.object({ orgId: uuidSchema });
12462
+ communityPeopleQuery = external_exports.object({ after: peopleUserIdSchema.optional() });
12463
+ communitySettingsBody = external_exports.object({
12464
+ rules: external_exports.string().trim().max(COMMUNITY_RULES_MAX_LENGTH).nullable().optional().transform((rules) => rules === "" ? null : rules),
12465
+ slow_mode_seconds: external_exports.number().int().min(0).max(COMMUNITY_SLOW_MODE_MAX_SECONDS).optional()
12466
+ }).strict().refine((b) => b.rules !== void 0 || b.slow_mode_seconds !== void 0, "nothing to change");
12467
+ communityBanBody = external_exports.object({ delete_messages: external_exports.boolean().optional() }).strict();
12468
+ communityLockBody = external_exports.object({ locked: external_exports.boolean() }).strict();
12469
+ communityPinBody = external_exports.object({ pinned: external_exports.boolean() }).strict();
12470
+ communityModLogQuery = external_exports.object({ before: external_exports.coerce.number().int().min(1).optional() });
12471
+ communityReportsQuery = communityModLogQuery.extend({
12472
+ pending: external_exports.enum(["true", "false"]).optional().transform((value) => value === "true")
12473
+ });
12474
+ communityReportIdParam = external_exports.object({ communityId: uuidSchema, reportId: uuidSchema });
12405
12475
  }
12406
12476
  });
12407
12477
 
@@ -12504,7 +12574,7 @@ var init_chunk_R5WRRHCL = __esm({
12504
12574
  var init_contracts = __esm({
12505
12575
  "../../packages/core/dist/contracts/index.js"() {
12506
12576
  "use strict";
12507
- init_chunk_3LINNTBI();
12577
+ init_chunk_GTV7SIKE();
12508
12578
  init_chunk_FJKE7WIF();
12509
12579
  init_chunk_IYXLMIWU();
12510
12580
  init_chunk_YX7EL2HJ();
@@ -12687,6 +12757,11 @@ var init_api_client = __esm({
12687
12757
  async adminCreateCommunity(body) {
12688
12758
  return this.request("POST", "/api/admin/communities", body);
12689
12759
  }
12760
+ // Destroy an org-owned community (platform-admin gated, gh #4872). Used by
12761
+ // `wayai admin communities destroy`.
12762
+ async adminDestroyCommunity(communityId) {
12763
+ return this.request("DELETE", `/api/admin/communities/${encodeURIComponent(communityId)}`);
12764
+ }
12690
12765
  /**
12691
12766
  * Re-discover an MCP connection's tool/resource catalog (refreshes stale
12692
12767
  * input schemas that `push` leaves untouched). `connection` is the display
@@ -13821,7 +13896,7 @@ var ENDPOINT_CONFIGS, WAYAI_WORKSPACE_LAYOUT;
13821
13896
  var init_dist = __esm({
13822
13897
  "../../packages/core/dist/index.js"() {
13823
13898
  "use strict";
13824
- init_chunk_3LINNTBI();
13899
+ init_chunk_GTV7SIKE();
13825
13900
  init_chunk_FJKE7WIF();
13826
13901
  init_chunk_IYXLMIWU();
13827
13902
  init_chunk_YX7EL2HJ();
@@ -14225,6 +14300,23 @@ var init_dist = __esm({
14225
14300
  skipAuthenticatedUsers: true,
14226
14301
  userLimitKey: "/api/threads/reports"
14227
14302
  },
14303
+ // Communities (gh #4872, `routes/api/communities`): every signed-in route under the mount (the
14304
+ // preview below excepted) shares one per-user budget, which is also each member's send limit and
14305
+ // bounds the reads that scan a community's rows (a title search, the stats); a community's own
14306
+ // limits (its rate, the daily caps, slow mode) are counted in its CommunityDO, in the write they
14307
+ // bound. Every caller is signed in, so the per-IP tier is skipped; the key is pinned because the
14308
+ // paths carry community, room and message ids.
14309
+ "/api/communities/*": {
14310
+ tier: "STANDARD",
14311
+ userLimit: 60,
14312
+ skipAuthenticatedUsers: true,
14313
+ userLimitKey: "/api/communities/*"
14314
+ },
14315
+ // The join page's preview of a link — public, fetched from the visitor's browser, so this
14316
+ // per-IP limit is its one bound and runs before the route reads anything (#4872
14317
+ // owner-delegated decision 9). MODERATE (30/min per IP) leaves room for reloads and several
14318
+ // tabs. An exact key, so it wins over the wildcard above.
14319
+ "/api/communities/join-preview": { tier: "MODERATE" },
14228
14320
  // App channel - high throughput with user limits
14229
14321
  "/channels/app/*": { tier: "HIGH", userLimit: 500, skipAuthenticatedUsers: true },
14230
14322
  // API channel (api-channel-connector) - machine-to-machine, high throughput
@@ -27706,6 +27798,9 @@ async function adminCommand(args2) {
27706
27798
  case "create":
27707
27799
  await runCommunitiesCreate(flagArgs);
27708
27800
  return;
27801
+ case "destroy":
27802
+ await runCommunitiesDestroy(positional, flagArgs);
27803
+ return;
27709
27804
  default:
27710
27805
  printHelp2();
27711
27806
  process.exit(1);
@@ -28573,6 +28668,56 @@ async function runCommunitiesCreate(flagArgs) {
28573
28668
  }
28574
28669
  console.log(`Created community ${data.community_id} \u2014 "${data.name}", owned by ${data.org_name} (${data.org_id}).`);
28575
28670
  }
28671
+ async function runCommunitiesDestroy(positional, flagArgs) {
28672
+ const usage3 = "wayai admin communities destroy <community_id> [--yes] [--json]";
28673
+ let yes = false;
28674
+ let jsonOutput = false;
28675
+ for (const flag of flagArgs) {
28676
+ if (flag === "--yes") {
28677
+ yes = true;
28678
+ } else if (flag === "--json") {
28679
+ jsonOutput = true;
28680
+ } else {
28681
+ console.error(`Unknown flag: ${flag}`);
28682
+ console.error(usage3);
28683
+ process.exit(1);
28684
+ }
28685
+ }
28686
+ const parsed = communityIdParam.safeParse({ communityId: positional[0] });
28687
+ if (positional.length !== 1 || !parsed.success) {
28688
+ console.error("<community_id> must be one community id (a UUID).");
28689
+ console.error(usage3);
28690
+ process.exit(1);
28691
+ }
28692
+ const { communityId } = parsed.data;
28693
+ if (!yes && !jsonOutput) {
28694
+ console.log(`About to destroy community ${communityId}: no one can read, join or leave it again,`);
28695
+ console.log("its members' lists drop it, and its storage is deleted. This cannot be undone.");
28696
+ const ok = await confirm("Proceed?");
28697
+ if (!ok) {
28698
+ console.log("Aborted.");
28699
+ return;
28700
+ }
28701
+ }
28702
+ const { config, accessToken } = await requireAuth();
28703
+ const client = new ApiClient({ apiUrl: config.api_url, accessToken });
28704
+ let data;
28705
+ try {
28706
+ data = (await client.adminDestroyCommunity(communityId)).data;
28707
+ } catch (err) {
28708
+ if (err instanceof ApiError && err.status === 404) {
28709
+ console.error(`Community ${communityId} not found (never created, or already destroyed).`);
28710
+ process.exit(1);
28711
+ }
28712
+ exitOnApiError(err);
28713
+ throw err;
28714
+ }
28715
+ if (jsonOutput) {
28716
+ console.log(JSON.stringify(data, null, 2));
28717
+ return;
28718
+ }
28719
+ console.log(`Destroyed community ${data.community_id} \u2014 "${data.name}", owned by ${data.org_name} (${data.org_id}), at ${data.destroyed_at}.`);
28720
+ }
28576
28721
  function conflictReasonOf(err) {
28577
28722
  try {
28578
28723
  const reason = JSON.parse(err.body).details?.reason;
@@ -28930,7 +29075,7 @@ async function runPeopleList(flagArgs) {
28930
29075
  for (const r of result.data) {
28931
29076
  const age = minutesAgo(r.created_at);
28932
29077
  const state = r.action_count === 0 ? "pending" : `${r.action_count} action${r.action_count === 1 ? "" : "s"}`;
28933
- const about = r.reported_user_id ? ` reported:${r.reported_user_id}` : "";
29078
+ const about = `${r.reported_user_id ? ` reported:${r.reported_user_id}` : ""}${r.community_id ? ` community:${r.community_id}` : ""}`;
28934
29079
  console.log(` ${r.report_id} [${r.reason} \xB7 ${r.target} \xB7 ${state}]${about} ${age}m ago`);
28935
29080
  }
28936
29081
  } catch (err) {
@@ -28997,7 +29142,7 @@ async function runPeopleRemoveMessage(positional, flagArgs) {
28997
29142
  const messageId = flagValue(flags, "message");
28998
29143
  const note = flagValue(flags, "note");
28999
29144
  if (flags.yes !== "true") {
29000
- console.log(`About to delete ${messageId ? `message ${messageId}` : "the reported message"} of report ${reportId} for everyone in its thread.`);
29145
+ console.log(`About to delete ${messageId ? `message ${messageId}` : "the reported message"} of report ${reportId} for everyone in its thread or community.`);
29001
29146
  console.log("Its text and file are erased; this cannot be undone.");
29002
29147
  const ok = await confirm("Proceed?");
29003
29148
  if (!ok) {
@@ -29030,7 +29175,7 @@ async function runPeopleSuspension(suspend, positional, flagArgs) {
29030
29175
  try {
29031
29176
  if (suspend) {
29032
29177
  printPeopleAction(await client.suspendAdminPeopleUser(userId, { report_id: reportId, note }), "The account was already suspended.");
29033
- console.log("It can no longer send messages or invites, accept invites, or create or change groups. Nobody else is told.");
29178
+ console.log("It can no longer send messages or invites, accept invites, or create or change groups; in communities it cannot post, join, moderate or create rooms. Nobody else is told.");
29034
29179
  } else {
29035
29180
  printPeopleAction(await client.unsuspendAdminPeopleUser(userId, { note }), "The account was not suspended.");
29036
29181
  }
@@ -29188,6 +29333,8 @@ Usage:
29188
29333
  wayai admin communities status Print the kill switch
29189
29334
  wayai admin communities create --org <org_id> --name <name> [--json]
29190
29335
  Create a community owned by the org (at most ${COMMUNITIES_PER_ORG_MAX} per org); works while the switch is OFF
29336
+ wayai admin communities destroy <community_id> [--yes] [--json]
29337
+ Destroy a community: its members' lists drop it and its storage is deleted (DESTRUCTIVE; confirms unless --yes)
29191
29338
 
29192
29339
  Sources:
29193
29340
  do Live DO SQLite (existing conversation, hub config, etc.).
@@ -29210,16 +29357,16 @@ Sources:
29210
29357
  (title/description/error/steps/context) while pending/escalated \u2014 the
29211
29358
  dedup fingerprint stays frozen and no email fires. Agent/Sentry rows
29212
29359
  never trigger emails.
29213
- people Moderation of person-to-person messaging: the reports people file from the
29214
- app (each also emailed to the platform admins) and the team's answer, due
29215
- within 24 hours (App Store guideline 1.2). \`list\` is newest first with each
29216
- report's action count (--pending: none yet); \`show\` prints one with the
29217
- messages its reporter saw and its actions. \`remove-message\` deletes, for
29218
- everyone, the report's message \u2014 or --message, another of its thread's.
29219
- \`suspend\` stops an account reaching anyone on the people surface: no
29220
- messages, invites, accepted invites, new groups or group changes; it can still
29221
- read, delete its own messages, leave, block and report, and nobody else is
29222
- told. \`unsuspend\` lifts it; \`user\` prints an account's suspension and
29360
+ people Moderation of person-to-person messaging and communities: the reports people
29361
+ file from the app (each also emailed to the platform admins) and the team's
29362
+ answer, due within 24 hours (App Store guideline 1.2). \`list\` is newest first
29363
+ with each report's action count (--pending: none yet); \`show\` prints one with
29364
+ the messages its reporter saw and its actions. \`remove-message\` deletes, for
29365
+ everyone, the report's message \u2014 or --message, another of its thread's or
29366
+ community's. \`suspend\` stops an account reaching anyone on the people surface:
29367
+ no messages, invites, accepted invites, new groups or group changes, and in
29368
+ communities no posts, joins, moderation or new rooms; it can still read, delete
29369
+ its own messages, leave, block and report, and nobody else is told. \`unsuspend\` lifts it; \`user\` prints an account's suspension and
29223
29370
  the actions on it. \`dismiss\` records a report reviewed with nothing to do.
29224
29371
  Each action is recorded with who took it and when; repeating one changes
29225
29372
  nothing and records it again.
@@ -29275,7 +29422,8 @@ Sources:
29275
29422
  communities Org-owned communities. \`enable\`/\`disable\` flip the PLATFORM-wide
29276
29423
  communities_enabled switch, default-deny and nested in threads: members
29277
29424
  reach a community only while both switches are on. \`create\` makes a
29278
- community for an org, whichever way the switch is set. Changes to the
29425
+ community for an org and \`destroy\` removes one, whichever way the switch
29426
+ is set; deleting an org destroys its communities too. Changes to the
29279
29427
  switch land within about 60 s.
29280
29428
 
29281
29429
  Types (do): ${VALID_TYPES.join(" | ")}