unleash-server 7.5.1 → 7.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/addons/feature-event-formatter-md-events.d.ts.map +1 -1
- package/dist/lib/addons/feature-event-formatter-md-events.js +16 -1
- package/dist/lib/addons/feature-event-formatter-md-events.js.map +1 -1
- package/dist/lib/addons/slack-app-definition.d.ts.map +1 -1
- package/dist/lib/addons/slack-app-definition.js +4 -1
- package/dist/lib/addons/slack-app-definition.js.map +1 -1
- package/dist/lib/app.d.ts.map +1 -1
- package/dist/lib/app.js +11 -25
- package/dist/lib/app.js.map +1 -1
- package/dist/lib/create-config.d.ts.map +1 -1
- package/dist/lib/create-config.js +3 -0
- package/dist/lib/create-config.js.map +1 -1
- package/dist/lib/db/api-token-store.d.ts +4 -1
- package/dist/lib/db/api-token-store.d.ts.map +1 -1
- package/dist/lib/db/api-token-store.js +17 -3
- package/dist/lib/db/api-token-store.js.map +1 -1
- package/dist/lib/error/bad-gateway-error.d.ts +7 -0
- package/dist/lib/error/bad-gateway-error.d.ts.map +1 -0
- package/dist/lib/error/bad-gateway-error.js +9 -0
- package/dist/lib/error/bad-gateway-error.js.map +1 -0
- package/dist/lib/error/gateway-timeout-error.d.ts +7 -0
- package/dist/lib/error/gateway-timeout-error.d.ts.map +1 -0
- package/dist/lib/error/gateway-timeout-error.js +9 -0
- package/dist/lib/error/gateway-timeout-error.js.map +1 -0
- package/dist/lib/error/index.d.ts +3 -1
- package/dist/lib/error/index.d.ts.map +1 -1
- package/dist/lib/error/index.js +3 -1
- package/dist/lib/error/index.js.map +1 -1
- package/dist/lib/error/unleash-error.d.ts +1 -1
- package/dist/lib/error/unleash-error.d.ts.map +1 -1
- package/dist/lib/error/unleash-error.js +2 -0
- package/dist/lib/error/unleash-error.js.map +1 -1
- package/dist/lib/events/index.d.ts +4 -1
- package/dist/lib/events/index.d.ts.map +1 -1
- package/dist/lib/events/index.js +6 -0
- package/dist/lib/events/index.js.map +1 -1
- package/dist/lib/features/client-feature-toggles/client-feature-toggle-store.d.ts.map +1 -1
- package/dist/lib/features/client-feature-toggles/client-feature-toggle-store.js +5 -0
- package/dist/lib/features/client-feature-toggles/client-feature-toggle-store.js.map +1 -1
- package/dist/lib/features/client-feature-toggles/client-feature-toggle-store.test.d.ts +2 -0
- package/dist/lib/features/client-feature-toggles/client-feature-toggle-store.test.d.ts.map +1 -0
- package/dist/lib/features/client-feature-toggles/client-feature-toggle-store.test.js +53 -0
- package/dist/lib/features/client-feature-toggles/client-feature-toggle-store.test.js.map +1 -0
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta-read-model.d.ts.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta-read-model.js +5 -0
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta-read-model.js.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta-read-model.test.d.ts +2 -0
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta-read-model.test.d.ts.map +1 -0
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta-read-model.test.js +59 -0
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta-read-model.test.js.map +1 -0
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.d.ts +9 -3
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.d.ts.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.js +165 -92
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.js.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.test.js +475 -1
- package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.test.js.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/delta-cache.d.ts.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/delta-cache.js +3 -0
- package/dist/lib/features/client-feature-toggles/delta/delta-cache.js.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/delta-cache.test.js +15 -0
- package/dist/lib/features/client-feature-toggles/delta/delta-cache.test.js.map +1 -1
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.d.ts +3 -0
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.d.ts.map +1 -0
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.js +16 -0
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.js.map +1 -0
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.test.d.ts +2 -0
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.test.d.ts.map +1 -0
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.test.js +25 -0
- package/dist/lib/features/client-feature-toggles/delta/visible-revision.test.js.map +1 -0
- package/dist/lib/features/context/context.d.ts +0 -1
- package/dist/lib/features/context/context.d.ts.map +1 -1
- package/dist/lib/features/context/context.js +7 -15
- package/dist/lib/features/context/context.js.map +1 -1
- package/dist/lib/features/edgetokens/edge-token-store.d.ts +2 -0
- package/dist/lib/features/edgetokens/edge-token-store.d.ts.map +1 -1
- package/dist/lib/features/edgetokens/edge-token-store.js +20 -0
- package/dist/lib/features/edgetokens/edge-token-store.js.map +1 -1
- package/dist/lib/features/edgetokens/fake-edge-token-store.d.ts +2 -0
- package/dist/lib/features/edgetokens/fake-edge-token-store.d.ts.map +1 -1
- package/dist/lib/features/edgetokens/fake-edge-token-store.js +6 -0
- package/dist/lib/features/edgetokens/fake-edge-token-store.js.map +1 -1
- package/dist/lib/features/events/event-store.d.ts +2 -4
- package/dist/lib/features/events/event-store.d.ts.map +1 -1
- package/dist/lib/features/events/event-store.js +1 -4
- package/dist/lib/features/events/event-store.js.map +1 -1
- package/dist/lib/features/feature-search/feature-search-controller.d.ts.map +1 -1
- package/dist/lib/features/feature-search/feature-search-controller.js +2 -1
- package/dist/lib/features/feature-search/feature-search-controller.js.map +1 -1
- package/dist/lib/features/feature-search/feature-search-service.d.ts.map +1 -1
- package/dist/lib/features/feature-search/feature-search-service.js +5 -0
- package/dist/lib/features/feature-search/feature-search-service.js.map +1 -1
- package/dist/lib/features/feature-search/feature-search-store.d.ts.map +1 -1
- package/dist/lib/features/feature-search/feature-search-store.js +17 -1
- package/dist/lib/features/feature-search/feature-search-store.js.map +1 -1
- package/dist/lib/features/feature-search/feature.search.e2e.test.js +56 -1
- package/dist/lib/features/feature-search/feature.search.e2e.test.js.map +1 -1
- package/dist/lib/features/feature-toggle/configuration-revision-service.d.ts +1 -2
- package/dist/lib/features/feature-toggle/configuration-revision-service.d.ts.map +1 -1
- package/dist/lib/features/feature-toggle/configuration-revision-service.js +2 -10
- package/dist/lib/features/feature-toggle/configuration-revision-service.js.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js +3 -2
- package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js.map +1 -1
- package/dist/lib/features/feature-toggle/types/feature-toggle-strategies-store-type.d.ts +1 -0
- package/dist/lib/features/feature-toggle/types/feature-toggle-strategies-store-type.d.ts.map +1 -1
- package/dist/lib/features/frontend-api/frontend-api-service.d.ts.map +1 -1
- package/dist/lib/features/frontend-api/frontend-api-service.js +8 -0
- package/dist/lib/features/frontend-api/frontend-api-service.js.map +1 -1
- package/dist/lib/features/frontend-api/frontend-api.e2e.test.js +43 -0
- package/dist/lib/features/frontend-api/frontend-api.e2e.test.js.map +1 -1
- package/dist/lib/features/frontend-api/frontend-api.middleware.e2e.test.d.ts +3 -0
- package/dist/lib/features/frontend-api/frontend-api.middleware.e2e.test.d.ts.map +1 -0
- package/dist/lib/features/frontend-api/frontend-api.middleware.e2e.test.js +1071 -0
- package/dist/lib/features/frontend-api/frontend-api.middleware.e2e.test.js.map +1 -0
- package/dist/lib/features/index.d.ts +1 -0
- package/dist/lib/features/index.d.ts.map +1 -1
- package/dist/lib/features/index.js +1 -0
- package/dist/lib/features/index.js.map +1 -1
- package/dist/lib/features/instance-stats/instance-stats-service.d.ts.map +1 -1
- package/dist/lib/features/instance-stats/instance-stats-service.js +1 -3
- package/dist/lib/features/instance-stats/instance-stats-service.js.map +1 -1
- package/dist/lib/features/metrics/impact/impact-metrics.e2e.test.js +12 -12
- package/dist/lib/features/metrics/impact/impact-metrics.e2e.test.js.map +1 -1
- package/dist/lib/features/metrics/impact/metrics-translator.d.ts +5 -2
- package/dist/lib/features/metrics/impact/metrics-translator.d.ts.map +1 -1
- package/dist/lib/features/metrics/impact/metrics-translator.js +86 -102
- package/dist/lib/features/metrics/impact/metrics-translator.js.map +1 -1
- package/dist/lib/features/metrics/impact/metrics-translator.test.js +70 -112
- package/dist/lib/features/metrics/impact/metrics-translator.test.js.map +1 -1
- package/dist/lib/features/project/createProjectService.d.ts.map +1 -1
- package/dist/lib/features/project/createProjectService.js +6 -0
- package/dist/lib/features/project/createProjectService.js.map +1 -1
- package/dist/lib/features/project/project-service.d.ts +2 -1
- package/dist/lib/features/project/project-service.d.ts.map +1 -1
- package/dist/lib/features/project/project-service.js +3 -1
- package/dist/lib/features/project/project-service.js.map +1 -1
- package/dist/lib/features/project-environments/project-environments.e2e.test.js +37 -0
- package/dist/lib/features/project-environments/project-environments.e2e.test.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.d.ts.map +1 -1
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.js +2 -5
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.js +2 -2
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.d.ts +2 -1
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.d.ts.map +1 -1
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.js +20 -3
- package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-milestone-strategy.d.ts +2 -0
- package/dist/lib/features/release-plans/release-plan-milestone-strategy.d.ts.map +1 -1
- package/dist/lib/features/release-plans/release-plan-store.d.ts.map +1 -1
- package/dist/lib/features/release-plans/release-plan-store.js +2 -0
- package/dist/lib/features/release-plans/release-plan-store.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-template-store.d.ts.map +1 -1
- package/dist/lib/features/release-plans/release-plan-template-store.js +4 -3
- package/dist/lib/features/release-plans/release-plan-template-store.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-template-store.test.d.ts +2 -0
- package/dist/lib/features/release-plans/release-plan-template-store.test.d.ts.map +1 -0
- package/dist/lib/features/release-plans/release-plan-template-store.test.js +47 -0
- package/dist/lib/features/release-plans/release-plan-template-store.test.js.map +1 -0
- package/dist/lib/metric-events.d.ts +3 -2
- package/dist/lib/metric-events.d.ts.map +1 -1
- package/dist/lib/metric-events.js +2 -1
- package/dist/lib/metric-events.js.map +1 -1
- package/dist/lib/middleware/api-token-middleware.d.ts.map +1 -1
- package/dist/lib/middleware/api-token-middleware.js +1 -5
- package/dist/lib/middleware/api-token-middleware.js.map +1 -1
- package/dist/lib/middleware/api-token-middleware.test.js +35 -25
- package/dist/lib/middleware/api-token-middleware.test.js.map +1 -1
- package/dist/lib/middleware/backend-token-middleware.d.ts +5 -0
- package/dist/lib/middleware/backend-token-middleware.d.ts.map +1 -0
- package/dist/lib/middleware/backend-token-middleware.js +61 -0
- package/dist/lib/middleware/backend-token-middleware.js.map +1 -0
- package/dist/lib/middleware/backend-token-middleware.test.d.ts +2 -0
- package/dist/lib/middleware/backend-token-middleware.test.d.ts.map +1 -0
- package/dist/lib/middleware/backend-token-middleware.test.js +73 -0
- package/dist/lib/middleware/backend-token-middleware.test.js.map +1 -0
- package/dist/lib/middleware/conditional-middleware.d.ts +20 -0
- package/dist/lib/middleware/conditional-middleware.d.ts.map +1 -1
- package/dist/lib/middleware/conditional-middleware.js +26 -0
- package/dist/lib/middleware/conditional-middleware.js.map +1 -1
- package/dist/lib/middleware/conditional-middleware.test.d.ts +2 -0
- package/dist/lib/middleware/conditional-middleware.test.d.ts.map +1 -0
- package/dist/lib/middleware/conditional-middleware.test.js +31 -0
- package/dist/lib/middleware/conditional-middleware.test.js.map +1 -0
- package/dist/lib/middleware/frontend-token-middleware.d.ts +5 -0
- package/dist/lib/middleware/frontend-token-middleware.d.ts.map +1 -0
- package/dist/lib/middleware/frontend-token-middleware.js +61 -0
- package/dist/lib/middleware/frontend-token-middleware.js.map +1 -0
- package/dist/lib/middleware/user-token-client-api-logger-middleware.js +1 -1
- package/dist/lib/middleware/user-token-client-api-logger-middleware.js.map +1 -1
- package/dist/lib/openapi/spec/event-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/event-search-response-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/events-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/export-result-schema.d.ts +1018 -100
- package/dist/lib/openapi/spec/export-result-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/export-result-schema.js +4 -2
- package/dist/lib/openapi/spec/export-result-schema.js.map +1 -1
- package/dist/lib/openapi/spec/feature-environment-safeguard-schema.d.ts +168 -0
- package/dist/lib/openapi/spec/feature-environment-safeguard-schema.d.ts.map +1 -0
- package/dist/lib/openapi/spec/feature-environment-safeguard-schema.js +66 -0
- package/dist/lib/openapi/spec/feature-environment-safeguard-schema.js.map +1 -0
- package/dist/lib/openapi/spec/feature-environment-schema.d.ts +265 -7
- package/dist/lib/openapi/spec/feature-environment-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/feature-environment-schema.js +13 -0
- package/dist/lib/openapi/spec/feature-environment-schema.js.map +1 -1
- package/dist/lib/openapi/spec/feature-events-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/feature-schema.d.ts +475 -16
- package/dist/lib/openapi/spec/feature-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/feature-schema.js +4 -2
- package/dist/lib/openapi/spec/feature-schema.js.map +1 -1
- package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts +688 -14
- package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/feature-search-environment-schema.js +8 -0
- package/dist/lib/openapi/spec/feature-search-environment-schema.js.map +1 -1
- package/dist/lib/openapi/spec/feature-search-query-parameters.d.ts +10 -1
- package/dist/lib/openapi/spec/feature-search-query-parameters.d.ts.map +1 -1
- package/dist/lib/openapi/spec/feature-search-query-parameters.js +10 -0
- package/dist/lib/openapi/spec/feature-search-query-parameters.js.map +1 -1
- package/dist/lib/openapi/spec/feature-search-response-schema.d.ts +8097 -155
- package/dist/lib/openapi/spec/feature-search-response-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/feature-search-response-schema.js +22 -0
- package/dist/lib/openapi/spec/feature-search-response-schema.js.map +1 -1
- package/dist/lib/openapi/spec/health-overview-schema.d.ts +1336 -210
- package/dist/lib/openapi/spec/health-overview-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/health-overview-schema.js +8 -0
- package/dist/lib/openapi/spec/health-overview-schema.js.map +1 -1
- package/dist/lib/openapi/spec/health-report-schema.d.ts +1336 -210
- package/dist/lib/openapi/spec/health-report-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/import-toggles-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/import-toggles-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/import-toggles-schema.js +4 -2
- package/dist/lib/openapi/spec/import-toggles-schema.js.map +1 -1
- package/dist/lib/openapi/spec/index.d.ts +4 -2
- package/dist/lib/openapi/spec/index.d.ts.map +1 -1
- package/dist/lib/openapi/spec/index.js +4 -2
- package/dist/lib/openapi/spec/index.js.map +1 -1
- package/dist/lib/openapi/spec/integration-event-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/integration-events-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/metric-query-schema.d.ts +6 -0
- package/dist/lib/openapi/spec/metric-query-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/metric-query-schema.js +6 -0
- package/dist/lib/openapi/spec/metric-query-schema.js.map +1 -1
- package/dist/lib/openapi/spec/profile-schema.d.ts +475 -16
- package/dist/lib/openapi/spec/profile-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/project-overview-schema.d.ts +1336 -210
- package/dist/lib/openapi/spec/project-overview-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/project-overview-schema.js +8 -0
- package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
- package/dist/lib/openapi/spec/release-plan-milestone-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.js +1 -1
- package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.js.map +1 -1
- package/dist/lib/openapi/spec/{safeguard-schema.d.ts → release-plan-safeguard-schema.d.ts} +16 -4
- package/dist/lib/openapi/spec/release-plan-safeguard-schema.d.ts.map +1 -0
- package/dist/lib/openapi/spec/{safeguard-schema.js → release-plan-safeguard-schema.js} +3 -3
- package/dist/lib/openapi/spec/release-plan-safeguard-schema.js.map +1 -0
- package/dist/lib/openapi/spec/release-plan-schema.d.ts +23 -5
- package/dist/lib/openapi/spec/release-plan-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/release-plan-schema.js +3 -3
- package/dist/lib/openapi/spec/release-plan-schema.js.map +1 -1
- package/dist/lib/openapi/spec/release-plan-template-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/release-plan-templates-schema.d.ts +2897 -0
- package/dist/lib/openapi/spec/release-plan-templates-schema.d.ts.map +1 -0
- package/dist/lib/openapi/spec/release-plan-templates-schema.js +29 -0
- package/dist/lib/openapi/spec/release-plan-templates-schema.js.map +1 -0
- package/dist/lib/openapi/spec/release-plans-schema.d.ts +45 -9
- package/dist/lib/openapi/spec/release-plans-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/release-plans-schema.js +2 -2
- package/dist/lib/openapi/spec/release-plans-schema.js.map +1 -1
- package/dist/lib/openapi/spec/search-features-schema.d.ts +13694 -5078
- package/dist/lib/openapi/spec/search-features-schema.d.ts.map +1 -1
- package/dist/lib/routes/admin-api/api-token.js +1 -1
- package/dist/lib/routes/admin-api/api-token.js.map +1 -1
- package/dist/lib/routes/admin-api/project/api-token.js +1 -1
- package/dist/lib/routes/admin-api/project/api-token.js.map +1 -1
- package/dist/lib/routes/logout.js +1 -1
- package/dist/lib/routes/logout.js.map +1 -1
- package/dist/lib/routes/logout.test.js +4 -4
- package/dist/lib/routes/logout.test.js.map +1 -1
- package/dist/lib/schema/api-token-schema.d.ts.map +1 -1
- package/dist/lib/schema/api-token-schema.js +1 -0
- package/dist/lib/schema/api-token-schema.js.map +1 -1
- package/dist/lib/server-impl.d.ts +5 -5
- package/dist/lib/server-impl.d.ts.map +1 -1
- package/dist/lib/server-impl.js +3 -3
- package/dist/lib/server-impl.js.map +1 -1
- package/dist/lib/services/api-token-service.d.ts +2 -2
- package/dist/lib/services/api-token-service.d.ts.map +1 -1
- package/dist/lib/services/api-token-service.js +5 -3
- package/dist/lib/services/api-token-service.js.map +1 -1
- package/dist/lib/services/api-token-service.test.js +5 -4
- package/dist/lib/services/api-token-service.test.js.map +1 -1
- package/dist/lib/services/edge-service.d.ts +1 -0
- package/dist/lib/services/edge-service.d.ts.map +1 -1
- package/dist/lib/services/edge-service.js +5 -2
- package/dist/lib/services/edge-service.js.map +1 -1
- package/dist/lib/services/user-service.d.ts.map +1 -1
- package/dist/lib/services/user-service.js +0 -4
- package/dist/lib/services/user-service.js.map +1 -1
- package/dist/lib/types/experimental.d.ts +1 -1
- package/dist/lib/types/experimental.d.ts.map +1 -1
- package/dist/lib/types/experimental.js +7 -8
- package/dist/lib/types/experimental.js.map +1 -1
- package/dist/lib/types/model.d.ts +2 -1
- package/dist/lib/types/model.d.ts.map +1 -1
- package/dist/lib/types/model.js.map +1 -1
- package/dist/lib/types/option.d.ts +2 -0
- package/dist/lib/types/option.d.ts.map +1 -1
- package/dist/lib/types/stores/api-token-store.d.ts +2 -1
- package/dist/lib/types/stores/api-token-store.d.ts.map +1 -1
- package/dist/lib/types/stores/edge-store.d.ts +2 -0
- package/dist/lib/types/stores/edge-store.d.ts.map +1 -1
- package/dist/lib/types/stores/event-store.d.ts +1 -1
- package/dist/lib/types/stores/event-store.d.ts.map +1 -1
- package/dist/lib/util/clone-db-config.d.ts +3 -0
- package/dist/lib/util/clone-db-config.d.ts.map +1 -0
- package/dist/lib/util/clone-db-config.js +18 -0
- package/dist/lib/util/clone-db-config.js.map +1 -0
- package/dist/lib/util/clone-db-config.test.d.ts +2 -0
- package/dist/lib/util/clone-db-config.test.d.ts.map +1 -0
- package/dist/lib/util/clone-db-config.test.js +40 -0
- package/dist/lib/util/clone-db-config.test.js.map +1 -0
- package/dist/lib/util/db-lock.d.ts.map +1 -1
- package/dist/lib/util/db-lock.js +2 -3
- package/dist/lib/util/db-lock.js.map +1 -1
- package/dist/lib/util/sortStrategies.d.ts +1 -1
- package/dist/lib/util/sortStrategies.d.ts.map +1 -1
- package/dist/lib/util/sortStrategies.js +6 -2
- package/dist/lib/util/sortStrategies.js.map +1 -1
- package/dist/lib/util/sortStrategies.test.js +21 -0
- package/dist/lib/util/sortStrategies.test.js.map +1 -1
- package/dist/migrations/20260309125735-drop-cascade-for-edge-api-token.d.ts +3 -0
- package/dist/migrations/20260309125735-drop-cascade-for-edge-api-token.d.ts.map +1 -0
- package/dist/migrations/20260309125735-drop-cascade-for-edge-api-token.js +15 -0
- package/dist/migrations/20260309125735-drop-cascade-for-edge-api-token.js.map +1 -0
- package/dist/migrations/20260310134100-split-safeguards-table.d.ts +3 -0
- package/dist/migrations/20260310134100-split-safeguards-table.d.ts.map +1 -0
- package/dist/migrations/20260310134100-split-safeguards-table.js +31 -0
- package/dist/migrations/20260310134100-split-safeguards-table.js.map +1 -0
- package/dist/migrations/20260311073041-migrate-safeguards-data.d.ts +3 -0
- package/dist/migrations/20260311073041-migrate-safeguards-data.d.ts.map +1 -0
- package/dist/migrations/20260311073041-migrate-safeguards-data.js +42 -0
- package/dist/migrations/20260311073041-migrate-safeguards-data.js.map +1 -0
- package/dist/migrations/20260312100000-release-plans-fix-cascade-on-env-disconnect.d.ts +3 -0
- package/dist/migrations/20260312100000-release-plans-fix-cascade-on-env-disconnect.d.ts.map +1 -0
- package/dist/migrations/20260312100000-release-plans-fix-cascade-on-env-disconnect.js +31 -0
- package/dist/migrations/20260312100000-release-plans-fix-cascade-on-env-disconnect.js.map +1 -0
- package/dist/migrations/20260316113111-update-memory-usage-to-big-int.d.ts +3 -0
- package/dist/migrations/20260316113111-update-memory-usage-to-big-int.d.ts.map +1 -0
- package/dist/migrations/20260316113111-update-memory-usage-to-big-int.js +8 -0
- package/dist/migrations/20260316113111-update-memory-usage-to-big-int.js.map +1 -0
- package/dist/migrations/20260316140000-safeguards-fix-cascade-on-env-disconnect.d.ts +3 -0
- package/dist/migrations/20260316140000-safeguards-fix-cascade-on-env-disconnect.d.ts.map +1 -0
- package/dist/migrations/20260316140000-safeguards-fix-cascade-on-env-disconnect.js +54 -0
- package/dist/migrations/20260316140000-safeguards-fix-cascade-on-env-disconnect.js.map +1 -0
- package/dist/migrations/20260317140000-safeguards-drop-project-not-null.d.ts +3 -0
- package/dist/migrations/20260317140000-safeguards-drop-project-not-null.d.ts.map +1 -0
- package/dist/migrations/20260317140000-safeguards-drop-project-not-null.js +21 -0
- package/dist/migrations/20260317140000-safeguards-drop-project-not-null.js.map +1 -0
- package/dist/migrations/20260318100000-safeguards-drop-project-column.d.ts +3 -0
- package/dist/migrations/20260318100000-safeguards-drop-project-column.d.ts.map +1 -0
- package/dist/migrations/20260318100000-safeguards-drop-project-column.js +14 -0
- package/dist/migrations/20260318100000-safeguards-drop-project-column.js.map +1 -0
- package/dist/migrations/20260406132537-user-access-requests.d.ts +3 -0
- package/dist/migrations/20260406132537-user-access-requests.d.ts.map +1 -0
- package/dist/migrations/20260406132537-user-access-requests.js +16 -0
- package/dist/migrations/20260406132537-user-access-requests.js.map +1 -0
- package/dist/migrations/20260406161629-user-access-requests-unique-email.d.ts +3 -0
- package/dist/migrations/20260406161629-user-access-requests-unique-email.d.ts.map +1 -0
- package/dist/migrations/20260406161629-user-access-requests-unique-email.js +14 -0
- package/dist/migrations/20260406161629-user-access-requests-unique-email.js.map +1 -0
- package/dist/migrator.d.ts.map +1 -1
- package/dist/migrator.js +4 -3
- package/dist/migrator.js.map +1 -1
- package/dist/server-dev.js +4 -7
- package/dist/server-dev.js.map +1 -1
- package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js +5 -5
- package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/api-token.e2e.test.js +3 -2
- package/dist/test/e2e/api/admin/api-token.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/conditional-middleware.e2e.test.js +106 -38
- package/dist/test/e2e/api/admin/conditional-middleware.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/context-api-include-query-params.e2e.test.js +1 -7
- package/dist/test/e2e/api/admin/context-api-include-query-params.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/api-token.e2e.test.js +2 -1
- package/dist/test/e2e/api/admin/project/api-token.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/project.api.tokens.e2e.test.js +5 -5
- package/dist/test/e2e/api/admin/project/project.api.tokens.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project-context.e2e.test.js +1 -7
- package/dist/test/e2e/api/admin/project-context.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/client/feature.token.access.e2e.test.js +34 -1
- package/dist/test/e2e/api/client/feature.token.access.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/api-token-service.e2e.test.js +21 -6
- package/dist/test/e2e/services/api-token-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/edge-service.e2e.test.js +4 -3
- package/dist/test/e2e/services/edge-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/api-token-store.e2e.test.js +15 -14
- package/dist/test/e2e/stores/api-token-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/event-store.e2e.test.js +8 -9
- package/dist/test/e2e/stores/event-store.e2e.test.js.map +1 -1
- package/dist/test/fixtures/fake-api-token-store.d.ts +2 -1
- package/dist/test/fixtures/fake-api-token-store.d.ts.map +1 -1
- package/dist/test/fixtures/fake-api-token-store.js +4 -1
- package/dist/test/fixtures/fake-api-token-store.js.map +1 -1
- package/dist/test/fixtures/fake-event-store.d.ts +1 -1
- package/dist/test/fixtures/fake-event-store.d.ts.map +1 -1
- package/dist/test/fixtures/fake-event-store.js +1 -1
- package/dist/test/fixtures/fake-event-store.js.map +1 -1
- package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.d.ts +2 -2
- package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.d.ts.map +1 -1
- package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.js +3 -2
- package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.js.map +1 -1
- package/frontend/build/index.html +1 -1
- package/frontend/build/static/AdvancedPlayground-BTPrG6RW.js +3 -0
- package/frontend/build/static/BackendConnections-CRh8Vxoe.js +1 -0
- package/frontend/build/static/{CreateProject-DV-Ad8Sn.js → CreateProject-DEMalH1j.js} +1 -1
- package/frontend/build/static/EnterpriseEdge-Cp-pGMa0.js +6 -0
- package/frontend/build/static/FeatureMetricsChart-DQOE71LA.js +2 -0
- package/frontend/build/static/FeatureStaleDialog-B6BfnDiQ.js +689 -0
- package/frontend/build/static/{FeatureViewLazyExport-Bsw7-knb.js → FeatureViewLazyExport-BkNTNFqK.js} +4 -7
- package/frontend/build/static/FlagMetricsChart-zYDF9bet.js +2 -0
- package/frontend/build/static/FrontendNetworkTrafficUsage-CbxdFXH7.js +1 -0
- package/frontend/build/static/GridLayoutWrapper-Cq6Bzm36.js +3 -0
- package/frontend/build/static/ImpactMetricsPage-CFYXYXPb.js +1 -0
- package/frontend/build/static/LazyAdminExport-ByTh4iFa.js +38 -0
- package/frontend/build/static/LazyProjectExport-K12Xy3w9.js +46 -0
- package/frontend/build/static/{LifecycleChartComponent-cxR-TN3V.js → LifecycleChartComponent-DHvlFNd2.js} +3 -3
- package/frontend/build/static/LineChartComponent-BlhKm3cw.js +1 -0
- package/frontend/build/static/MarkCompletedDialogue-apmlFjVY.js +1 -0
- package/frontend/build/static/{NetworkOverview-DxaPXUzZ.js → NetworkOverview-BiLOuQ4c.js} +1 -1
- package/frontend/build/static/{NetworkPrometheusAPIWarning-ltyTlXFF.js → NetworkPrometheusAPIWarning-CYo3j2Tj.js} +1 -1
- package/frontend/build/static/{NetworkTraffic-Dhw4yIBs.js → NetworkTraffic-DONL5oIx.js} +1 -1
- package/frontend/build/static/NetworkTrafficUsage-DjQiYq0S.js +1 -0
- package/frontend/build/static/{PercentageDonut-JGNh2FVZ.js → PercentageDonut-CA9hYg3v.js} +1 -1
- package/frontend/build/static/{ReactJSONEditor-GHl7KvdS.js → ReactJSONEditor-9cJL1vJY.js} +31 -31
- package/frontend/build/static/{RoleCell-CjVCxBgl.js → RoleCell-ZzU5Oqy8.js} +1 -1
- package/frontend/build/static/Safeguard-DY1N4aPz.js +1 -0
- package/frontend/build/static/aggregateFeatureMetrics-D6bHft_C.js +1 -0
- package/frontend/build/static/{formatTickValue-BZb4ZIL9.js → formatTickValue-BcLsqREh.js} +2 -2
- package/frontend/build/static/{index-DcWBU_a4.js → index-B87DWXbl.js} +1 -1
- package/frontend/build/static/index-CoLhlfXP.js +565 -0
- package/frontend/build/static/loginBackground-CQx0IRYc.png +0 -0
- package/frontend/build/static/{networkTrafficUsageHighlightPlugin-BbfAyDiQ.js → networkTrafficUsageHighlightPlugin-CqEM-cK_.js} +1 -1
- package/frontend/build/static/passwordSuccess-fcvTEYOw.png +0 -0
- package/frontend/build/static/useApiTokens-ClWvohC9.js +1 -0
- package/frontend/package.json +50 -42
- package/package.json +11 -10
- package/dist/lib/openapi/spec/safeguard-schema.d.ts.map +0 -1
- package/dist/lib/openapi/spec/safeguard-schema.js.map +0 -1
- package/frontend/build/static/AdvancedPlayground-CF0hkpiE.js +0 -3
- package/frontend/build/static/BackendConnections-DhZczar-.js +0 -1
- package/frontend/build/static/EnterpriseEdge-D1To2ugP.js +0 -3
- package/frontend/build/static/FeatureMetricsChart-D8sRgx5P.js +0 -2
- package/frontend/build/static/FeatureStaleDialog-DOkhgvaj.js +0 -7
- package/frontend/build/static/FlagMetricsChart-CF_kEyQa.js +0 -2
- package/frontend/build/static/FrontendNetworkTrafficUsage-C8zJSvoc.js +0 -1
- package/frontend/build/static/GridLayoutWrapper-DpJcUbQB.js +0 -3
- package/frontend/build/static/ImpactMetricsPage-KLVv-tP4.js +0 -1
- package/frontend/build/static/LazyAdminExport-CWQiknO-.js +0 -38
- package/frontend/build/static/LazyProjectExport-DsMn4Yxm.js +0 -728
- package/frontend/build/static/LineChartComponent-_yZEp3dd.js +0 -1
- package/frontend/build/static/MarkCompletedDialogue-DFtLyDN0.js +0 -1
- package/frontend/build/static/NetworkTrafficUsage-deKWRhIS.js +0 -1
- package/frontend/build/static/aggregateFeatureMetrics-YEdZNNoV.js +0 -1
- package/frontend/build/static/index-DMSjiFEm.js +0 -583
- package/frontend/build/static/useApiTokens-DBB3NvXL.js +0 -1
|
@@ -110,6 +110,13 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
110
110
|
readonly $ref: "#/components/schemas/releasePlanSchema";
|
|
111
111
|
};
|
|
112
112
|
};
|
|
113
|
+
readonly safeguards: {
|
|
114
|
+
readonly type: "array";
|
|
115
|
+
readonly description: "Safeguards for this feature environment";
|
|
116
|
+
readonly items: {
|
|
117
|
+
readonly $ref: "#/components/schemas/featureEnvironmentSafeguardSchema";
|
|
118
|
+
};
|
|
119
|
+
};
|
|
113
120
|
};
|
|
114
121
|
readonly components: {
|
|
115
122
|
readonly schemas: {
|
|
@@ -492,6 +499,13 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
492
499
|
readonly $ref: "#/components/schemas/releasePlanSchema";
|
|
493
500
|
};
|
|
494
501
|
};
|
|
502
|
+
readonly safeguards: {
|
|
503
|
+
readonly type: "array";
|
|
504
|
+
readonly description: "Safeguards for this feature environment";
|
|
505
|
+
readonly items: {
|
|
506
|
+
readonly $ref: "#/components/schemas/featureEnvironmentSafeguardSchema";
|
|
507
|
+
};
|
|
508
|
+
};
|
|
495
509
|
readonly yes: {
|
|
496
510
|
readonly type: "integer";
|
|
497
511
|
readonly description: "How many times the feature evaluated to true (enabled)";
|
|
@@ -950,7 +964,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
950
964
|
readonly type: "array";
|
|
951
965
|
readonly description: "An array of safeguards configured for this release plan.";
|
|
952
966
|
readonly items: {
|
|
953
|
-
readonly $ref: "#/components/schemas/
|
|
967
|
+
readonly $ref: "#/components/schemas/releasePlanSafeguardSchema";
|
|
954
968
|
};
|
|
955
969
|
};
|
|
956
970
|
};
|
|
@@ -1035,7 +1049,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
1035
1049
|
readonly additionalProperties: false;
|
|
1036
1050
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
1037
1051
|
readonly type: "object";
|
|
1038
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
1052
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
1039
1053
|
readonly properties: {
|
|
1040
1054
|
readonly id: {
|
|
1041
1055
|
readonly type: "string";
|
|
@@ -1704,7 +1718,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
1704
1718
|
readonly additionalProperties: false;
|
|
1705
1719
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
1706
1720
|
readonly type: "object";
|
|
1707
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
1721
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
1708
1722
|
readonly properties: {
|
|
1709
1723
|
readonly id: {
|
|
1710
1724
|
readonly type: "string";
|
|
@@ -2365,8 +2379,8 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
2365
2379
|
};
|
|
2366
2380
|
readonly components: {};
|
|
2367
2381
|
};
|
|
2368
|
-
readonly
|
|
2369
|
-
readonly $id: "#/components/schemas/
|
|
2382
|
+
readonly releasePlanSafeguardSchema: {
|
|
2383
|
+
readonly $id: "#/components/schemas/releasePlanSafeguardSchema";
|
|
2370
2384
|
readonly type: "object";
|
|
2371
2385
|
readonly required: readonly ["id", "action", "triggerCondition", "impactMetric"];
|
|
2372
2386
|
readonly description: "A safeguard configuration for a release plan.";
|
|
@@ -2435,6 +2449,12 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
2435
2449
|
readonly project: readonly ["default"];
|
|
2436
2450
|
};
|
|
2437
2451
|
};
|
|
2452
|
+
readonly source: {
|
|
2453
|
+
readonly type: "string";
|
|
2454
|
+
readonly enum: readonly ["internal", "external"];
|
|
2455
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
2456
|
+
readonly example: "internal";
|
|
2457
|
+
};
|
|
2438
2458
|
readonly id: {
|
|
2439
2459
|
readonly type: "string";
|
|
2440
2460
|
readonly description: "The unique identifier for this impact metric";
|
|
@@ -2484,6 +2504,12 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
2484
2504
|
readonly project: readonly ["default"];
|
|
2485
2505
|
};
|
|
2486
2506
|
};
|
|
2507
|
+
readonly source: {
|
|
2508
|
+
readonly type: "string";
|
|
2509
|
+
readonly enum: readonly ["internal", "external"];
|
|
2510
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
2511
|
+
readonly example: "internal";
|
|
2512
|
+
};
|
|
2487
2513
|
};
|
|
2488
2514
|
readonly components: {};
|
|
2489
2515
|
};
|
|
@@ -2549,6 +2575,12 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
2549
2575
|
readonly project: readonly ["default"];
|
|
2550
2576
|
};
|
|
2551
2577
|
};
|
|
2578
|
+
readonly source: {
|
|
2579
|
+
readonly type: "string";
|
|
2580
|
+
readonly enum: readonly ["internal", "external"];
|
|
2581
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
2582
|
+
readonly example: "internal";
|
|
2583
|
+
};
|
|
2552
2584
|
};
|
|
2553
2585
|
readonly components: {};
|
|
2554
2586
|
};
|
|
@@ -2655,7 +2687,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
2655
2687
|
readonly additionalProperties: false;
|
|
2656
2688
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
2657
2689
|
readonly type: "object";
|
|
2658
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
2690
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
2659
2691
|
readonly properties: {
|
|
2660
2692
|
readonly id: {
|
|
2661
2693
|
readonly type: "string";
|
|
@@ -3324,7 +3356,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
3324
3356
|
readonly additionalProperties: false;
|
|
3325
3357
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
3326
3358
|
readonly type: "object";
|
|
3327
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
3359
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
3328
3360
|
readonly properties: {
|
|
3329
3361
|
readonly id: {
|
|
3330
3362
|
readonly type: "string";
|
|
@@ -3932,6 +3964,239 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
3932
3964
|
};
|
|
3933
3965
|
readonly components: {};
|
|
3934
3966
|
};
|
|
3967
|
+
readonly featureEnvironmentSafeguardSchema: {
|
|
3968
|
+
readonly $id: "#/components/schemas/featureEnvironmentSafeguardSchema";
|
|
3969
|
+
readonly type: "object";
|
|
3970
|
+
readonly required: readonly ["id", "action", "triggerCondition", "impactMetric"];
|
|
3971
|
+
readonly description: "A safeguard configuration for a feature environment.";
|
|
3972
|
+
readonly additionalProperties: false;
|
|
3973
|
+
readonly properties: {
|
|
3974
|
+
readonly id: {
|
|
3975
|
+
readonly type: "string";
|
|
3976
|
+
readonly description: "The unique ULID identifier for this safeguard";
|
|
3977
|
+
readonly example: "01JB9GGTGQYEQ9D40R17T3YVW1";
|
|
3978
|
+
};
|
|
3979
|
+
readonly action: {
|
|
3980
|
+
readonly type: "object";
|
|
3981
|
+
readonly required: readonly ["type", "featureName", "environment", "project"];
|
|
3982
|
+
readonly additionalProperties: false;
|
|
3983
|
+
readonly description: "Disable a feature in an environment when triggered.";
|
|
3984
|
+
readonly properties: {
|
|
3985
|
+
readonly type: {
|
|
3986
|
+
readonly type: "string";
|
|
3987
|
+
readonly description: "The type of action to perform.";
|
|
3988
|
+
readonly example: "disableFeatureEnvironment";
|
|
3989
|
+
};
|
|
3990
|
+
readonly featureName: {
|
|
3991
|
+
readonly type: "string";
|
|
3992
|
+
readonly description: "The feature flag name this safeguard applies to.";
|
|
3993
|
+
};
|
|
3994
|
+
readonly environment: {
|
|
3995
|
+
readonly type: "string";
|
|
3996
|
+
readonly description: "The environment this safeguard applies to.";
|
|
3997
|
+
};
|
|
3998
|
+
readonly project: {
|
|
3999
|
+
readonly type: "string";
|
|
4000
|
+
readonly description: "The project this safeguard applies to.";
|
|
4001
|
+
};
|
|
4002
|
+
};
|
|
4003
|
+
};
|
|
4004
|
+
readonly triggerCondition: {
|
|
4005
|
+
readonly $ref: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
4006
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
4007
|
+
};
|
|
4008
|
+
readonly impactMetric: {
|
|
4009
|
+
readonly type: "object";
|
|
4010
|
+
readonly required: readonly ["id", "metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
4011
|
+
readonly additionalProperties: false;
|
|
4012
|
+
readonly properties: {
|
|
4013
|
+
readonly metricName: {
|
|
4014
|
+
readonly type: "string";
|
|
4015
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
4016
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
4017
|
+
};
|
|
4018
|
+
readonly timeRange: {
|
|
4019
|
+
readonly type: "string";
|
|
4020
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
4021
|
+
readonly description: "The time range for the metric data.";
|
|
4022
|
+
readonly example: "day";
|
|
4023
|
+
};
|
|
4024
|
+
readonly aggregationMode: {
|
|
4025
|
+
readonly type: "string";
|
|
4026
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
4027
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
4028
|
+
readonly example: "rps";
|
|
4029
|
+
};
|
|
4030
|
+
readonly labelSelectors: {
|
|
4031
|
+
readonly type: "object";
|
|
4032
|
+
readonly additionalProperties: {
|
|
4033
|
+
readonly type: "array";
|
|
4034
|
+
readonly items: {
|
|
4035
|
+
readonly type: "string";
|
|
4036
|
+
};
|
|
4037
|
+
};
|
|
4038
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
4039
|
+
readonly example: {
|
|
4040
|
+
readonly environment: readonly ["development"];
|
|
4041
|
+
readonly project: readonly ["default"];
|
|
4042
|
+
};
|
|
4043
|
+
};
|
|
4044
|
+
readonly source: {
|
|
4045
|
+
readonly type: "string";
|
|
4046
|
+
readonly enum: readonly ["internal", "external"];
|
|
4047
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
4048
|
+
readonly example: "internal";
|
|
4049
|
+
};
|
|
4050
|
+
readonly id: {
|
|
4051
|
+
readonly type: "string";
|
|
4052
|
+
readonly description: "The unique identifier for this impact metric";
|
|
4053
|
+
readonly example: "01JB9GGTGQYEQ9D40R17T3YVW1";
|
|
4054
|
+
};
|
|
4055
|
+
};
|
|
4056
|
+
readonly description: "The metric configuration used to evaluate the safeguard condition.";
|
|
4057
|
+
};
|
|
4058
|
+
};
|
|
4059
|
+
readonly components: {
|
|
4060
|
+
readonly schemas: {
|
|
4061
|
+
readonly metricQuerySchema: {
|
|
4062
|
+
readonly $id: "#/components/schemas/metricQuerySchema";
|
|
4063
|
+
readonly type: "object";
|
|
4064
|
+
readonly required: readonly ["metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
4065
|
+
readonly description: "Common metric query configuration for selecting and filtering metric data.";
|
|
4066
|
+
readonly additionalProperties: false;
|
|
4067
|
+
readonly properties: {
|
|
4068
|
+
readonly metricName: {
|
|
4069
|
+
readonly type: "string";
|
|
4070
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
4071
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
4072
|
+
};
|
|
4073
|
+
readonly timeRange: {
|
|
4074
|
+
readonly type: "string";
|
|
4075
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
4076
|
+
readonly description: "The time range for the metric data.";
|
|
4077
|
+
readonly example: "day";
|
|
4078
|
+
};
|
|
4079
|
+
readonly aggregationMode: {
|
|
4080
|
+
readonly type: "string";
|
|
4081
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
4082
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
4083
|
+
readonly example: "rps";
|
|
4084
|
+
};
|
|
4085
|
+
readonly labelSelectors: {
|
|
4086
|
+
readonly type: "object";
|
|
4087
|
+
readonly additionalProperties: {
|
|
4088
|
+
readonly type: "array";
|
|
4089
|
+
readonly items: {
|
|
4090
|
+
readonly type: "string";
|
|
4091
|
+
};
|
|
4092
|
+
};
|
|
4093
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
4094
|
+
readonly example: {
|
|
4095
|
+
readonly environment: readonly ["development"];
|
|
4096
|
+
readonly project: readonly ["default"];
|
|
4097
|
+
};
|
|
4098
|
+
};
|
|
4099
|
+
readonly source: {
|
|
4100
|
+
readonly type: "string";
|
|
4101
|
+
readonly enum: readonly ["internal", "external"];
|
|
4102
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
4103
|
+
readonly example: "internal";
|
|
4104
|
+
};
|
|
4105
|
+
};
|
|
4106
|
+
readonly components: {};
|
|
4107
|
+
};
|
|
4108
|
+
readonly safeguardTriggerConditionSchema: {
|
|
4109
|
+
readonly $id: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
4110
|
+
readonly type: "object";
|
|
4111
|
+
readonly required: readonly ["operator", "threshold"];
|
|
4112
|
+
readonly additionalProperties: false;
|
|
4113
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
4114
|
+
readonly properties: {
|
|
4115
|
+
readonly operator: {
|
|
4116
|
+
readonly type: "string";
|
|
4117
|
+
readonly enum: readonly [">", "<"];
|
|
4118
|
+
readonly description: "The comparison operator for the threshold check.";
|
|
4119
|
+
readonly example: ">";
|
|
4120
|
+
};
|
|
4121
|
+
readonly threshold: {
|
|
4122
|
+
readonly type: "number";
|
|
4123
|
+
readonly description: "The threshold value to compare against.";
|
|
4124
|
+
readonly example: 100;
|
|
4125
|
+
};
|
|
4126
|
+
};
|
|
4127
|
+
readonly components: {};
|
|
4128
|
+
};
|
|
4129
|
+
};
|
|
4130
|
+
};
|
|
4131
|
+
};
|
|
4132
|
+
readonly safeguardTriggerConditionSchema: {
|
|
4133
|
+
readonly $id: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
4134
|
+
readonly type: "object";
|
|
4135
|
+
readonly required: readonly ["operator", "threshold"];
|
|
4136
|
+
readonly additionalProperties: false;
|
|
4137
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
4138
|
+
readonly properties: {
|
|
4139
|
+
readonly operator: {
|
|
4140
|
+
readonly type: "string";
|
|
4141
|
+
readonly enum: readonly [">", "<"];
|
|
4142
|
+
readonly description: "The comparison operator for the threshold check.";
|
|
4143
|
+
readonly example: ">";
|
|
4144
|
+
};
|
|
4145
|
+
readonly threshold: {
|
|
4146
|
+
readonly type: "number";
|
|
4147
|
+
readonly description: "The threshold value to compare against.";
|
|
4148
|
+
readonly example: 100;
|
|
4149
|
+
};
|
|
4150
|
+
};
|
|
4151
|
+
readonly components: {};
|
|
4152
|
+
};
|
|
4153
|
+
readonly metricQuerySchema: {
|
|
4154
|
+
readonly $id: "#/components/schemas/metricQuerySchema";
|
|
4155
|
+
readonly type: "object";
|
|
4156
|
+
readonly required: readonly ["metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
4157
|
+
readonly description: "Common metric query configuration for selecting and filtering metric data.";
|
|
4158
|
+
readonly additionalProperties: false;
|
|
4159
|
+
readonly properties: {
|
|
4160
|
+
readonly metricName: {
|
|
4161
|
+
readonly type: "string";
|
|
4162
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
4163
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
4164
|
+
};
|
|
4165
|
+
readonly timeRange: {
|
|
4166
|
+
readonly type: "string";
|
|
4167
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
4168
|
+
readonly description: "The time range for the metric data.";
|
|
4169
|
+
readonly example: "day";
|
|
4170
|
+
};
|
|
4171
|
+
readonly aggregationMode: {
|
|
4172
|
+
readonly type: "string";
|
|
4173
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
4174
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
4175
|
+
readonly example: "rps";
|
|
4176
|
+
};
|
|
4177
|
+
readonly labelSelectors: {
|
|
4178
|
+
readonly type: "object";
|
|
4179
|
+
readonly additionalProperties: {
|
|
4180
|
+
readonly type: "array";
|
|
4181
|
+
readonly items: {
|
|
4182
|
+
readonly type: "string";
|
|
4183
|
+
};
|
|
4184
|
+
};
|
|
4185
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
4186
|
+
readonly example: {
|
|
4187
|
+
readonly environment: readonly ["development"];
|
|
4188
|
+
readonly project: readonly ["default"];
|
|
4189
|
+
};
|
|
4190
|
+
};
|
|
4191
|
+
readonly source: {
|
|
4192
|
+
readonly type: "string";
|
|
4193
|
+
readonly enum: readonly ["internal", "external"];
|
|
4194
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
4195
|
+
readonly example: "internal";
|
|
4196
|
+
};
|
|
4197
|
+
};
|
|
4198
|
+
readonly components: {};
|
|
4199
|
+
};
|
|
3935
4200
|
};
|
|
3936
4201
|
};
|
|
3937
4202
|
};
|
|
@@ -4098,7 +4363,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
4098
4363
|
readonly type: "array";
|
|
4099
4364
|
readonly description: "An array of safeguards configured for this release plan.";
|
|
4100
4365
|
readonly items: {
|
|
4101
|
-
readonly $ref: "#/components/schemas/
|
|
4366
|
+
readonly $ref: "#/components/schemas/releasePlanSafeguardSchema";
|
|
4102
4367
|
};
|
|
4103
4368
|
};
|
|
4104
4369
|
};
|
|
@@ -4183,7 +4448,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
4183
4448
|
readonly additionalProperties: false;
|
|
4184
4449
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
4185
4450
|
readonly type: "object";
|
|
4186
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
4451
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
4187
4452
|
readonly properties: {
|
|
4188
4453
|
readonly id: {
|
|
4189
4454
|
readonly type: "string";
|
|
@@ -4852,7 +5117,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
4852
5117
|
readonly additionalProperties: false;
|
|
4853
5118
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
4854
5119
|
readonly type: "object";
|
|
4855
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
5120
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
4856
5121
|
readonly properties: {
|
|
4857
5122
|
readonly id: {
|
|
4858
5123
|
readonly type: "string";
|
|
@@ -5513,8 +5778,8 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
5513
5778
|
};
|
|
5514
5779
|
readonly components: {};
|
|
5515
5780
|
};
|
|
5516
|
-
readonly
|
|
5517
|
-
readonly $id: "#/components/schemas/
|
|
5781
|
+
readonly releasePlanSafeguardSchema: {
|
|
5782
|
+
readonly $id: "#/components/schemas/releasePlanSafeguardSchema";
|
|
5518
5783
|
readonly type: "object";
|
|
5519
5784
|
readonly required: readonly ["id", "action", "triggerCondition", "impactMetric"];
|
|
5520
5785
|
readonly description: "A safeguard configuration for a release plan.";
|
|
@@ -5583,6 +5848,12 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
5583
5848
|
readonly project: readonly ["default"];
|
|
5584
5849
|
};
|
|
5585
5850
|
};
|
|
5851
|
+
readonly source: {
|
|
5852
|
+
readonly type: "string";
|
|
5853
|
+
readonly enum: readonly ["internal", "external"];
|
|
5854
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
5855
|
+
readonly example: "internal";
|
|
5856
|
+
};
|
|
5586
5857
|
readonly id: {
|
|
5587
5858
|
readonly type: "string";
|
|
5588
5859
|
readonly description: "The unique identifier for this impact metric";
|
|
@@ -5632,6 +5903,12 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
5632
5903
|
readonly project: readonly ["default"];
|
|
5633
5904
|
};
|
|
5634
5905
|
};
|
|
5906
|
+
readonly source: {
|
|
5907
|
+
readonly type: "string";
|
|
5908
|
+
readonly enum: readonly ["internal", "external"];
|
|
5909
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
5910
|
+
readonly example: "internal";
|
|
5911
|
+
};
|
|
5635
5912
|
};
|
|
5636
5913
|
readonly components: {};
|
|
5637
5914
|
};
|
|
@@ -5697,6 +5974,12 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
5697
5974
|
readonly project: readonly ["default"];
|
|
5698
5975
|
};
|
|
5699
5976
|
};
|
|
5977
|
+
readonly source: {
|
|
5978
|
+
readonly type: "string";
|
|
5979
|
+
readonly enum: readonly ["internal", "external"];
|
|
5980
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
5981
|
+
readonly example: "internal";
|
|
5982
|
+
};
|
|
5700
5983
|
};
|
|
5701
5984
|
readonly components: {};
|
|
5702
5985
|
};
|
|
@@ -5803,7 +6086,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
5803
6086
|
readonly additionalProperties: false;
|
|
5804
6087
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
5805
6088
|
readonly type: "object";
|
|
5806
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
6089
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
5807
6090
|
readonly properties: {
|
|
5808
6091
|
readonly id: {
|
|
5809
6092
|
readonly type: "string";
|
|
@@ -6472,7 +6755,7 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
6472
6755
|
readonly additionalProperties: false;
|
|
6473
6756
|
readonly description: "Schema representing the creation of a release plan milestone strategy.";
|
|
6474
6757
|
readonly type: "object";
|
|
6475
|
-
readonly required: readonly ["id", "milestoneId", "sortOrder", "strategyName"];
|
|
6758
|
+
readonly required: readonly ["id", "milestoneId", "sortOrder", "name", "strategyName"];
|
|
6476
6759
|
readonly properties: {
|
|
6477
6760
|
readonly id: {
|
|
6478
6761
|
readonly type: "string";
|
|
@@ -6853,6 +7136,397 @@ export declare const featureSearchEnvironmentSchema: {
|
|
|
6853
7136
|
};
|
|
6854
7137
|
readonly components: {};
|
|
6855
7138
|
};
|
|
7139
|
+
readonly releasePlanSafeguardSchema: {
|
|
7140
|
+
readonly $id: "#/components/schemas/releasePlanSafeguardSchema";
|
|
7141
|
+
readonly type: "object";
|
|
7142
|
+
readonly required: readonly ["id", "action", "triggerCondition", "impactMetric"];
|
|
7143
|
+
readonly description: "A safeguard configuration for a release plan.";
|
|
7144
|
+
readonly additionalProperties: false;
|
|
7145
|
+
readonly properties: {
|
|
7146
|
+
readonly id: {
|
|
7147
|
+
readonly type: "string";
|
|
7148
|
+
readonly description: "The unique ULID identifier for this safeguard";
|
|
7149
|
+
readonly example: "01JB9GGTGQYEQ9D40R17T3YVW1";
|
|
7150
|
+
};
|
|
7151
|
+
readonly action: {
|
|
7152
|
+
readonly type: "object";
|
|
7153
|
+
readonly required: readonly ["type", "id"];
|
|
7154
|
+
readonly additionalProperties: false;
|
|
7155
|
+
readonly description: "The action to take when the safeguard is triggered.";
|
|
7156
|
+
readonly properties: {
|
|
7157
|
+
readonly type: {
|
|
7158
|
+
readonly type: "string";
|
|
7159
|
+
readonly description: "The type of action to perform.";
|
|
7160
|
+
readonly example: "pauseReleasePlanProgressions";
|
|
7161
|
+
};
|
|
7162
|
+
readonly id: {
|
|
7163
|
+
readonly type: "string";
|
|
7164
|
+
readonly description: "The ID of the release plan this safeguard applies to.";
|
|
7165
|
+
readonly example: "01JB9GGTGQYEQ9D40R17T3YVW2";
|
|
7166
|
+
};
|
|
7167
|
+
};
|
|
7168
|
+
};
|
|
7169
|
+
readonly triggerCondition: {
|
|
7170
|
+
readonly $ref: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
7171
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
7172
|
+
};
|
|
7173
|
+
readonly impactMetric: {
|
|
7174
|
+
readonly type: "object";
|
|
7175
|
+
readonly required: readonly ["id", "metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
7176
|
+
readonly additionalProperties: false;
|
|
7177
|
+
readonly properties: {
|
|
7178
|
+
readonly metricName: {
|
|
7179
|
+
readonly type: "string";
|
|
7180
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
7181
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
7182
|
+
};
|
|
7183
|
+
readonly timeRange: {
|
|
7184
|
+
readonly type: "string";
|
|
7185
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
7186
|
+
readonly description: "The time range for the metric data.";
|
|
7187
|
+
readonly example: "day";
|
|
7188
|
+
};
|
|
7189
|
+
readonly aggregationMode: {
|
|
7190
|
+
readonly type: "string";
|
|
7191
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
7192
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
7193
|
+
readonly example: "rps";
|
|
7194
|
+
};
|
|
7195
|
+
readonly labelSelectors: {
|
|
7196
|
+
readonly type: "object";
|
|
7197
|
+
readonly additionalProperties: {
|
|
7198
|
+
readonly type: "array";
|
|
7199
|
+
readonly items: {
|
|
7200
|
+
readonly type: "string";
|
|
7201
|
+
};
|
|
7202
|
+
};
|
|
7203
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
7204
|
+
readonly example: {
|
|
7205
|
+
readonly environment: readonly ["development"];
|
|
7206
|
+
readonly project: readonly ["default"];
|
|
7207
|
+
};
|
|
7208
|
+
};
|
|
7209
|
+
readonly source: {
|
|
7210
|
+
readonly type: "string";
|
|
7211
|
+
readonly enum: readonly ["internal", "external"];
|
|
7212
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
7213
|
+
readonly example: "internal";
|
|
7214
|
+
};
|
|
7215
|
+
readonly id: {
|
|
7216
|
+
readonly type: "string";
|
|
7217
|
+
readonly description: "The unique identifier for this impact metric";
|
|
7218
|
+
readonly example: "01JB9GGTGQYEQ9D40R17T3YVW1";
|
|
7219
|
+
};
|
|
7220
|
+
};
|
|
7221
|
+
readonly description: "The metric configuration used to evaluate the safeguard condition.";
|
|
7222
|
+
};
|
|
7223
|
+
};
|
|
7224
|
+
readonly components: {
|
|
7225
|
+
readonly schemas: {
|
|
7226
|
+
readonly metricQuerySchema: {
|
|
7227
|
+
readonly $id: "#/components/schemas/metricQuerySchema";
|
|
7228
|
+
readonly type: "object";
|
|
7229
|
+
readonly required: readonly ["metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
7230
|
+
readonly description: "Common metric query configuration for selecting and filtering metric data.";
|
|
7231
|
+
readonly additionalProperties: false;
|
|
7232
|
+
readonly properties: {
|
|
7233
|
+
readonly metricName: {
|
|
7234
|
+
readonly type: "string";
|
|
7235
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
7236
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
7237
|
+
};
|
|
7238
|
+
readonly timeRange: {
|
|
7239
|
+
readonly type: "string";
|
|
7240
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
7241
|
+
readonly description: "The time range for the metric data.";
|
|
7242
|
+
readonly example: "day";
|
|
7243
|
+
};
|
|
7244
|
+
readonly aggregationMode: {
|
|
7245
|
+
readonly type: "string";
|
|
7246
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
7247
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
7248
|
+
readonly example: "rps";
|
|
7249
|
+
};
|
|
7250
|
+
readonly labelSelectors: {
|
|
7251
|
+
readonly type: "object";
|
|
7252
|
+
readonly additionalProperties: {
|
|
7253
|
+
readonly type: "array";
|
|
7254
|
+
readonly items: {
|
|
7255
|
+
readonly type: "string";
|
|
7256
|
+
};
|
|
7257
|
+
};
|
|
7258
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
7259
|
+
readonly example: {
|
|
7260
|
+
readonly environment: readonly ["development"];
|
|
7261
|
+
readonly project: readonly ["default"];
|
|
7262
|
+
};
|
|
7263
|
+
};
|
|
7264
|
+
readonly source: {
|
|
7265
|
+
readonly type: "string";
|
|
7266
|
+
readonly enum: readonly ["internal", "external"];
|
|
7267
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
7268
|
+
readonly example: "internal";
|
|
7269
|
+
};
|
|
7270
|
+
};
|
|
7271
|
+
readonly components: {};
|
|
7272
|
+
};
|
|
7273
|
+
readonly safeguardTriggerConditionSchema: {
|
|
7274
|
+
readonly $id: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
7275
|
+
readonly type: "object";
|
|
7276
|
+
readonly required: readonly ["operator", "threshold"];
|
|
7277
|
+
readonly additionalProperties: false;
|
|
7278
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
7279
|
+
readonly properties: {
|
|
7280
|
+
readonly operator: {
|
|
7281
|
+
readonly type: "string";
|
|
7282
|
+
readonly enum: readonly [">", "<"];
|
|
7283
|
+
readonly description: "The comparison operator for the threshold check.";
|
|
7284
|
+
readonly example: ">";
|
|
7285
|
+
};
|
|
7286
|
+
readonly threshold: {
|
|
7287
|
+
readonly type: "number";
|
|
7288
|
+
readonly description: "The threshold value to compare against.";
|
|
7289
|
+
readonly example: 100;
|
|
7290
|
+
};
|
|
7291
|
+
};
|
|
7292
|
+
readonly components: {};
|
|
7293
|
+
};
|
|
7294
|
+
};
|
|
7295
|
+
};
|
|
7296
|
+
};
|
|
7297
|
+
readonly featureEnvironmentSafeguardSchema: {
|
|
7298
|
+
readonly $id: "#/components/schemas/featureEnvironmentSafeguardSchema";
|
|
7299
|
+
readonly type: "object";
|
|
7300
|
+
readonly required: readonly ["id", "action", "triggerCondition", "impactMetric"];
|
|
7301
|
+
readonly description: "A safeguard configuration for a feature environment.";
|
|
7302
|
+
readonly additionalProperties: false;
|
|
7303
|
+
readonly properties: {
|
|
7304
|
+
readonly id: {
|
|
7305
|
+
readonly type: "string";
|
|
7306
|
+
readonly description: "The unique ULID identifier for this safeguard";
|
|
7307
|
+
readonly example: "01JB9GGTGQYEQ9D40R17T3YVW1";
|
|
7308
|
+
};
|
|
7309
|
+
readonly action: {
|
|
7310
|
+
readonly type: "object";
|
|
7311
|
+
readonly required: readonly ["type", "featureName", "environment", "project"];
|
|
7312
|
+
readonly additionalProperties: false;
|
|
7313
|
+
readonly description: "Disable a feature in an environment when triggered.";
|
|
7314
|
+
readonly properties: {
|
|
7315
|
+
readonly type: {
|
|
7316
|
+
readonly type: "string";
|
|
7317
|
+
readonly description: "The type of action to perform.";
|
|
7318
|
+
readonly example: "disableFeatureEnvironment";
|
|
7319
|
+
};
|
|
7320
|
+
readonly featureName: {
|
|
7321
|
+
readonly type: "string";
|
|
7322
|
+
readonly description: "The feature flag name this safeguard applies to.";
|
|
7323
|
+
};
|
|
7324
|
+
readonly environment: {
|
|
7325
|
+
readonly type: "string";
|
|
7326
|
+
readonly description: "The environment this safeguard applies to.";
|
|
7327
|
+
};
|
|
7328
|
+
readonly project: {
|
|
7329
|
+
readonly type: "string";
|
|
7330
|
+
readonly description: "The project this safeguard applies to.";
|
|
7331
|
+
};
|
|
7332
|
+
};
|
|
7333
|
+
};
|
|
7334
|
+
readonly triggerCondition: {
|
|
7335
|
+
readonly $ref: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
7336
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
7337
|
+
};
|
|
7338
|
+
readonly impactMetric: {
|
|
7339
|
+
readonly type: "object";
|
|
7340
|
+
readonly required: readonly ["id", "metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
7341
|
+
readonly additionalProperties: false;
|
|
7342
|
+
readonly properties: {
|
|
7343
|
+
readonly metricName: {
|
|
7344
|
+
readonly type: "string";
|
|
7345
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
7346
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
7347
|
+
};
|
|
7348
|
+
readonly timeRange: {
|
|
7349
|
+
readonly type: "string";
|
|
7350
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
7351
|
+
readonly description: "The time range for the metric data.";
|
|
7352
|
+
readonly example: "day";
|
|
7353
|
+
};
|
|
7354
|
+
readonly aggregationMode: {
|
|
7355
|
+
readonly type: "string";
|
|
7356
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
7357
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
7358
|
+
readonly example: "rps";
|
|
7359
|
+
};
|
|
7360
|
+
readonly labelSelectors: {
|
|
7361
|
+
readonly type: "object";
|
|
7362
|
+
readonly additionalProperties: {
|
|
7363
|
+
readonly type: "array";
|
|
7364
|
+
readonly items: {
|
|
7365
|
+
readonly type: "string";
|
|
7366
|
+
};
|
|
7367
|
+
};
|
|
7368
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
7369
|
+
readonly example: {
|
|
7370
|
+
readonly environment: readonly ["development"];
|
|
7371
|
+
readonly project: readonly ["default"];
|
|
7372
|
+
};
|
|
7373
|
+
};
|
|
7374
|
+
readonly source: {
|
|
7375
|
+
readonly type: "string";
|
|
7376
|
+
readonly enum: readonly ["internal", "external"];
|
|
7377
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
7378
|
+
readonly example: "internal";
|
|
7379
|
+
};
|
|
7380
|
+
readonly id: {
|
|
7381
|
+
readonly type: "string";
|
|
7382
|
+
readonly description: "The unique identifier for this impact metric";
|
|
7383
|
+
readonly example: "01JB9GGTGQYEQ9D40R17T3YVW1";
|
|
7384
|
+
};
|
|
7385
|
+
};
|
|
7386
|
+
readonly description: "The metric configuration used to evaluate the safeguard condition.";
|
|
7387
|
+
};
|
|
7388
|
+
};
|
|
7389
|
+
readonly components: {
|
|
7390
|
+
readonly schemas: {
|
|
7391
|
+
readonly metricQuerySchema: {
|
|
7392
|
+
readonly $id: "#/components/schemas/metricQuerySchema";
|
|
7393
|
+
readonly type: "object";
|
|
7394
|
+
readonly required: readonly ["metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
7395
|
+
readonly description: "Common metric query configuration for selecting and filtering metric data.";
|
|
7396
|
+
readonly additionalProperties: false;
|
|
7397
|
+
readonly properties: {
|
|
7398
|
+
readonly metricName: {
|
|
7399
|
+
readonly type: "string";
|
|
7400
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
7401
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
7402
|
+
};
|
|
7403
|
+
readonly timeRange: {
|
|
7404
|
+
readonly type: "string";
|
|
7405
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
7406
|
+
readonly description: "The time range for the metric data.";
|
|
7407
|
+
readonly example: "day";
|
|
7408
|
+
};
|
|
7409
|
+
readonly aggregationMode: {
|
|
7410
|
+
readonly type: "string";
|
|
7411
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
7412
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
7413
|
+
readonly example: "rps";
|
|
7414
|
+
};
|
|
7415
|
+
readonly labelSelectors: {
|
|
7416
|
+
readonly type: "object";
|
|
7417
|
+
readonly additionalProperties: {
|
|
7418
|
+
readonly type: "array";
|
|
7419
|
+
readonly items: {
|
|
7420
|
+
readonly type: "string";
|
|
7421
|
+
};
|
|
7422
|
+
};
|
|
7423
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
7424
|
+
readonly example: {
|
|
7425
|
+
readonly environment: readonly ["development"];
|
|
7426
|
+
readonly project: readonly ["default"];
|
|
7427
|
+
};
|
|
7428
|
+
};
|
|
7429
|
+
readonly source: {
|
|
7430
|
+
readonly type: "string";
|
|
7431
|
+
readonly enum: readonly ["internal", "external"];
|
|
7432
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
7433
|
+
readonly example: "internal";
|
|
7434
|
+
};
|
|
7435
|
+
};
|
|
7436
|
+
readonly components: {};
|
|
7437
|
+
};
|
|
7438
|
+
readonly safeguardTriggerConditionSchema: {
|
|
7439
|
+
readonly $id: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
7440
|
+
readonly type: "object";
|
|
7441
|
+
readonly required: readonly ["operator", "threshold"];
|
|
7442
|
+
readonly additionalProperties: false;
|
|
7443
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
7444
|
+
readonly properties: {
|
|
7445
|
+
readonly operator: {
|
|
7446
|
+
readonly type: "string";
|
|
7447
|
+
readonly enum: readonly [">", "<"];
|
|
7448
|
+
readonly description: "The comparison operator for the threshold check.";
|
|
7449
|
+
readonly example: ">";
|
|
7450
|
+
};
|
|
7451
|
+
readonly threshold: {
|
|
7452
|
+
readonly type: "number";
|
|
7453
|
+
readonly description: "The threshold value to compare against.";
|
|
7454
|
+
readonly example: 100;
|
|
7455
|
+
};
|
|
7456
|
+
};
|
|
7457
|
+
readonly components: {};
|
|
7458
|
+
};
|
|
7459
|
+
};
|
|
7460
|
+
};
|
|
7461
|
+
};
|
|
7462
|
+
readonly metricQuerySchema: {
|
|
7463
|
+
readonly $id: "#/components/schemas/metricQuerySchema";
|
|
7464
|
+
readonly type: "object";
|
|
7465
|
+
readonly required: readonly ["metricName", "timeRange", "aggregationMode", "labelSelectors"];
|
|
7466
|
+
readonly description: "Common metric query configuration for selecting and filtering metric data.";
|
|
7467
|
+
readonly additionalProperties: false;
|
|
7468
|
+
readonly properties: {
|
|
7469
|
+
readonly metricName: {
|
|
7470
|
+
readonly type: "string";
|
|
7471
|
+
readonly description: "The Prometheus metric series to query. It includes both unleash prefix and metric type and display name";
|
|
7472
|
+
readonly example: "unleash_counter_feature_toggle_usage_total";
|
|
7473
|
+
};
|
|
7474
|
+
readonly timeRange: {
|
|
7475
|
+
readonly type: "string";
|
|
7476
|
+
readonly enum: readonly ["hour", "day", "week", "month"];
|
|
7477
|
+
readonly description: "The time range for the metric data.";
|
|
7478
|
+
readonly example: "day";
|
|
7479
|
+
};
|
|
7480
|
+
readonly aggregationMode: {
|
|
7481
|
+
readonly type: "string";
|
|
7482
|
+
readonly description: "The aggregation mode for the metric data.";
|
|
7483
|
+
readonly enum: readonly ["rps", "count", "avg", "sum", "p95", "p99", "p50"];
|
|
7484
|
+
readonly example: "rps";
|
|
7485
|
+
};
|
|
7486
|
+
readonly labelSelectors: {
|
|
7487
|
+
readonly type: "object";
|
|
7488
|
+
readonly additionalProperties: {
|
|
7489
|
+
readonly type: "array";
|
|
7490
|
+
readonly items: {
|
|
7491
|
+
readonly type: "string";
|
|
7492
|
+
};
|
|
7493
|
+
};
|
|
7494
|
+
readonly description: "The selected labels and their values for filtering the metric data.";
|
|
7495
|
+
readonly example: {
|
|
7496
|
+
readonly environment: readonly ["development"];
|
|
7497
|
+
readonly project: readonly ["default"];
|
|
7498
|
+
};
|
|
7499
|
+
};
|
|
7500
|
+
readonly source: {
|
|
7501
|
+
readonly type: "string";
|
|
7502
|
+
readonly enum: readonly ["internal", "external"];
|
|
7503
|
+
readonly description: "The Prometheus data source for this metric. Internal is the Unleash-managed Prometheus, external is a customer-provided Prometheus instance. Defaults to internal if not specified.";
|
|
7504
|
+
readonly example: "internal";
|
|
7505
|
+
};
|
|
7506
|
+
};
|
|
7507
|
+
readonly components: {};
|
|
7508
|
+
};
|
|
7509
|
+
readonly safeguardTriggerConditionSchema: {
|
|
7510
|
+
readonly $id: "#/components/schemas/safeguardTriggerConditionSchema";
|
|
7511
|
+
readonly type: "object";
|
|
7512
|
+
readonly required: readonly ["operator", "threshold"];
|
|
7513
|
+
readonly additionalProperties: false;
|
|
7514
|
+
readonly description: "The condition that triggers the safeguard.";
|
|
7515
|
+
readonly properties: {
|
|
7516
|
+
readonly operator: {
|
|
7517
|
+
readonly type: "string";
|
|
7518
|
+
readonly enum: readonly [">", "<"];
|
|
7519
|
+
readonly description: "The comparison operator for the threshold check.";
|
|
7520
|
+
readonly example: ">";
|
|
7521
|
+
};
|
|
7522
|
+
readonly threshold: {
|
|
7523
|
+
readonly type: "number";
|
|
7524
|
+
readonly description: "The threshold value to compare against.";
|
|
7525
|
+
readonly example: 100;
|
|
7526
|
+
};
|
|
7527
|
+
};
|
|
7528
|
+
readonly components: {};
|
|
7529
|
+
};
|
|
6856
7530
|
readonly createFeatureStrategySchema: {
|
|
6857
7531
|
readonly $id: "#/components/schemas/createFeatureStrategySchema";
|
|
6858
7532
|
readonly type: "object";
|