From a145aa973b47dbf859f30a071a383d5f0b539c83 Mon Sep 17 00:00:00 2001 From: jgoux <1443499+jgoux@users.noreply.github.com> Date: Mon, 29 Jun 2026 11:56:07 +0000 Subject: [PATCH 1/2] chore(api): sync Management API OpenAPI spec --- packages/api/src/generated/contracts.ts | 4 ++++ packages/api/src/generated/openapi.json | 30 +++++++++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/packages/api/src/generated/contracts.ts b/packages/api/src/generated/contracts.ts index 64a9df5a1d..b4f6f9200d 100644 --- a/packages/api/src/generated/contracts.ts +++ b/packages/api/src/generated/contracts.ts @@ -2489,6 +2489,7 @@ export const V1GetOrganizationEntitlementsOutput = Schema.Struct({ "storage.image_transformations", "storage.vector_buckets", "storage.iceberg_catalog", + "storage.purge_cache", "security.audit_logs_days", "security.questionnaire", "security.soc2_report", @@ -2538,6 +2539,7 @@ export const V1GetOrganizationEntitlementsOutput = Schema.Struct({ "integrations.github_connections", "dedicated_pooler", "observability.dashboard_advanced_metrics", + "api.members.roles", ]), type: Schema.Literals(["boolean", "numeric", "set"]), }), @@ -3509,6 +3511,7 @@ export const V1GetStorageConfigOutput = Schema.Struct({ features: Schema.Struct({ imageTransformation: Schema.Struct({ enabled: Schema.Boolean }), s3Protocol: Schema.Struct({ enabled: Schema.Boolean }), + purgeCache: Schema.Struct({ enabled: Schema.Boolean }), icebergCatalog: Schema.Struct({ enabled: Schema.Boolean, maxNamespaces: Schema.Number.check(Schema.isInt()).check(Schema.isGreaterThanOrEqualTo(0)), @@ -5966,6 +5969,7 @@ export const V1UpdateStorageConfigInput = Schema.Struct({ Schema.Struct({ imageTransformation: Schema.optionalKey(Schema.Struct({ enabled: Schema.Boolean })), s3Protocol: Schema.optionalKey(Schema.Struct({ enabled: Schema.Boolean })), + purgeCache: Schema.optionalKey(Schema.Struct({ enabled: Schema.Boolean })), icebergCatalog: Schema.optionalKey( Schema.Struct({ enabled: Schema.Boolean, diff --git a/packages/api/src/generated/openapi.json b/packages/api/src/generated/openapi.json index 46a45efcd9..38dbe20844 100644 --- a/packages/api/src/generated/openapi.json +++ b/packages/api/src/generated/openapi.json @@ -18613,6 +18613,15 @@ }, "required": ["enabled"] }, + "purgeCache": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "required": ["enabled"] + }, "icebergCatalog": { "type": "object", "properties": { @@ -18652,7 +18661,13 @@ "required": ["enabled", "maxBuckets", "maxIndexes"] } }, - "required": ["imageTransformation", "s3Protocol", "icebergCatalog", "vectorBuckets"] + "required": [ + "imageTransformation", + "s3Protocol", + "purgeCache", + "icebergCatalog", + "vectorBuckets" + ] }, "capabilities": { "type": "object", @@ -18722,6 +18737,15 @@ }, "required": ["enabled"] }, + "purgeCache": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "required": ["enabled"] + }, "icebergCatalog": { "type": "object", "properties": { @@ -20229,6 +20253,7 @@ "storage.image_transformations", "storage.vector_buckets", "storage.iceberg_catalog", + "storage.purge_cache", "security.audit_logs_days", "security.questionnaire", "security.soc2_report", @@ -20277,7 +20302,8 @@ "assistant.advance_model", "integrations.github_connections", "dedicated_pooler", - "observability.dashboard_advanced_metrics" + "observability.dashboard_advanced_metrics", + "api.members.roles" ] }, "type": { From 6784fc31b97d62cc5debb8dfa1f88fe438123cf3 Mon Sep 17 00:00:00 2001 From: Julien Goux Date: Mon, 29 Jun 2026 15:31:16 +0200 Subject: [PATCH 2/2] test(cli-e2e): add purge cache storage fixtures --- .../2.response.json | 3 +++ .../3.response.json | 3 +++ .../default.response.json | 3 +++ .../config-push-emits-http-trace-with-debug/interactions.json | 3 +++ .../interactions.json | 3 +++ .../interactions.json | 3 +++ 6 files changed, 18 insertions(+) diff --git a/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/2.response.json b/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/2.response.json index 374488d753..1fb4088bd8 100644 --- a/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/2.response.json +++ b/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/2.response.json @@ -16,6 +16,9 @@ "s3Protocol": { "enabled": true }, + "purgeCache": { + "enabled": true + }, "icebergCatalog": { "enabled": true, "maxNamespaces": 10, diff --git a/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/3.response.json b/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/3.response.json index 153c80517e..289195ef7f 100644 --- a/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/3.response.json +++ b/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/3.response.json @@ -16,6 +16,9 @@ "s3Protocol": { "enabled": true }, + "purgeCache": { + "enabled": true + }, "icebergCatalog": { "enabled": true, "maxNamespaces": 10, diff --git a/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/default.response.json b/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/default.response.json index 153c80517e..289195ef7f 100644 --- a/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/default.response.json +++ b/apps/cli-e2e/fixtures/recorded/GET_v1_projects___PROJECT_REF___config_storage/default.response.json @@ -16,6 +16,9 @@ "s3Protocol": { "enabled": true }, + "purgeCache": { + "enabled": true + }, "icebergCatalog": { "enabled": true, "maxNamespaces": 10, diff --git a/apps/cli-e2e/fixtures/scenarios/config-push-emits-http-trace-with-debug/interactions.json b/apps/cli-e2e/fixtures/scenarios/config-push-emits-http-trace-with-debug/interactions.json index d0bd511ff9..4341b8a12a 100644 --- a/apps/cli-e2e/fixtures/scenarios/config-push-emits-http-trace-with-debug/interactions.json +++ b/apps/cli-e2e/fixtures/scenarios/config-push-emits-http-trace-with-debug/interactions.json @@ -1084,6 +1084,9 @@ "s3Protocol": { "enabled": true }, + "purgeCache": { + "enabled": true + }, "icebergCatalog": { "enabled": true, "maxNamespaces": 10, diff --git a/apps/cli-e2e/fixtures/scenarios/config-push-reconciles-every-section-against-the-remote/interactions.json b/apps/cli-e2e/fixtures/scenarios/config-push-reconciles-every-section-against-the-remote/interactions.json index ee925a30e0..b19751a226 100644 --- a/apps/cli-e2e/fixtures/scenarios/config-push-reconciles-every-section-against-the-remote/interactions.json +++ b/apps/cli-e2e/fixtures/scenarios/config-push-reconciles-every-section-against-the-remote/interactions.json @@ -1395,6 +1395,9 @@ "s3Protocol": { "enabled": true }, + "purgeCache": { + "enabled": true + }, "icebergCatalog": { "enabled": true, "maxNamespaces": 10, diff --git a/apps/cli-e2e/fixtures/scenarios/link-links-when-only-supabase-project-id-is-set-in-non-tty/interactions.json b/apps/cli-e2e/fixtures/scenarios/link-links-when-only-supabase-project-id-is-set-in-non-tty/interactions.json index 4d64509c06..263250637c 100644 --- a/apps/cli-e2e/fixtures/scenarios/link-links-when-only-supabase-project-id-is-set-in-non-tty/interactions.json +++ b/apps/cli-e2e/fixtures/scenarios/link-links-when-only-supabase-project-id-is-set-in-non-tty/interactions.json @@ -271,6 +271,9 @@ "s3Protocol": { "enabled": true }, + "purgeCache": { + "enabled": true + }, "icebergCatalog": { "enabled": true, "maxNamespaces": 10,