@wildo-ai/saas-models 1.1.1 → 1.1.3
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/esm/applications/applications-context.schemas.d.ts +16 -10
- package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.js +4 -3
- package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js +36 -0
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.js +8 -1
- package/dist/esm/billing/billing-account.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +0 -4
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.js +59 -17
- package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts +77 -21
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js +85 -23
- package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.d.ts +5 -5
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js +39 -0
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts +6 -6
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.js +8 -4
- package/dist/esm/billing/credit-pool.shared.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js +35 -0
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.js +8 -3
- package/dist/esm/billing/invoice-ref.shared.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.schemas.js +7 -1
- package/dist/esm/billing/price.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js +52 -11
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.d.ts +2 -2
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +2 -2
- package/dist/esm/billing/product.shared.schemas.d.ts +2 -2
- package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.schemas.js +7 -3
- package/dist/esm/billing/product.shared.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +2 -2
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js +54 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.d.ts +4 -4
- package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.js +6 -2
- package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.js +39 -0
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.d.ts +11 -7
- package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.js +29 -6
- package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +69 -2
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.js +20 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts +85 -0
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js +157 -0
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js +35 -2
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +23 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +56 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +541 -20
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js +605 -23
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js +96 -3
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts +49 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js +124 -1
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts +11 -3
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js +11 -3
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.d.ts +94 -0
- package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.js +211 -0
- package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts +67 -12
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js +95 -8
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts +17 -0
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js +27 -4
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts +89 -16
- package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.js +101 -15
- package/dist/esm/compliance/privacy/redaction.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js +12 -5
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts +21 -0
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.js +20 -0
- package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +9 -5
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.js +29 -0
- package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts +8 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.js +29 -0
- package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +95 -17
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.js +86 -8
- package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +12 -12
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts +33 -0
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/navigation.shared.schemas.js +32 -0
- package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +40 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts.map +1 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js +40 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +57 -11
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +109 -64
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +200 -19
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts +15 -3
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +32 -7
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +84 -7
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts +59 -0
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js +61 -0
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts +97 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts.map +1 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js +41 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js.map +1 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +148 -2
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +56 -1
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +9 -31
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-capability.shared.schemas.js +8 -5
- package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +18 -8
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +9 -4
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts +338 -0
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js +332 -0
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +178 -9
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js +181 -9
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +7 -5
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js +7 -5
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-tier-rule.shared.utils.d.ts +40 -0
- package/dist/esm/external-providers/provider-tier-rule.shared.utils.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-tier-rule.shared.utils.js +80 -0
- package/dist/esm/external-providers/provider-tier-rule.shared.utils.js.map +1 -0
- package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
- package/dist/esm/features/core-feature-definitions.shared.js +7 -1
- package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
- package/dist/esm/features/feature-builders.shared.d.ts +32 -0
- package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-builders.shared.js +32 -0
- package/dist/esm/features/feature-builders.shared.js.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.js +48 -0
- package/dist/esm/features/user-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/files/file-upload-grant.shared.schemas.d.ts +156 -0
- package/dist/esm/files/file-upload-grant.shared.schemas.d.ts.map +1 -0
- package/dist/esm/files/file-upload-grant.shared.schemas.js +175 -0
- package/dist/esm/files/file-upload-grant.shared.schemas.js.map +1 -0
- package/dist/esm/files/files.shared.schemas.d.ts +52 -4
- package/dist/esm/files/files.shared.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.schemas.js +55 -4
- package/dist/esm/files/files.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js +33 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js +6 -2
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js +53 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js +3 -2
- package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts +54 -5
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts +6 -6
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts +0 -3
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/deliberation.shared.schemas.js +0 -5
- package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js +43 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +14 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +48 -6
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js +41 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts +0 -7
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js +23 -13
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +19 -0
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js +33 -0
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts +14 -9
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +14 -9
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js +3 -2
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.js +3 -2
- package/dist/esm/flows-actors/flows.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.d.ts +128 -0
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.js +142 -0
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts +0 -3
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js +1 -4
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts +0 -16
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js +1 -17
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts +3 -3
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js +3 -3
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts +2 -8
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js +4 -15
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js +51 -0
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.js +8 -2
- package/dist/esm/guidance/guidance-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.utils.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.utils.js +1 -0
- package/dist/esm/guidance/guidance-state.shared.utils.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js +51 -0
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js +28 -3
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts +9 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js +51 -0
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts +46 -0
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.js +67 -4
- package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +356 -52
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +166 -39
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -1
- package/dist/esm/index.d.ts +15 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +15 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +11 -2
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-template.shared.enums.d.ts +15 -0
- package/dist/esm/notifications/email/email-template.shared.enums.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-template.shared.enums.js +15 -0
- package/dist/esm/notifications/email/email-template.shared.enums.js.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.d.ts +70 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.js +71 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.js.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +19 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +30 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +65 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/notification-badges.core.definitions.d.ts +6 -4
- package/dist/esm/notifications/notification-badges.core.definitions.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.core.definitions.js +6 -4
- package/dist/esm/notifications/notification-badges.core.definitions.js.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.d.ts +167 -5
- package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.js +191 -6
- package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js +36 -0
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.d.ts +107 -0
- package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.js +149 -1
- package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js +44 -0
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.js +15 -4
- package/dist/esm/organizations/organization-members.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.js +22 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts +26 -0
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.js +25 -0
- package/dist/esm/organizations/organization-preferences.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +25 -0
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.js +42 -17
- package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts +3 -2
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.js +9 -2
- package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +35 -12
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/public-runtime/index.d.ts +49 -2
- package/dist/esm/public-runtime/index.d.ts.map +1 -1
- package/dist/esm/public-runtime/index.js +48 -1
- package/dist/esm/public-runtime/index.js.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts +6 -5
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js +23 -5
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.d.ts +16 -3
- package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.js +16 -3
- package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-documentation.d.ts +137 -0
- package/dist/esm/requests/manual-controllers-routes-documentation.d.ts.map +1 -0
- package/dist/esm/requests/manual-controllers-routes-documentation.js +1201 -0
- package/dist/esm/requests/manual-controllers-routes-documentation.js.map +1 -0
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts +67 -0
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.js +78 -0
- package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts +11 -1
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.js +11 -1
- package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.d.ts +86 -4
- package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.js +138 -0
- package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
- package/dist/esm/resources/collection-query-parameters.shared.d.ts +22 -0
- package/dist/esm/resources/collection-query-parameters.shared.d.ts.map +1 -0
- package/dist/esm/resources/collection-query-parameters.shared.js +22 -0
- package/dist/esm/resources/collection-query-parameters.shared.js.map +1 -0
- package/dist/esm/resources/resources-config.shared.factory.d.ts +1 -0
- package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.js +189 -31
- package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.d.ts +395 -92
- package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.js +109 -20
- package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.js +97 -5
- package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.js +15 -0
- package/dist/esm/resources/resources-relationships.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.d.ts +37 -0
- package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.js +51 -0
- package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.d.ts +11 -2
- package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.js +34 -3
- package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
- package/dist/esm/resources/utils/field-value-disclosure.utils.d.ts +51 -0
- package/dist/esm/resources/utils/field-value-disclosure.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/field-value-disclosure.utils.js +53 -0
- package/dist/esm/resources/utils/field-value-disclosure.utils.js.map +1 -0
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js +21 -6
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.d.ts +16 -2
- package/dist/esm/resources/utils/resources-summary.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.js +19 -5
- package/dist/esm/resources/utils/resources-summary.utils.js.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js +11 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -1
- package/dist/esm/runtime/domain-module.shared.definitions.d.ts +25 -0
- package/dist/esm/runtime/domain-module.shared.definitions.d.ts.map +1 -1
- package/dist/esm/runtime/domain-module.shared.definitions.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js +38 -0
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js +38 -0
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +4 -11
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +0 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts +141 -5
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.js +147 -3
- package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts +17 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.js +16 -0
- package/dist/esm/security/authentications/consumable-token.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/mfa-backup-code-contract.shared.d.ts +28 -0
- package/dist/esm/security/authentications/mfa-backup-code-contract.shared.d.ts.map +1 -0
- package/dist/esm/security/authentications/mfa-backup-code-contract.shared.js +28 -0
- package/dist/esm/security/authentications/mfa-backup-code-contract.shared.js.map +1 -0
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts +1 -0
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js +11 -0
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts +15 -0
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +21 -4
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.d.ts +21 -0
- package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.d.ts.map +1 -0
- package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.js +21 -0
- package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.js.map +1 -0
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts +61 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js +208 -6
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts +37 -27
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js +134 -12
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts +0 -6
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js +17 -8
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +70 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts +45 -8
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js +56 -10
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +16 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js +16 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts +54 -0
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.js +59 -0
- package/dist/esm/security/authorizations/roles.shared.utils.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts +31 -0
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js +198 -0
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts +31 -0
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js +191 -0
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts +250 -0
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js +486 -0
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts +4 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +29 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +4 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +29 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +67 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +44 -1
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js +35 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts +13 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js +31 -4
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js +34 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.js +7 -4
- package/dist/esm/users/inbound-contacts.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.js +37 -0
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.js +17 -2
- package/dist/esm/users/user-credentials.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js +36 -0
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.js +15 -5
- package/dist/esm/users/user-identity-links.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.js +53 -0
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.js +62 -0
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js +53 -0
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js +62 -0
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.js +33 -3
- package/dist/esm/users/user-self.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts +17 -1
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.js +136 -5
- package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.schemas.d.ts +62 -12
- package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.schemas.js +79 -23
- package/dist/esm/users/users.shared.schemas.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +5 -6
- package/dist/esm/.builder.pid +0 -9
|
@@ -6,6 +6,7 @@ import { PlatformAccessGrantAutoApprovalReason, PlatformAccessGrantLifecycleTran
|
|
|
6
6
|
import { ExecutionContext_ExecutionType } from "../../runtime/execution-context.shared.schemas.js";
|
|
7
7
|
import { AuthScopeType, SsoConnectionType, } from "../../security/authentications/authentication.shared.schemas.js";
|
|
8
8
|
import { WebhookEndpointProbeOutcome } from "../../notifications/m2m/webhook-config.shared.schemas.js";
|
|
9
|
+
import { ProviderCredentialDeletionReason, ProviderCredentialResolutionSource, } from "../../security/connected-accounts/provider-credentials.shared.schemas.js";
|
|
9
10
|
export var CoreAuditableEventType;
|
|
10
11
|
(function (CoreAuditableEventType) {
|
|
11
12
|
// Authentication Events
|
|
@@ -31,6 +32,23 @@ export var CoreAuditableEventType;
|
|
|
31
32
|
// idle-timeout/forced-expiry feature — where expiry IS an act someone triggers — is exactly what
|
|
32
33
|
// it should name.
|
|
33
34
|
CoreAuditableEventType["USER_SESSION_EXPIRED"] = "user_session_expired";
|
|
35
|
+
/**
|
|
36
|
+
* A refresh chain was FORCIBLY RETIRED because the principal exceeded its concurrent-session cap.
|
|
37
|
+
*
|
|
38
|
+
* DISTINCT from {@link USER_SESSION_EXPIRED}, and the split is semantic rather than cosmetic. An
|
|
39
|
+
* expiry is time elapsing; an eviction is a cap DISPLACING a live chain, and the two answer
|
|
40
|
+
* different reviewer questions — "was this user idle?" versus "is somebody's chain being pushed
|
|
41
|
+
* out?". The second is the one that matters: the cap exists to bound the blast radius of undetected
|
|
42
|
+
* token theft, so a burst of evictions for one principal is exactly the signal a reviewer wants.
|
|
43
|
+
*
|
|
44
|
+
* Before this, the only trace was a debug log — a security-relevant token-lifecycle act with no
|
|
45
|
+
* durable record, which is what `CLAUDE.md`'s assurance-by-construction rule asks for by name.
|
|
46
|
+
*
|
|
47
|
+
* assurance-control: WILDO.IDENTITY.SESSION_CONCURRENCY_LIMIT — the eviction enforcing the
|
|
48
|
+
* concurrent-session bound leaves a record naming WHICH chain was retired and when it was issued,
|
|
49
|
+
* so the first-in-first-out property is reviewable rather than merely implemented.
|
|
50
|
+
*/
|
|
51
|
+
CoreAuditableEventType["USER_SESSION_EVICTED"] = "user_session_evicted";
|
|
34
52
|
// Machine (non-human) Authentication Events — api-key / OAuth-client / exchanged client-credentials
|
|
35
53
|
// token resolving to an ORGANIZATION_MACHINE / APPLICATION_MACHINE principal. The credential
|
|
36
54
|
// provenance (authMethod + credentialId) + scope ride the typed eventData.
|
|
@@ -155,6 +173,55 @@ export var CoreAuditableEventType;
|
|
|
155
173
|
// Organization Security Management Events
|
|
156
174
|
CoreAuditableEventType["ORGANIZATION_SSO_CONFIGURATION_CHANGED"] = "organization_sso_configuration_changed";
|
|
157
175
|
CoreAuditableEventType["ORGANIZATION_SIEM_EXPORT_CONFIGURED"] = "organization_siem_export_configured";
|
|
176
|
+
// Organization Provider Credential Events
|
|
177
|
+
//
|
|
178
|
+
// An organization's OWN credential toward a third party. The four verbs are separate members
|
|
179
|
+
// rather than one event with a `changeType`, because they answer four different questions a
|
|
180
|
+
// credential incident asks in a different order — when did this tenant grant us authority, when
|
|
181
|
+
// did the value last change, when was it last SPENT, and when did the grant end — and a SIEM
|
|
182
|
+
// rule that alerts on a spend cannot be written against a payload discriminator that also
|
|
183
|
+
// matches configuration edits.
|
|
184
|
+
//
|
|
185
|
+
// NONE of the four payloads carries the credential value. That is a structural property of the
|
|
186
|
+
// schemas below, not a redaction step somebody has to remember: there is no field to put it in.
|
|
187
|
+
//
|
|
188
|
+
// assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — an organization authorizes this
|
|
189
|
+
// application to act as it toward a named third party.
|
|
190
|
+
CoreAuditableEventType["ORGANIZATION_PROVIDER_CREDENTIAL_SET"] = "organization_provider_credential_set";
|
|
191
|
+
CoreAuditableEventType["ORGANIZATION_PROVIDER_CREDENTIAL_ROTATED"] = "organization_provider_credential_rotated";
|
|
192
|
+
CoreAuditableEventType["ORGANIZATION_PROVIDER_CREDENTIAL_USED"] = "organization_provider_credential_used";
|
|
193
|
+
CoreAuditableEventType["ORGANIZATION_PROVIDER_CREDENTIAL_DELETED"] = "organization_provider_credential_deleted";
|
|
194
|
+
// A PERSON's own credential toward a third party. Four members mirroring the organization's,
|
|
195
|
+
// and deliberately NOT the same members with a nullable organization: the subject differs, the
|
|
196
|
+
// SIEM routing differs (there is no tenant to route to), and the data-protection reading differs
|
|
197
|
+
// — a person's connection to a vendor is that person's, and an event saying so must not be
|
|
198
|
+
// indistinguishable from one about a tenant's shared integration.
|
|
199
|
+
CoreAuditableEventType["USER_PROVIDER_CREDENTIAL_SET"] = "user_provider_credential_set";
|
|
200
|
+
CoreAuditableEventType["USER_PROVIDER_CREDENTIAL_ROTATED"] = "user_provider_credential_rotated";
|
|
201
|
+
CoreAuditableEventType["USER_PROVIDER_CREDENTIAL_USED"] = "user_provider_credential_used";
|
|
202
|
+
CoreAuditableEventType["USER_PROVIDER_CREDENTIAL_DELETED"] = "user_provider_credential_deleted";
|
|
203
|
+
// A delegated authorization GRANTED at a vendor, for each owner scope.
|
|
204
|
+
//
|
|
205
|
+
// Distinct from `_SET` rather than a flag on it, on the same three grounds the vocabulary already
|
|
206
|
+
// uses to separate its members. The ACT differs: `_SET` is a value arriving in a row, and this is
|
|
207
|
+
// a principal completing a consent ceremony at a third party — the only event in this family that
|
|
208
|
+
// records somebody deciding something. The DATA differs: a grant carries the scopes that were
|
|
209
|
+
// authorized and the vendor account they were authorized for, neither of which exists for a pasted
|
|
210
|
+
// secret. And the EMISSION POINT differs, which is what makes a flag impractical as well as wrong:
|
|
211
|
+
// `_SET` is emitted by the resource's write hook, which sees the row after the value is sealed,
|
|
212
|
+
// while the scopes are known only to the store that received the grant, before sealing.
|
|
213
|
+
//
|
|
214
|
+
// The distinction is the one an auditor asks for first. "Which of our people granted a third party
|
|
215
|
+
// access, to what, and when" is a different question from "which credentials were configured", and
|
|
216
|
+
// a trail that answers them with the same event answers neither well.
|
|
217
|
+
//
|
|
218
|
+
// Neither payload carries a token, and as with the four above that is structural rather than a
|
|
219
|
+
// redaction step: there is no field to put one in.
|
|
220
|
+
//
|
|
221
|
+
// assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — the act of authorizing is recorded
|
|
222
|
+
// as itself, with what was authorized.
|
|
223
|
+
CoreAuditableEventType["ORGANIZATION_PROVIDER_CONNECTION_GRANTED"] = "organization_provider_connection_granted";
|
|
224
|
+
CoreAuditableEventType["USER_PROVIDER_CONNECTION_GRANTED"] = "user_provider_connection_granted";
|
|
158
225
|
// Application Security Configuration Events
|
|
159
226
|
// The per-user-type authentication policy (`userTypes.<type>.auth` — MFA, password, and lockout
|
|
160
227
|
// requirements) is STATIC application configuration authored in code and taken into effect at
|
|
@@ -215,6 +282,7 @@ export var CoreAuditableEventType;
|
|
|
215
282
|
CoreAuditableEventType["USER_PASSKEY_AUTHENTICATION_SUCCESS"] = "user_passkey_authentication_success";
|
|
216
283
|
CoreAuditableEventType["USER_PASSKEY_AUTHENTICATION_FAILURE"] = "user_passkey_authentication_failure";
|
|
217
284
|
CoreAuditableEventType["USER_PASSKEY_REMOVED"] = "user_passkey_removed";
|
|
285
|
+
CoreAuditableEventType["USER_PASSKEY_CLONE_SUSPECTED"] = "user_passkey_clone_suspected";
|
|
218
286
|
// Magic Link Events (Phase G2)
|
|
219
287
|
CoreAuditableEventType["USER_MAGIC_LINK_SENT"] = "user_magic_link_sent";
|
|
220
288
|
CoreAuditableEventType["USER_MAGIC_LINK_VERIFIED"] = "user_magic_link_verified";
|
|
@@ -239,6 +307,48 @@ export var CoreAuditableEventType;
|
|
|
239
307
|
// OAuth2 Provider Restriction Events (Phase G3)
|
|
240
308
|
CoreAuditableEventType["OAUTH2_PROVIDER_BLOCKED"] = "oauth2_provider_blocked";
|
|
241
309
|
// One-Off Session Events (W7.3b)
|
|
310
|
+
/**
|
|
311
|
+
* File upload grant lifecycle (issue #312) — the first FILE-domain audit events. A grant is a
|
|
312
|
+
* single-use bearer credential that lets whoever holds it perform ONE upload into ONE resource file
|
|
313
|
+
* field with the MINTER's authority; minting it is a delegated-authorization act and is audited as
|
|
314
|
+
* one. `ISSUED` at mint (MEDIUM: a credential left the trust boundary), `REDEEMED` when the one
|
|
315
|
+
* upload landed and the FILES row exists, `REVOKED` when the minter or an administrator cancelled
|
|
316
|
+
* it. The event data carries the grant's ID — never its value.
|
|
317
|
+
*/
|
|
318
|
+
CoreAuditableEventType["FILE_UPLOAD_GRANT_ISSUED"] = "file_upload_grant_issued";
|
|
319
|
+
CoreAuditableEventType["FILE_UPLOAD_GRANT_REDEEMED"] = "file_upload_grant_redeemed";
|
|
320
|
+
CoreAuditableEventType["FILE_UPLOAD_GRANT_REVOKED"] = "file_upload_grant_revoked";
|
|
321
|
+
// File content-inspection outcomes (#506)
|
|
322
|
+
/**
|
|
323
|
+
* A scanner concluded that an uploaded file is INFECTED, and the file was quarantined.
|
|
324
|
+
*
|
|
325
|
+
* Until this existed, the scanner emitted no audit row of any kind: an infection produced a
|
|
326
|
+
* `SCANNING → INFECTED → QUARANTINED` status transition on the file record and nothing else, so
|
|
327
|
+
* the only way to learn that malware had reached the application's storage was to NOTICE a row
|
|
328
|
+
* sitting at `QUARANTINED` — a poll, not a signal. Malware arriving is one of the few things an
|
|
329
|
+
* operator wants to be alerted on, and one of the few a customer security questionnaire asks about
|
|
330
|
+
* by name.
|
|
331
|
+
*
|
|
332
|
+
* `CRITICAL`, on the same argument as `USER_PASSKEY_CLONE_SUSPECTED`: a conclusion the security
|
|
333
|
+
* mechanism reached about a real threat, not a routine outcome.
|
|
334
|
+
*
|
|
335
|
+
* assurance-control: WILDO.SECURITY.INGESTED_CONTENT_INSPECTION — a detected infection is
|
|
336
|
+
* attributable and monitorable, not only visible as a row status. This event is the RECORD half of
|
|
337
|
+
* that objective; the mechanism half is the fail-closed scan gate itself.
|
|
338
|
+
*/
|
|
339
|
+
CoreAuditableEventType["FILE_MALWARE_DETECTED"] = "file_malware_detected";
|
|
340
|
+
/**
|
|
341
|
+
* A scan could NOT be completed — the scanner was unreachable, or the pipeline errored.
|
|
342
|
+
*
|
|
343
|
+
* Its own event rather than a lower severity on the one above, because the operational stories are
|
|
344
|
+
* opposite: an infection means the control WORKED, a failure means it DID NOT RUN. From outside
|
|
345
|
+
* they are indistinguishable today — the file is non-downloadable either way — which is precisely
|
|
346
|
+
* why the trail has to tell them apart. A run of these means files are arriving unscanned.
|
|
347
|
+
*
|
|
348
|
+
* `WARNING`, not `CRITICAL`: nothing was found and nothing was exposed, because the file fails
|
|
349
|
+
* closed to `FAILED` and stays undownloadable. What is wrong is the control's availability.
|
|
350
|
+
*/
|
|
351
|
+
CoreAuditableEventType["FILE_MALWARE_SCAN_FAILED"] = "file_malware_scan_failed";
|
|
242
352
|
CoreAuditableEventType["ONE_OFF_TOKEN_CREATED"] = "one_off_token_created";
|
|
243
353
|
CoreAuditableEventType["ONE_OFF_TOKEN_EXCHANGED"] = "one_off_token_exchanged";
|
|
244
354
|
/** revocation-B1: a super-admin cancelled an un-exchanged one-off (impersonation) session token. */
|
|
@@ -326,6 +436,13 @@ export var CoreAuditableEventType;
|
|
|
326
436
|
* crossing is NAMED in the trail". Before this event, an operator could enumerate every user's
|
|
327
437
|
* email across every tenant and leave nothing behind.
|
|
328
438
|
*
|
|
439
|
+
* ⚠️ "Structurally unavailable" above is exact about the EXISTING grant mechanism — it needs a
|
|
440
|
+
* target tenant and a collection call names none — and must not be read as "prevention is
|
|
441
|
+
* impossible". An application-wide grant kind is buildable; what blocks it is the question of who
|
|
442
|
+
* approves an elevation that names no tenant. See
|
|
443
|
+
* `ScopeRootConfinementDisposition.UNCONFINED_APPLICATION_TIER_DIRECTORY`, which owns that
|
|
444
|
+
* reasoning beside the declaration that makes this read unconfined.
|
|
445
|
+
*
|
|
329
446
|
* INFO, not WARNING: unlike its cross-tenant sibling this is an ordinary, expected administrative
|
|
330
447
|
* read on a surface built for it. The subset worth escalating is selected by a SIEM rule on
|
|
331
448
|
* `resourceType` + `returnedCount`, both of which ride the payload.
|
|
@@ -356,7 +473,8 @@ export var CoreAuditableEventType;
|
|
|
356
473
|
// Retained-Data (Impersonalization) Access Events
|
|
357
474
|
// Emitted when a privileged SEE-THROUGH read reveals RETAINED (impersonalized-and-retained) records
|
|
358
475
|
// that the default retention hide-predicate keeps hidden. SYSTEM_CONTEXT_READ names only the RUNTIME
|
|
359
|
-
// that acted; this read is HUMAN-ATTRIBUTED (
|
|
476
|
+
// that acted; this read is HUMAN-ATTRIBUTED (an application super-administrator, the only role the
|
|
477
|
+
// see-through gate admits today) and carries a REQUIRED reason —
|
|
360
478
|
// a compliance-grade access record over scrubbed personal data. Strictly read-only. Classified
|
|
361
479
|
// DATA_ACCESS / WARNING (an authorized-but-elevated privileged access, not an anomaly ⇒ not CRITICAL).
|
|
362
480
|
CoreAuditableEventType["RETAINED_DATA_ACCESS"] = "retained_data_access";
|
|
@@ -499,6 +617,38 @@ export var AuditEventSeverity;
|
|
|
499
617
|
AuditEventSeverity["WARNING"] = "warning";
|
|
500
618
|
AuditEventSeverity["CRITICAL"] = "critical";
|
|
501
619
|
})(AuditEventSeverity || (AuditEventSeverity = {}));
|
|
620
|
+
/**
|
|
621
|
+
* What each audit category and severity MEANS to whoever reads the trail.
|
|
622
|
+
*
|
|
623
|
+
* The words were authored, correctly, in the technical-documentation catalog that renders the
|
|
624
|
+
* audit-trail page — and lived only there, so the same vocabularies reached every other surface as
|
|
625
|
+
* bare tokens. Moved here, beside the enums, because a vocabulary's words belong with the
|
|
626
|
+
* vocabulary: the catalog now imports them, the schemas describe their own fields from them, and
|
|
627
|
+
* there is one account of what `data_access` selects rather than two that can disagree.
|
|
628
|
+
*
|
|
629
|
+
* `name` is what a reader is shown; `meaning` is what selecting it actually gets them. Exhaustive by
|
|
630
|
+
* type, so a sixth category cannot ship as a bare value.
|
|
631
|
+
*/
|
|
632
|
+
export const AUDIT_EVENT_CATEGORY_MEANINGS = {
|
|
633
|
+
[AuditEventCategory.AUTHENTICATION]: { name: 'Authentication', meaning: 'Signing in, signing out, second factors and failed attempts.' },
|
|
634
|
+
[AuditEventCategory.AUTHORIZATION]: { name: 'Authorization', meaning: 'Access decisions: what an identity was allowed or refused.' },
|
|
635
|
+
[AuditEventCategory.USER_LIFECYCLE]: { name: 'User lifecycle', meaning: 'Accounts created, changed, suspended, restored or removed.' },
|
|
636
|
+
[AuditEventCategory.ORG_MANAGEMENT]: { name: 'Organization management', meaning: 'Membership, roles, units and organization settings.' },
|
|
637
|
+
[AuditEventCategory.DATA_ACCESS]: { name: 'Data access', meaning: 'Reads and changes of application data that are recorded for review.' },
|
|
638
|
+
};
|
|
639
|
+
export const AUDIT_EVENT_SEVERITY_MEANINGS = {
|
|
640
|
+
[AuditEventSeverity.INFO]: { name: 'Information', meaning: 'Expected activity. Useful as evidence, not a signal on its own.' },
|
|
641
|
+
[AuditEventSeverity.WARNING]: { name: 'Warning', meaning: 'Unusual or refused activity worth reviewing in context.' },
|
|
642
|
+
[AuditEventSeverity.CRITICAL]: { name: 'Critical', meaning: 'Activity that should reach whoever handles security incidents.' },
|
|
643
|
+
};
|
|
644
|
+
/**
|
|
645
|
+
* A `Values:` legend in the shape the generated API reference already uses, so a field described
|
|
646
|
+
* here reads exactly like one described from a resource specification.
|
|
647
|
+
*/
|
|
648
|
+
export function describeAuditVocabulary(lead, meanings) {
|
|
649
|
+
const legend = Object.entries(meanings).map(([value, words]) => `- \`${value}\`: ${words.meaning}`).join('\n');
|
|
650
|
+
return `${lead}\n\nValues:\n${legend}`;
|
|
651
|
+
}
|
|
502
652
|
/**
|
|
503
653
|
* Why the authorizer refused an operation. A CLOSED vocabulary — the authorizer resolves exactly
|
|
504
654
|
* one of these per refusal, and a SOC dashboard groups by it.
|
|
@@ -773,6 +923,35 @@ export const AuditableEvent_User_SessionExpiredEventDataSchema = z.object({
|
|
|
773
923
|
sessionDuration: z.number(), // minutes
|
|
774
924
|
lastActivity: z.date(),
|
|
775
925
|
});
|
|
926
|
+
/**
|
|
927
|
+
* One refresh chain retired to keep a principal within its concurrent-session cap.
|
|
928
|
+
*
|
|
929
|
+
* `evictedIssuedAt` is the load-bearing field and the reason this event is worth its own type: the
|
|
930
|
+
* cap's security property is that the OLDEST chain goes, so a record that named only the victim
|
|
931
|
+
* would prove a session ended without proving the right one did. Carrying the issuance instant makes
|
|
932
|
+
* the first-in-first-out claim checkable from the trail alone.
|
|
933
|
+
*
|
|
934
|
+
* `configuredMaximum` and `retainedCount` are here so a reviewer can tell a correctly-enforced cap
|
|
935
|
+
* from a misconfigured one without reading the config as it stood at that moment.
|
|
936
|
+
*
|
|
937
|
+
* NO token material. The JTI is an opaque identifier, never the token — the trail must not become a
|
|
938
|
+
* place where a credential can be recovered.
|
|
939
|
+
*
|
|
940
|
+
* assurance-control: WILDO.IDENTITY.SESSION_CONCURRENCY_LIMIT — the bound's enforcement is evidenced,
|
|
941
|
+
* including WHICH chain was retired, so the ordering can be reviewed and not merely trusted.
|
|
942
|
+
*/
|
|
943
|
+
export const AuditableEvent_User_SessionEvictedEventDataSchema = z.object({
|
|
944
|
+
eventType: z.literal(CoreAuditableEventType.USER_SESSION_EVICTED),
|
|
945
|
+
userId: z.string(),
|
|
946
|
+
/** Opaque identifier of the retired refresh chain. Never the token itself. */
|
|
947
|
+
evictedJti: z.string(),
|
|
948
|
+
/** When the retired chain was issued — the evidence that the OLDEST one went. Absent if unreadable. */
|
|
949
|
+
evictedIssuedAt: z.date().optional(),
|
|
950
|
+
/** The cap in force for this principal's user type at the moment of eviction. */
|
|
951
|
+
configuredMaximum: z.number().int().positive(),
|
|
952
|
+
/** How many chains remained after the eviction, so an over- or under-enforcing cap is visible. */
|
|
953
|
+
retainedCount: z.number().int().nonnegative(),
|
|
954
|
+
});
|
|
776
955
|
/**
|
|
777
956
|
* A `USERS` row was hard-deleted.
|
|
778
957
|
*
|
|
@@ -855,20 +1034,66 @@ export const AuditableEvent_Application_SuperAdminFloorBreachedEventDataSchema =
|
|
|
855
1034
|
* recorded rather than assumed zero: the floor's minimum is configurable, and an event that hard-codes
|
|
856
1035
|
* the consequence cannot be re-read against a changed policy.
|
|
857
1036
|
*/
|
|
1037
|
+
/**
|
|
1038
|
+
* HOW a tenant's owner-floor breach came to be known.
|
|
1039
|
+
*
|
|
1040
|
+
* The two answers mean genuinely different things to whoever reads the record, and a reader cannot
|
|
1041
|
+
* tell them apart from the rest of the payload — which is why this is a named member rather than an
|
|
1042
|
+
* inference from whether the action fields happen to be present.
|
|
1043
|
+
*
|
|
1044
|
+
* The event type stays SINGLE across both, deliberately. The fact recorded is "this tenant has no
|
|
1045
|
+
* administratively usable owner", and that is the query an operator needs to be one query: splitting
|
|
1046
|
+
* it in two would mean a breach is missed by whichever half somebody alerts on.
|
|
1047
|
+
*/
|
|
1048
|
+
export var AdministrativeContinuityBreachDetection;
|
|
1049
|
+
(function (AdministrativeContinuityBreachDetection) {
|
|
1050
|
+
/**
|
|
1051
|
+
* A guarded lifecycle write was ALLOWED through and stranded the tenant.
|
|
1052
|
+
*
|
|
1053
|
+
* The permissive branch is deliberate — refusing a suspension would mean an operator cannot lock
|
|
1054
|
+
* out a compromised owner without first transferring ownership using the tenant the attacker
|
|
1055
|
+
* controls — so this record IS the control that makes the trade acceptable. The action fields are
|
|
1056
|
+
* populated here, because there is an action to name.
|
|
1057
|
+
*/
|
|
1058
|
+
AdministrativeContinuityBreachDetection["ALLOWED_LIFECYCLE_ACTION"] = "allowed_lifecycle_action";
|
|
1059
|
+
/**
|
|
1060
|
+
* The boot report found the tenant ALREADY stranded, by a route no guard ever saw: a direct
|
|
1061
|
+
* database edit, a restore from a backup taken mid-erasure, a seed that authored no owner, or a
|
|
1062
|
+
* role-table change that redefined which roles confer ownership.
|
|
1063
|
+
*
|
|
1064
|
+
* There is no action to name, so the action fields are absent rather than filled with placeholders
|
|
1065
|
+
* — the same reading `logApplicationSuperAdminFloorBreached` takes for its missing `userId`.
|
|
1066
|
+
*/
|
|
1067
|
+
AdministrativeContinuityBreachDetection["BOOT_REPORT"] = "boot_report";
|
|
1068
|
+
})(AdministrativeContinuityBreachDetection || (AdministrativeContinuityBreachDetection = {}));
|
|
858
1069
|
export const AuditableEvent_Organization_OwnerFloorBreachedEventDataSchema = z.object({
|
|
859
1070
|
eventType: z.literal(CoreAuditableEventType.ORGANIZATION_OWNER_FLOOR_BREACHED),
|
|
860
1071
|
/** The tenant left with no administratively usable owner. */
|
|
861
1072
|
organizationId: z.string(),
|
|
862
|
-
/**
|
|
863
|
-
|
|
1073
|
+
/**
|
|
1074
|
+
* WHICH observation produced this record. Required, so the compiler forces every emitter — present
|
|
1075
|
+
* and future — to say which; a reader cannot recover it from the payload, and guessing it from the
|
|
1076
|
+
* presence of the action fields would make an emitter's omission look like a boot observation.
|
|
1077
|
+
*/
|
|
1078
|
+
detectedBy: z.enum(AdministrativeContinuityBreachDetection),
|
|
864
1079
|
/** How many usable owners remain (expected: 0 when emitted). */
|
|
865
1080
|
remainingUsableOwners: z.number(),
|
|
866
|
-
/**
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
1081
|
+
/**
|
|
1082
|
+
* The owner-conferring memberships the action removed from the population.
|
|
1083
|
+
*
|
|
1084
|
+
* Absent under `BOOT_REPORT`: nothing was removed within sight of a guard, which is the whole
|
|
1085
|
+
* reason the boot report has to look.
|
|
1086
|
+
*/
|
|
1087
|
+
reducedMemberIds: z.array(z.string()).optional(),
|
|
1088
|
+
/** The lifecycle verb that caused it — the operator-facing "what did this". Absent under `BOOT_REPORT`. */
|
|
1089
|
+
operationIdentifier: z.string().optional(),
|
|
1090
|
+
/** The subject whose deactivation triggered it. Absent under `BOOT_REPORT`. */
|
|
1091
|
+
subjectUserId: z.string().optional(),
|
|
1092
|
+
/**
|
|
1093
|
+
* The status the subject moved to, so a reader need not infer usability from the verb alone. Absent
|
|
1094
|
+
* under `BOOT_REPORT`.
|
|
1095
|
+
*/
|
|
1096
|
+
subjectNextStatus: z.string().optional(),
|
|
872
1097
|
});
|
|
873
1098
|
// Organization Member Event Data Schemas
|
|
874
1099
|
export const AuditableEvent_OrganizationMember_InvitedEventDataSchema = z.object({
|
|
@@ -1490,6 +1715,239 @@ export const AuditableEvent_Organization_SIEMExportConfiguredEventDataSchema = z
|
|
|
1490
1715
|
webhookUrlDomain: z.string().optional(),
|
|
1491
1716
|
eventFormatConfigured: z.string().optional(),
|
|
1492
1717
|
});
|
|
1718
|
+
// Organization Provider Credential Event Data Schemas
|
|
1719
|
+
//
|
|
1720
|
+
// ## The value is absent by CONSTRUCTION
|
|
1721
|
+
//
|
|
1722
|
+
// Every field below is an identifier, a timestamp, a closed vocabulary or a count. There is no
|
|
1723
|
+
// free-text field an implementation could put a secret in by accident, and no `changes` /
|
|
1724
|
+
// `metadata` record — the shape the SSO event uses (`z.record(z.string(), z.any())`) is exactly
|
|
1725
|
+
// what a credential event must not have, because an audit row is replicated to the organization's
|
|
1726
|
+
// SIEM and to the immutable store, and neither can be edited afterwards.
|
|
1727
|
+
//
|
|
1728
|
+
// ## Why a provider ref and a slug, and nothing about the value
|
|
1729
|
+
//
|
|
1730
|
+
// A reader needs to know WHICH authority moved. `providerRef` + `secretSlug` say that completely.
|
|
1731
|
+
// A fingerprint of the value was considered and rejected: it is a stable oracle for confirming a
|
|
1732
|
+
// guessed secret, so it would put a verification oracle into the one store designed never to
|
|
1733
|
+
// forget.
|
|
1734
|
+
/**
|
|
1735
|
+
* A tenant granted this application authority to act as it toward a third party.
|
|
1736
|
+
*
|
|
1737
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — organization authorizes delegated
|
|
1738
|
+
* access to a named third party.
|
|
1739
|
+
*/
|
|
1740
|
+
export const AuditableEvent_OrganizationProviderCredential_SetEventDataSchema = z.object({
|
|
1741
|
+
eventType: z.literal(CoreAuditableEventType.ORGANIZATION_PROVIDER_CREDENTIAL_SET),
|
|
1742
|
+
organizationId: z.string(),
|
|
1743
|
+
providerRef: z.string(),
|
|
1744
|
+
secretSlug: z.string(),
|
|
1745
|
+
/** The acting administrator. Absent only on a system-initiated write, which none exists today. */
|
|
1746
|
+
setBy: z.string().optional(),
|
|
1747
|
+
credentialId: z.string(),
|
|
1748
|
+
});
|
|
1749
|
+
/**
|
|
1750
|
+
* The stored VALUE changed for a credential that already existed.
|
|
1751
|
+
*
|
|
1752
|
+
* Separate from `_SET` because rotation is the response to a suspected compromise, and "was this
|
|
1753
|
+
* rotated after the incident?" must be answerable without reading every configuration edit.
|
|
1754
|
+
*
|
|
1755
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — the delegated authority's secret is
|
|
1756
|
+
* replaced.
|
|
1757
|
+
*/
|
|
1758
|
+
export const AuditableEvent_OrganizationProviderCredential_RotatedEventDataSchema = z.object({
|
|
1759
|
+
eventType: z.literal(CoreAuditableEventType.ORGANIZATION_PROVIDER_CREDENTIAL_ROTATED),
|
|
1760
|
+
organizationId: z.string(),
|
|
1761
|
+
providerRef: z.string(),
|
|
1762
|
+
secretSlug: z.string(),
|
|
1763
|
+
rotatedBy: z.string().optional(),
|
|
1764
|
+
credentialId: z.string(),
|
|
1765
|
+
/** When the value it replaced was set — how long the retired secret was live. */
|
|
1766
|
+
previousSecretSetAt: z.string().optional(),
|
|
1767
|
+
});
|
|
1768
|
+
/**
|
|
1769
|
+
* The credential was RESOLVED for an outbound call — the application acted as the tenant.
|
|
1770
|
+
*
|
|
1771
|
+
* The highest-volume of the four and the one that makes the other three worth having: without a
|
|
1772
|
+
* use event, a leaked credential's exploitation is invisible and only its configuration is
|
|
1773
|
+
* recorded. `resolvedFrom` distinguishes a tenant's own credential from the deployment-wide
|
|
1774
|
+
* environment fallback, which is precisely the distinction this whole resource exists to make
|
|
1775
|
+
* visible — a tenant silently acting as the shared principal is the defect, and here it is a
|
|
1776
|
+
* value in a field rather than something nobody can see.
|
|
1777
|
+
*
|
|
1778
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — delegated authority is exercised.
|
|
1779
|
+
*/
|
|
1780
|
+
export const AuditableEvent_OrganizationProviderCredential_UsedEventDataSchema = z.object({
|
|
1781
|
+
eventType: z.literal(CoreAuditableEventType.ORGANIZATION_PROVIDER_CREDENTIAL_USED),
|
|
1782
|
+
organizationId: z.string(),
|
|
1783
|
+
providerRef: z.string(),
|
|
1784
|
+
secretSlug: z.string(),
|
|
1785
|
+
resolvedFrom: z.enum(ProviderCredentialResolutionSource),
|
|
1786
|
+
/** Absent when `resolvedFrom` is the deployment environment — there is no row to name. */
|
|
1787
|
+
credentialId: z.string().optional(),
|
|
1788
|
+
});
|
|
1789
|
+
/**
|
|
1790
|
+
* The grant ended — by the tenant removing it, or by the tenant itself being purged.
|
|
1791
|
+
*
|
|
1792
|
+
* `reason` separates the two, because "the credential is gone" means different things to an
|
|
1793
|
+
* incident reviewer depending on whether a human revoked it or a cascade removed it.
|
|
1794
|
+
*
|
|
1795
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — evidence that delegated authority
|
|
1796
|
+
* was withdrawn.
|
|
1797
|
+
*/
|
|
1798
|
+
export const AuditableEvent_OrganizationProviderCredential_DeletedEventDataSchema = z.object({
|
|
1799
|
+
eventType: z.literal(CoreAuditableEventType.ORGANIZATION_PROVIDER_CREDENTIAL_DELETED),
|
|
1800
|
+
organizationId: z.string(),
|
|
1801
|
+
providerRef: z.string(),
|
|
1802
|
+
secretSlug: z.string(),
|
|
1803
|
+
deletedBy: z.string().optional(),
|
|
1804
|
+
credentialId: z.string(),
|
|
1805
|
+
reason: z.enum(ProviderCredentialDeletionReason),
|
|
1806
|
+
});
|
|
1807
|
+
/**
|
|
1808
|
+
* A PERSON connected their own account at a third party to this application.
|
|
1809
|
+
*
|
|
1810
|
+
* The organization's four events say "this tenant authorized the application". These four say "this
|
|
1811
|
+
* individual did", and the difference is not cosmetic: the vendor will attribute every resulting act
|
|
1812
|
+
* to that person's account, so the trail that answers "who authorized this" has to name them.
|
|
1813
|
+
*
|
|
1814
|
+
* `userId` is the subject, not the actor, and the two are the same here BY CONSTRUCTION — the
|
|
1815
|
+
* resource admits no administrative variant, so nobody but the holder can write one of these rows.
|
|
1816
|
+
* That is why there is no `setBy`: an organization credential needs one because several
|
|
1817
|
+
* administrators can write the tenant's row, and a person's own credential has exactly one possible
|
|
1818
|
+
* author. A `setBy` that could only ever repeat `userId` would invite a future reader to believe the
|
|
1819
|
+
* two can differ.
|
|
1820
|
+
*
|
|
1821
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — a user authorizes third-party
|
|
1822
|
+
* delegated access.
|
|
1823
|
+
*/
|
|
1824
|
+
export const AuditableEvent_UserProviderCredential_SetEventDataSchema = z.object({
|
|
1825
|
+
eventType: z.literal(CoreAuditableEventType.USER_PROVIDER_CREDENTIAL_SET),
|
|
1826
|
+
userId: z.string(),
|
|
1827
|
+
providerRef: z.string(),
|
|
1828
|
+
secretSlug: z.string(),
|
|
1829
|
+
credentialId: z.string(),
|
|
1830
|
+
});
|
|
1831
|
+
/**
|
|
1832
|
+
* A PERSON completed a consent ceremony at a vendor and this application now holds their grant.
|
|
1833
|
+
*
|
|
1834
|
+
* The subject and the actor are the same by construction — the resource admits no administrative
|
|
1835
|
+
* variant, and the connect leg refuses any owner but the caller — so there is no `grantedBy`.
|
|
1836
|
+
*
|
|
1837
|
+
* `grantedScopes` is what the VENDOR said it issued, not what was asked for. The two differ often
|
|
1838
|
+
* enough to matter: a vendor may narrow a request against what the account is permitted, and the
|
|
1839
|
+
* answer to "what could this application actually do as them" is the granted set. Optional because
|
|
1840
|
+
* several vendors return no scope at all on a token response, and an empty array would assert
|
|
1841
|
+
* something stronger than silence.
|
|
1842
|
+
*
|
|
1843
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — a user authorizes third-party
|
|
1844
|
+
* delegated access, and the authorization's extent is recorded with it.
|
|
1845
|
+
*/
|
|
1846
|
+
export const AuditableEvent_UserProviderConnection_GrantedEventDataSchema = z.object({
|
|
1847
|
+
eventType: z.literal(CoreAuditableEventType.USER_PROVIDER_CONNECTION_GRANTED),
|
|
1848
|
+
userId: z.string(),
|
|
1849
|
+
providerRef: z.string(),
|
|
1850
|
+
secretSlug: z.string(),
|
|
1851
|
+
credentialId: z.string(),
|
|
1852
|
+
grantedScopes: z.array(z.string()).optional(),
|
|
1853
|
+
/**
|
|
1854
|
+
* WHICH account at the vendor — a workspace, a tenant, a directory. Never a secret, and the answer
|
|
1855
|
+
* to a question the row alone cannot settle: two people connecting the same provider may be
|
|
1856
|
+
* granting access to entirely different organizations of that vendor.
|
|
1857
|
+
*/
|
|
1858
|
+
accountRef: z.string().optional(),
|
|
1859
|
+
/**
|
|
1860
|
+
* Whether this replaced a connection that already existed.
|
|
1861
|
+
*
|
|
1862
|
+
* A first connection and a re-authorization look identical in the row afterwards, and they are not
|
|
1863
|
+
* the same event to an auditor: a re-authorization frequently follows a revocation at the vendor,
|
|
1864
|
+
* which is exactly the sequence worth being able to see.
|
|
1865
|
+
*/
|
|
1866
|
+
replacedExistingConnection: z.boolean(),
|
|
1867
|
+
});
|
|
1868
|
+
/**
|
|
1869
|
+
* An ORGANIZATION's delegated authorization toward a vendor was granted.
|
|
1870
|
+
*
|
|
1871
|
+
* Mirrors the person's event and is deliberately not the same event with a nullable user: the
|
|
1872
|
+
* subject is a tenant, the SIEM routing is the tenant's, and the data-protection reading differs —
|
|
1873
|
+
* a tenant's shared integration is not anybody's personal connection.
|
|
1874
|
+
*
|
|
1875
|
+
* `grantedByUserId` exists here and not on the user's, for the reason the `_SET` pair already
|
|
1876
|
+
* records: several administrators can authorize on a tenant's behalf, so WHO did is a real question.
|
|
1877
|
+
*
|
|
1878
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — an organization authorizes this
|
|
1879
|
+
* application to act as it toward a named third party.
|
|
1880
|
+
*/
|
|
1881
|
+
export const AuditableEvent_OrganizationProviderConnection_GrantedEventDataSchema = z.object({
|
|
1882
|
+
eventType: z.literal(CoreAuditableEventType.ORGANIZATION_PROVIDER_CONNECTION_GRANTED),
|
|
1883
|
+
organizationId: z.string(),
|
|
1884
|
+
providerRef: z.string(),
|
|
1885
|
+
secretSlug: z.string(),
|
|
1886
|
+
credentialId: z.string(),
|
|
1887
|
+
grantedByUserId: z.string().optional(),
|
|
1888
|
+
grantedScopes: z.array(z.string()).optional(),
|
|
1889
|
+
accountRef: z.string().optional(),
|
|
1890
|
+
replacedExistingConnection: z.boolean(),
|
|
1891
|
+
});
|
|
1892
|
+
/**
|
|
1893
|
+
* The stored VALUE changed for a person's credential that already existed.
|
|
1894
|
+
*
|
|
1895
|
+
* Separate from `_SET` for the organization's reason — rotation answers "was this replaced after the
|
|
1896
|
+
* incident?" — and for one that is specific to a person: a credential someone rotates on their own
|
|
1897
|
+
* initiative is often the first evidence that they believe their vendor account was compromised.
|
|
1898
|
+
*
|
|
1899
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — the delegated authority's secret is
|
|
1900
|
+
* replaced.
|
|
1901
|
+
*/
|
|
1902
|
+
export const AuditableEvent_UserProviderCredential_RotatedEventDataSchema = z.object({
|
|
1903
|
+
eventType: z.literal(CoreAuditableEventType.USER_PROVIDER_CREDENTIAL_ROTATED),
|
|
1904
|
+
userId: z.string(),
|
|
1905
|
+
providerRef: z.string(),
|
|
1906
|
+
secretSlug: z.string(),
|
|
1907
|
+
credentialId: z.string(),
|
|
1908
|
+
/** When the value it replaced was set — how long the retired secret was live. */
|
|
1909
|
+
previousSecretSetAt: z.string().optional(),
|
|
1910
|
+
});
|
|
1911
|
+
/**
|
|
1912
|
+
* The credential was RESOLVED for an outbound call — the application acted as that person.
|
|
1913
|
+
*
|
|
1914
|
+
* `resolvedFrom` is present for symmetry with the organization event but carries a narrower range:
|
|
1915
|
+
* a person's credential has NO fallback, because substituting the deployment's shared principal for
|
|
1916
|
+
* someone's own account would attribute the act to the wrong party at the vendor — the very
|
|
1917
|
+
* substitution the whole scope triangle exists to forbid. So this field reads
|
|
1918
|
+
* `USER_CREDENTIAL` on every event, and a reviewer seeing anything else is looking at a defect.
|
|
1919
|
+
*
|
|
1920
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — delegated authority is exercised.
|
|
1921
|
+
*/
|
|
1922
|
+
export const AuditableEvent_UserProviderCredential_UsedEventDataSchema = z.object({
|
|
1923
|
+
eventType: z.literal(CoreAuditableEventType.USER_PROVIDER_CREDENTIAL_USED),
|
|
1924
|
+
userId: z.string(),
|
|
1925
|
+
providerRef: z.string(),
|
|
1926
|
+
secretSlug: z.string(),
|
|
1927
|
+
resolvedFrom: z.enum(ProviderCredentialResolutionSource),
|
|
1928
|
+
credentialId: z.string(),
|
|
1929
|
+
});
|
|
1930
|
+
/**
|
|
1931
|
+
* The person's grant ended — by them removing it, or by their own erasure.
|
|
1932
|
+
*
|
|
1933
|
+
* `reason` matters more here than on the organization sibling. A credential removed by a cascade
|
|
1934
|
+
* from a subject-erasure request is EVIDENCE that the erasure reached this store, and it is the
|
|
1935
|
+
* evidence an operator produces when asked whether a person's third-party keys were destroyed. The
|
|
1936
|
+
* row itself is gone by then, so the event is all that remains.
|
|
1937
|
+
*
|
|
1938
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — evidence that delegated authority
|
|
1939
|
+
* was withdrawn.
|
|
1940
|
+
* assurance-control: WILDO.PRIVACY.ERASURE — evidence that erasure destroyed the subject's
|
|
1941
|
+
* third-party credentials.
|
|
1942
|
+
*/
|
|
1943
|
+
export const AuditableEvent_UserProviderCredential_DeletedEventDataSchema = z.object({
|
|
1944
|
+
eventType: z.literal(CoreAuditableEventType.USER_PROVIDER_CREDENTIAL_DELETED),
|
|
1945
|
+
userId: z.string(),
|
|
1946
|
+
providerRef: z.string(),
|
|
1947
|
+
secretSlug: z.string(),
|
|
1948
|
+
credentialId: z.string(),
|
|
1949
|
+
reason: z.enum(ProviderCredentialDeletionReason),
|
|
1950
|
+
});
|
|
1493
1951
|
// Outbound M2M Webhook Event Data Schemas
|
|
1494
1952
|
/**
|
|
1495
1953
|
* One `webhookConfig.testEndpoint` attempt — an admin causing the platform to open an
|
|
@@ -1679,6 +2137,91 @@ export const AuditableEvent_User_PasskeyAuthFailureEventDataSchema = z.object({
|
|
|
1679
2137
|
userAgent: z.string(),
|
|
1680
2138
|
sessionId: z.string(),
|
|
1681
2139
|
});
|
|
2140
|
+
/**
|
|
2141
|
+
* A passkey assertion whose SIGNATURE VERIFIED and whose signature counter did not advance.
|
|
2142
|
+
*
|
|
2143
|
+
* This is the WebAuthn cloned-authenticator signal (W3C WebAuthn L3 §6.1.1: "The signature
|
|
2144
|
+
* counter's purpose is to aid Relying Parties in detecting cloned authenticators"). It is emitted
|
|
2145
|
+
* on the spec's own predicate — either counter non-zero AND the received value not greater than
|
|
2146
|
+
* the stored one — so a credential that reports 0 permanently, which every synced passkey does,
|
|
2147
|
+
* compares 0-against-0 and never reaches here.
|
|
2148
|
+
*
|
|
2149
|
+
* spec-cite: W3C Web Authentication Level 3, §6.1.1 Signature Counter Considerations
|
|
2150
|
+
* (https://www.w3.org/TR/webauthn-3/#sctn-sign-counter). The spec declines to mandate an outcome
|
|
2151
|
+
* (§7.2 step 22: "whether the Relying Party ... fails the authentication ceremony or not, is
|
|
2152
|
+
* Relying Party-specific"); Wildo refuses, matching what every major implementation does.
|
|
2153
|
+
*
|
|
2154
|
+
* SEPARATE from `USER_PASSKEY_AUTHENTICATION_FAILURE` deliberately. A wrong credential, an absent
|
|
2155
|
+
* challenge and a bad signature are routine noise; this one means a private key may exist in two
|
|
2156
|
+
* places. Recorded as its own type at CRITICAL so it is alertable rather than buried among ordinary
|
|
2157
|
+
* failed logins — which is exactly where it lived until 2026-09-08.
|
|
2158
|
+
*
|
|
2159
|
+
* The device-type, backup and AAGUID fields are carried for TRIAGE, never for a decision: nothing
|
|
2160
|
+
* branches on them. A synced credential that once reported a non-zero counter and then regresses is
|
|
2161
|
+
* still a signal, and exempting by device type would silently disable clone detection for the
|
|
2162
|
+
* growing majority of credentials.
|
|
2163
|
+
*/
|
|
2164
|
+
/**
|
|
2165
|
+
* One file that a scanner concluded is infected (#506).
|
|
2166
|
+
*
|
|
2167
|
+
* `threatName` is the scanner's own signature or rule name (`Eicar-Test-Signature`, a YARA rule id).
|
|
2168
|
+
* It is carried because it is the first thing a responder needs and it names a THREAT, not a person
|
|
2169
|
+
* — unlike a file name, which is user-supplied content and is deliberately absent: audit rows are
|
|
2170
|
+
* replicated to the organisation's SIEM and to the immutable store, and an uploaded file's name
|
|
2171
|
+
* routinely carries personal data ("Invoice - Jane Doe.pdf"). The file id resolves to the row for
|
|
2172
|
+
* anyone authorised to look.
|
|
2173
|
+
*/
|
|
2174
|
+
export const AuditableEvent_File_MalwareDetectedEventDataSchema = z.object({
|
|
2175
|
+
eventType: z.literal(CoreAuditableEventType.FILE_MALWARE_DETECTED),
|
|
2176
|
+
fileId: z.string(),
|
|
2177
|
+
/** Which scanner concluded it — ClamAV signature matching and YARA pattern matching are different evidence. */
|
|
2178
|
+
scannerRef: z.string(),
|
|
2179
|
+
/** The signature or rule the scanner matched, when it reports one. */
|
|
2180
|
+
threatName: z.string().optional(),
|
|
2181
|
+
/** The resource the file belongs to, when the scan context carries it. */
|
|
2182
|
+
resourceType: z.string().optional(),
|
|
2183
|
+
resourceId: z.string().optional(),
|
|
2184
|
+
organizationId: z.string().optional(),
|
|
2185
|
+
/** Terminal status the file was moved to. Recorded so the row cannot claim a state the record does not hold. */
|
|
2186
|
+
fileStatus: z.string(),
|
|
2187
|
+
});
|
|
2188
|
+
/**
|
|
2189
|
+
* One scan that could not be completed (#506).
|
|
2190
|
+
*
|
|
2191
|
+
* Distinct from a detection: the control did not run. `failureReason` is TRUNCATED because a scanner
|
|
2192
|
+
* error routinely embeds a host, a socket path or a temporary file path, and this row reaches the
|
|
2193
|
+
* organisation's SIEM.
|
|
2194
|
+
*/
|
|
2195
|
+
export const AuditableEvent_File_MalwareScanFailedEventDataSchema = z.object({
|
|
2196
|
+
eventType: z.literal(CoreAuditableEventType.FILE_MALWARE_SCAN_FAILED),
|
|
2197
|
+
fileId: z.string(),
|
|
2198
|
+
scannerRef: z.string(),
|
|
2199
|
+
/** Truncated scanner/pipeline error — enough to triage, bounded so a path cannot ride into the SIEM whole. */
|
|
2200
|
+
failureReason: z.string().optional(),
|
|
2201
|
+
resourceType: z.string().optional(),
|
|
2202
|
+
resourceId: z.string().optional(),
|
|
2203
|
+
organizationId: z.string().optional(),
|
|
2204
|
+
fileStatus: z.string(),
|
|
2205
|
+
});
|
|
2206
|
+
export const AuditableEvent_User_PasskeyCloneSuspectedEventDataSchema = z.object({
|
|
2207
|
+
eventType: z.literal(CoreAuditableEventType.USER_PASSKEY_CLONE_SUSPECTED),
|
|
2208
|
+
userId: z.string(),
|
|
2209
|
+
credentialId: z.string(),
|
|
2210
|
+
/** The counter Wildo held for this credential before the assertion. */
|
|
2211
|
+
storedCounter: z.number().int().min(0),
|
|
2212
|
+
/** The counter the authenticator reported. Not greater than `storedCounter`, which is the signal. */
|
|
2213
|
+
receivedCounter: z.number().int().min(0),
|
|
2214
|
+
/** Triage only: `singleDevice` or `multiDevice`, as captured at registration. */
|
|
2215
|
+
credentialDeviceType: z.string(),
|
|
2216
|
+
/** Triage only: whether the credential is backed up (synced), as captured at registration. */
|
|
2217
|
+
credentialBackedUp: z.boolean(),
|
|
2218
|
+
/** Triage only: the authenticator model identifier, when the registration reported one. */
|
|
2219
|
+
aaguid: z.string().optional(),
|
|
2220
|
+
/** Which door the assertion arrived at — a step-up regression is not the same story as a login. */
|
|
2221
|
+
ceremony: z.string(),
|
|
2222
|
+
ipAddress: z.string(),
|
|
2223
|
+
userAgent: z.string(),
|
|
2224
|
+
});
|
|
1682
2225
|
export const AuditableEvent_User_PasskeyRemovedEventDataSchema = z.object({
|
|
1683
2226
|
eventType: z.literal(CoreAuditableEventType.USER_PASSKEY_REMOVED),
|
|
1684
2227
|
userId: z.string(),
|
|
@@ -1779,15 +2322,41 @@ export const AuditableEvent_OAuth2ProviderBlockedEventDataSchema = z.object({
|
|
|
1779
2322
|
}
|
|
1780
2323
|
});
|
|
1781
2324
|
// Emergency Access Event Data Schema
|
|
2325
|
+
/**
|
|
2326
|
+
* A named break-glass account signed in past its tenant's own SSO requirement (#423).
|
|
2327
|
+
*
|
|
2328
|
+
* `organizationId` was REQUIRED here and is now one of two scopes, because `emergencyAccess` lives
|
|
2329
|
+
* on the POLYMORPHIC SSO config: an application-scope policy carries break-glass accounts for the
|
|
2330
|
+
* application itself, and requiring an organization id would have made the one event that matters
|
|
2331
|
+
* unemittable for exactly that case — a privileged sign-in with no record, which is the opposite of
|
|
2332
|
+
* what this event is for. The exactly-one-scope refinement follows the OAuth2-provider-blocked
|
|
2333
|
+
* event above rather than inventing a second shape.
|
|
2334
|
+
*/
|
|
1782
2335
|
export const AuditableEvent_EmergencyAccess_UsedEventDataSchema = z.object({
|
|
1783
2336
|
eventType: z.literal(CoreAuditableEventType.EMERGENCY_ACCESS_USED),
|
|
1784
2337
|
userId: z.string(),
|
|
1785
2338
|
email: z.email(),
|
|
1786
|
-
|
|
2339
|
+
scopeType: z.enum(AuthScopeType),
|
|
2340
|
+
organizationId: z.string().optional(),
|
|
2341
|
+
applicationId: z.string().optional(),
|
|
1787
2342
|
reason: z.string().optional(),
|
|
1788
2343
|
ipAddress: z.string(),
|
|
1789
2344
|
userAgent: z.string(),
|
|
1790
2345
|
sessionId: z.string(),
|
|
2346
|
+
}).superRefine((event, ctx) => {
|
|
2347
|
+
const hasOrganizationScope = event.scopeType === AuthScopeType.ORGANIZATION
|
|
2348
|
+
&& event.organizationId !== undefined
|
|
2349
|
+
&& event.applicationId === undefined;
|
|
2350
|
+
const hasApplicationScope = event.scopeType === AuthScopeType.APPLICATION
|
|
2351
|
+
&& event.applicationId !== undefined
|
|
2352
|
+
&& event.organizationId === undefined;
|
|
2353
|
+
if (!hasOrganizationScope && !hasApplicationScope) {
|
|
2354
|
+
ctx.addIssue({
|
|
2355
|
+
code: 'custom',
|
|
2356
|
+
path: ['scopeType'],
|
|
2357
|
+
message: 'Emergency-access events require exactly one explicit tenant scope',
|
|
2358
|
+
});
|
|
2359
|
+
}
|
|
1791
2360
|
});
|
|
1792
2361
|
export const AuditableEvent_FieldAccess_EventDataSchema = z.object({
|
|
1793
2362
|
eventType: z.literal(CoreAuditableEventType.FIELD_ACCESS),
|
|
@@ -1977,17 +2546,21 @@ export const AuditableEvent_ResourceOperationPerformed_EventDataSchema = z.objec
|
|
|
1977
2546
|
* `organization-ownership-grant-hostile.e2e.ts` probe F-1a, which deleted a membership row in
|
|
1978
2547
|
* another tenant and got a 200.
|
|
1979
2548
|
*
|
|
1980
|
-
* This event is the visibility half
|
|
1981
|
-
*
|
|
2549
|
+
* This event is the visibility half, and it is NOT the refusal. The refusal shipped separately and
|
|
2550
|
+
* lives in `authorizeOrganizations`: an undeclared crossing is no longer admitted, and the caller is
|
|
2551
|
+
* answered as not-found so the response cannot be used as an existence oracle. Emission here stays
|
|
1982
2552
|
* best-effort and never blocks the request: an operator action must not fail because the audit sink
|
|
1983
2553
|
* is down, and a fail-closed variant would let anyone disable operator support by breaking the sink.
|
|
2554
|
+
* The observation is taken BEFORE the admission decision, on purpose, so a sanctioned crossing is
|
|
2555
|
+
* recorded too.
|
|
1984
2556
|
*
|
|
1985
2557
|
* ## Reading the event
|
|
1986
2558
|
*
|
|
1987
2559
|
* {@link admissionDeclared} is the field that matters most. `true` means the operation VARIANT
|
|
1988
2560
|
* declared `admitsCrossTenantPlatformAdministration` — an intended, reviewed crossing such as
|
|
1989
|
-
* `organizationMembers.grantOwnership
|
|
1990
|
-
*
|
|
2561
|
+
* `organizationMembers.grantOwnership`, which additionally requires a usable platform access grant.
|
|
2562
|
+
* `false` now means an ATTEMPTED undeclared crossing, which was refused: still the population to
|
|
2563
|
+
* watch, because it is reach nobody declared and no specification describes.
|
|
1991
2564
|
*
|
|
1992
2565
|
* assurance-control: WILDO.ACCESS.CROSS_TENANT_ADMINISTRATION — platform-tier access to a tenant the
|
|
1993
2566
|
* principal does not belong to.
|
|
@@ -2065,8 +2638,9 @@ export const AuditableEvent_CrossTenantAdministrativeAccess_EventDataSchema = z.
|
|
|
2065
2638
|
/**
|
|
2066
2639
|
* Did the operation variant DECLARE this crossing (`admitsCrossTenantPlatformAdministration`)?
|
|
2067
2640
|
*
|
|
2068
|
-
* `false` is the signal worth alerting on:
|
|
2069
|
-
* describes.
|
|
2641
|
+
* `false` is the signal worth alerting on: an ATTEMPTED crossing that no variant asked for and no
|
|
2642
|
+
* specification describes. It was refused, so the row records an attempt rather than a completed
|
|
2643
|
+
* access. See this schema's JSDoc.
|
|
2070
2644
|
*/
|
|
2071
2645
|
admissionDeclared: z.boolean(),
|
|
2072
2646
|
/** The caller's roles as they were at decision time. */
|
|
@@ -2179,22 +2753,24 @@ export const AuditableEvent_ResourceOperationDenied_EventDataSchema = z.object({
|
|
|
2179
2753
|
* that scrubbed data, and its two defining properties (vs `SYSTEM_CONTEXT_READ`, which names only the
|
|
2180
2754
|
* RUNTIME that acted, never a human) are:
|
|
2181
2755
|
*
|
|
2182
|
-
* 1. **Human attribution** — `accessingUserId` names the actual
|
|
2183
|
-
*
|
|
2184
|
-
*
|
|
2756
|
+
* 1. **Human attribution** — `accessingUserId` names the actual human who exercised the see-through,
|
|
2757
|
+
* so a retained-data reveal is never anonymous. Non-empty (`.trim().min(1)`) — a blank id cannot
|
|
2758
|
+
* stand in for a human. The gate admits `APP_ADMIN_SUPER_ADMIN` and nothing else; a dedicated
|
|
2759
|
+
* auditor role does not exist yet, and adding one is a purely additive change to that gate.
|
|
2185
2760
|
* 2. **A required reason** — `reason` is the mandatory justification for revealing scrubbed PII.
|
|
2186
2761
|
* Non-empty (`.trim().min(1)`): a blank OR whitespace-only reason fails validation, so the audit
|
|
2187
2762
|
* trail cannot record a reveal without a real "why". The see-through primitives ALSO fail-closed on
|
|
2188
2763
|
* blank attribution before the read (the schema `.min(1)` is the contract; the primitive guard is
|
|
2189
2764
|
* the enforcement point, since the audit store persists `eventData` as an unparsed record).
|
|
2190
2765
|
*
|
|
2191
|
-
* Strictly read-only (the see-through primitive never mutates). Emitted by
|
|
2192
|
-
*
|
|
2193
|
-
* contract
|
|
2766
|
+
* Strictly read-only (the see-through primitive never mutates). Emitted TODAY by both see-through
|
|
2767
|
+
* read primitives, `readRetainedAsSystem` and `listRetainedAsSystem`: each calls
|
|
2768
|
+
* `logRetainedDataAccess` after its gates pass, so this is a live event, not a contract awaiting a
|
|
2769
|
+
* producer.
|
|
2194
2770
|
*/
|
|
2195
2771
|
export const AuditableEvent_RetainedDataAccess_EventDataSchema = z.object({
|
|
2196
2772
|
eventType: z.literal(CoreAuditableEventType.RETAINED_DATA_ACCESS),
|
|
2197
|
-
/** The HUMAN principal who performed the see-through read (super-
|
|
2773
|
+
/** The HUMAN principal who performed the see-through read (an application super-administrator). Non-empty. */
|
|
2198
2774
|
accessingUserId: z.string().trim().min(1),
|
|
2199
2775
|
/** REQUIRED non-empty compliance justification for revealing the retained (scrubbed) records — the "why". */
|
|
2200
2776
|
reason: z.string().trim().min(1),
|
|
@@ -2804,6 +3380,10 @@ export const AuditableEvent_TypedDataSchema = z.discriminatedUnion('eventType',
|
|
|
2804
3380
|
AuditableEvent_User_TokenRefreshedEventDataSchema,
|
|
2805
3381
|
AuditableEvent_Organization_SSOConfigurationChangedEventDataSchema,
|
|
2806
3382
|
AuditableEvent_Organization_SIEMExportConfiguredEventDataSchema,
|
|
3383
|
+
AuditableEvent_OrganizationProviderCredential_SetEventDataSchema,
|
|
3384
|
+
AuditableEvent_OrganizationProviderCredential_RotatedEventDataSchema,
|
|
3385
|
+
AuditableEvent_OrganizationProviderCredential_UsedEventDataSchema,
|
|
3386
|
+
AuditableEvent_OrganizationProviderCredential_DeletedEventDataSchema,
|
|
2807
3387
|
AuditableEvent_ApplicationAuthPolicyChanged_EventDataSchema,
|
|
2808
3388
|
AuditableEvent_Webhook_EndpointTestDispatchedEventDataSchema,
|
|
2809
3389
|
AuditableEvent_SCIM_TokenCreatedEventDataSchema,
|
|
@@ -2824,6 +3404,7 @@ export const AuditableEvent_TypedDataSchema = z.discriminatedUnion('eventType',
|
|
|
2824
3404
|
AuditableEvent_User_PasskeyAuthSuccessEventDataSchema,
|
|
2825
3405
|
AuditableEvent_User_PasskeyAuthFailureEventDataSchema,
|
|
2826
3406
|
AuditableEvent_User_PasskeyRemovedEventDataSchema,
|
|
3407
|
+
AuditableEvent_User_PasskeyCloneSuspectedEventDataSchema,
|
|
2827
3408
|
AuditableEvent_User_MagicLinkSentEventDataSchema,
|
|
2828
3409
|
AuditableEvent_User_MagicLinkVerifiedEventDataSchema,
|
|
2829
3410
|
AuditableEvent_User_MagicLinkFailedEventDataSchema,
|
|
@@ -2843,6 +3424,7 @@ export const AuditableEvent_TypedDataSchema = z.discriminatedUnion('eventType',
|
|
|
2843
3424
|
AuditableEvent_RetainedDataAccess_EventDataSchema,
|
|
2844
3425
|
AuditableEvent_SubjectDataExport_EventDataSchema,
|
|
2845
3426
|
AuditableEvent_CollectionDataExport_EventDataSchema,
|
|
3427
|
+
AuditableEvent_User_SessionEvictedEventDataSchema,
|
|
2846
3428
|
AuditableEvent_HttpApiReadThroughAccess_EventDataSchema,
|
|
2847
3429
|
AuditableEvent_HttpApiExternalErasure_EventDataSchema,
|
|
2848
3430
|
AuditableEvent_HttpApiNonErasureAcknowledged_EventDataSchema,
|