From 252190adddff743a2f32ffa5d475e3a7185ff023 Mon Sep 17 00:00:00 2001 From: Lukas Klingsbo Date: Fri, 7 Aug 2026 11:32:39 +0200 Subject: [PATCH] feat(storage): add the five missing Iceberg catalog capabilities The Iceberg namespace and table splits cover create, list, load, update, rename and delete, but the Iceberg REST Catalog exposes five more operations that no feature id currently describes: - GET /namespaces/{ns} load_namespace_metadata - HEAD /namespaces/{ns} namespace_exists - POST /namespaces/{ns}/properties update_namespace_properties - POST /namespaces/{ns}/register register_table - HEAD /namespaces/{ns}/tables/{t} table_exists supabase-flutter implements all five today and has nowhere to declare them, so they end up registered against a capability they do not implement purely to satisfy the new-symbol check. --- capabilities/storage.yaml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/capabilities/storage.yaml b/capabilities/storage.yaml index 6a1fbfc..1791fbb 100644 --- a/capabilities/storage.yaml +++ b/capabilities/storage.yaml @@ -208,6 +208,18 @@ features: name: Delete Iceberg Namespace description: Drop a namespace from an analytics bucket via the Iceberg REST Catalog API. group: analytics + - id: storage.analytics.load_namespace_metadata + name: Load Iceberg Namespace Metadata + description: Load the properties stored against a namespace via the Iceberg REST Catalog API. + group: analytics + - id: storage.analytics.namespace_exists + name: Check Iceberg Namespace Exists + description: Check whether a namespace exists without loading its properties, via the Iceberg REST Catalog API. + group: analytics + - id: storage.analytics.update_namespace_properties + name: Update Iceberg Namespace Properties + description: Set and remove properties on a namespace via the Iceberg REST Catalog API, reporting which keys were updated, removed, or missing. + group: analytics - id: storage.analytics.create_table name: Create Iceberg Table description: Create a new Iceberg table within a namespace, including schema and partition spec definition. @@ -232,6 +244,14 @@ features: name: Delete Iceberg Table description: Drop an Iceberg table from a namespace. group: analytics + - id: storage.analytics.register_table + name: Register Iceberg Table + description: Register an existing Iceberg table with a namespace by pointing the catalog at its metadata file, without creating new data. + group: analytics + - id: storage.analytics.table_exists + name: Check Iceberg Table Exists + description: Check whether an Iceberg table exists within a namespace without loading its metadata. + group: analytics - id: storage.errors.error_codes name: Service Error Codes description: Expose the machine-readable service-specific error code (e.g. NoSuchKey, AccessDenied) returned by the Storage server on a thrown error, covering both file and vector bucket operations.