Skip to main content

Function: getCatalogIntrospection()

getCatalogIntrospection(catalog): Omit<Catalog, "permissions">

Defined in: introspection.ts:19

Returns catalog with permissions stripped — the curated-metadata contract PRD-004 requires ("never raw data"). Nothing in Catalog is raw data (no rows), but permissions is the one field that could carry org-internal detail not meant for a model, so introspection omits it by construction rather than trusting every future catalog author to keep it model-safe.

Every Dataset.fields[] entry declared sensible: true (D12) is also omitted — same principle as permissions, applied per-column instead of catalog-wide: a model reading the introspection payload never learns a sensitive column exists, let alone its name or label.

Parameters

ParameterType
catalog{ collections?: object[]; datasets: object[]; domain?: string; filters: object[]; geographies: object[]; joins: object[]; mapTypes: object[]; metrics: object[]; permissions?: Record<string, unknown>; series?: object[]; version: string; }
catalog.collections?object[]
catalog.datasetsobject[]
catalog.domain?string
catalog.filtersobject[]
catalog.geographiesobject[]
catalog.joinsobject[]
catalog.mapTypesobject[]
catalog.metricsobject[]
catalog.permissions?Record<string, unknown>
catalog.series?object[]
catalog.versionstring

Returns

Omit<Catalog, "permissions">