diff --git a/packages/dfe-engine-types/specs/openapi.e2e.json b/packages/dfe-engine-types/specs/openapi.e2e.json index f1d0b6f2..df5eca3e 100644 --- a/packages/dfe-engine-types/specs/openapi.e2e.json +++ b/packages/dfe-engine-types/specs/openapi.e2e.json @@ -3,7 +3,7 @@ "info": { "title": "DFE Engine API -- E2E", "description": "Playwright helpers for `make e2e-server`. Unauthenticated. Mounted and documented only in that mode -- not in the product spec.", - "version": "1.22.80" + "version": "1.22.88" }, "paths": { "/api/e2e/status": { diff --git a/packages/dfe-engine-types/specs/openapi.json b/packages/dfe-engine-types/specs/openapi.json index 19a63cbf..308eeb6c 100644 --- a/packages/dfe-engine-types/specs/openapi.json +++ b/packages/dfe-engine-types/specs/openapi.json @@ -3,7 +3,7 @@ "info": { "title": "DFE Engine API", "description": "Data Fusion Engine -- configuration, scheduling, and query API", - "version": "1.22.80" + "version": "1.22.88" }, "paths": { "/api/v1/auth/login": { @@ -46,7 +46,7 @@ } }, "403": { - "description": "The break-glass account is disabled in governance settings", + "description": "The break-glass password is right, but the account is disabled in governance settings", "content": { "application/problem+json": { "schema": { @@ -243,7 +243,7 @@ "Auth" ], "summary": "Get Me", - "description": "Get the current authenticated user's info.\n\nA session on an issued password reports the flag and no roles, permissions,\ngroups or orgs, because its token carries none until the change.\n\n``hyperdx_role`` and ``hyperdx_identity`` are what dfe-hyperdx takes a\nsession's dashboard role and team from; it caches this answer for 30 seconds,\nso a group change reaches HyperDX in that window rather than at token expiry.", + "description": "Get the current authenticated user's info.\n\nA session on an issued password reports the flag and no roles, permissions,\ngroups or orgs, because its token carries none until the change.\n\n``hyperdx_role`` and ``hyperdx_identity`` are what dfe-hyperdx takes a\nsession's dashboard role and team from; it caches this answer for 30 seconds,\nso a group change reaches dfe-hyperdx in that window rather than at token expiry.", "operationId": "auth.me.list", "responses": { "200": { @@ -5241,7 +5241,7 @@ "Organisations" ], "summary": "Create Org", - "description": "Create a new customer organisation (admin only).\n\nIf HyperDX integration is enabled, the lifecycle manager handles\nteam creation as part of org provisioning. Failure is non-fatal.\n\nA hunt already naming the org, such as one whose org was deleted, has the new\norg's tenant ids stored first. A production+team posture routes that hunt\nchange to review, and the ``X-DFE-Review-Required`` header says so.", + "description": "Create a new customer organisation (admin only).\n\nIf the Search integration is enabled, the lifecycle manager handles\nteam creation as part of org provisioning. Failure is non-fatal.\n\nA hunt already naming the org, such as one whose org was deleted, has the new\norg's tenant ids stored first. A production+team posture routes that hunt\nchange to review, and the ``X-DFE-Review-Required`` header says so.", "operationId": "orgs.create", "requestBody": { "required": true, @@ -8400,7 +8400,7 @@ "Sources" ], "summary": "Delete Source", - "description": "Delete a source by name. Its fetcher instance, receiver rule and topics go with it.\n\nAn engine-owned source -- the landing table's own -- is refused with 409\n``conflict``, the same answer PUT and PATCH give.\n\nThe answer reports the reconcile as a create or an update does: on a\ndeployment that renders the app config itself, ``restart_required`` names the\ncommand that takes away the containers the source's instances ran in.\n\nA delete production+team sends to review answers ``review_required`` and\ntouches nothing else: main still carries the source, so its topics, records and\nHyperDX source stay until the branch is merged.", + "description": "Delete a source by name. Its fetcher instance, receiver rule and topics go with it.\n\nAn engine-owned source -- the landing table's own -- is refused with 409\n``conflict``, the same answer PUT and PATCH give.\n\nThe answer reports the reconcile as a create or an update does: on a\ndeployment that renders the app config itself, ``restart_required`` names the\ncommand that takes away the containers the source's instances ran in.\n\nA delete production+team sends to review answers ``review_required`` and\ntouches nothing else: main still carries the source, so its topics, records and\nSearch source stay until the branch is merged.", "operationId": "sources.delete", "parameters": [ { @@ -8689,7 +8689,7 @@ "Sources" ], "summary": "Get Source Signals", - "description": "Whether this source's records are arriving, and how fast.\n\nReads the loader's per-table counter out of the otel tables over a bounded\nfive-minute window, so the console can put a number beside a source without\nthe operator opening HyperDX. It answers 200 with nulls where the series is\nabsent: a source that was only just defined has nothing to report, and that\nis not an error.", + "description": "Whether this source's records are arriving, and how fast.\n\nReads the loader's per-table counter out of the otel tables over a bounded\nfive-minute window, so the console can put a number beside a source without\nthe operator opening Search. It answers 200 with nulls where the series is\nabsent: a source that was only just defined has nothing to report, and that\nis not an error.", "operationId": "sources.signals", "parameters": [ { @@ -12163,8 +12163,8 @@ "tags": [ "Rules" ], - "summary": "Create Rule From Hyperdx", - "description": "Create a hunt rule from the SQL a HyperDX view renders to.\n\nWraps the create pipeline with ``source_type='hyperdx'`` and auto-derives a\nunique rule id from the saved-search name, so the caller need not supply one.\nA view whose SQL the hunt runner could not compile, or that matches every\nevent, is refused with 422. RBAC: ``rule:write`` (data_analyst) --\n``org_viewer`` has neither this grant nor the UI button.", + "summary": "Create Rule From Search", + "description": "Create a hunt rule from the SQL a Search view renders to.\n\nWraps the create pipeline with ``source_type='hyperdx'`` and auto-derives a\nunique rule id from the saved-search name, so the caller need not supply one.\nA view whose SQL the hunt runner could not compile, or that matches every\nevent, is refused with 422. RBAC: ``rule:write`` (data_analyst) --\n``org_viewer`` has neither this grant nor the UI button.", "operationId": "rules.from-hyperdx", "requestBody": { "content": { @@ -33404,8 +33404,8 @@ "tags": [ "Rules: Authoring" ], - "summary": "From Hyperdx", - "description": "Strip a HyperDX query's time bounds -> {window}, ready to save as a rule.", + "summary": "Strip Search Query Time Bounds", + "description": "Strip a Search query's time bounds -> {window}, ready to save as a rule.", "operationId": "authoring.from-hyperdx", "requestBody": { "content": { @@ -33967,7 +33967,7 @@ "Client Config" ], "summary": "Client Config", - "description": "Runtime config for the web UI.\n\nAuthenticated but ungated: every console pane may read it, and the HyperDX URL\nit returns is internal to the deployment.", + "description": "Runtime config for the web UI.\n\nAuthenticated but ungated: every console pane may read it, and the Search URL\nit returns is internal to the deployment.", "operationId": "config.client", "responses": { "200": { @@ -34035,9 +34035,9 @@ "/api/v1/hyperdx/connection": { "get": { "tags": [ - "HyperDX" + "Search" ], - "summary": "Hyperdx Connection", + "summary": "Get Search Connection", "description": "Return the caller's OWN org connection - never another org's.\n\nA caller granted ``query:execute`` at system scope by a declared, unscoped role\nother than ``org_viewer`` gets the platform reader. Any other caller gets its org's pinned\n``dfe_org_`` user, whatever roles it holds at that org's scope. A caller\nthat resolves to zero or several separate orgs is refused (403) so isolation\nfails closed rather than guessing.", "operationId": "hyperdx.connection", "responses": { @@ -34106,10 +34106,10 @@ "/api/v1/hyperdx/sources": { "get": { "tags": [ - "HyperDX" + "Search" ], - "summary": "Hyperdx Sources", - "description": "List every HyperDX team and the DFE sources on it.\n\nA deploy writes its source to every team, so this is the read that says where\nit landed. 503 when HyperDX is not deployed or not answering -- an empty list\nwould read as \"the source is missing\", which is a different fault.", + "summary": "List Search Sources", + "description": "List every Search team and the DFE sources on it.\n\nA deploy writes its source to every team, so this is the read that says where\nit landed. 503 when Search is not deployed or not answering -- an empty list\nwould read as \"the source is missing\", which is a different fault.", "operationId": "hyperdx.sources", "responses": { "200": { @@ -40517,7 +40517,7 @@ "query" ], "title": "FromHyperdxRequest", - "description": "Body for turning a HyperDX query into rule SQL." + "description": "Body for turning a Search query into rule SQL." }, "GenerateRequest": { "properties": { @@ -41725,7 +41725,7 @@ }, "type": "object", "title": "HyperDXConfig", - "description": "Whether the UI links to HyperDX, and where." + "description": "Whether the UI links to Search, and where." }, "HyperDXConnection": { "properties": { @@ -41744,6 +41744,24 @@ "password": { "type": "string", "title": "Password" + }, + "platform": { + "type": "boolean", + "title": "Platform", + "description": "True for the platform reader, which reads every org" + }, + "database": { + "type": "string", + "title": "Database", + "description": "The DFE data database every seeded table lives in" + }, + "tables": { + "additionalProperties": { + "type": "string" + }, + "type": "object", + "title": "Tables", + "description": "Seeded table name by dfe-schemas manifest id" } }, "type": "object", @@ -41751,10 +41769,13 @@ "name", "host", "username", - "password" + "password", + "platform", + "database", + "tables" ], "title": "HyperDXConnection", - "description": "Connection material in the fork's shape (name, host URL, username, password)." + "description": "Connection material in the fork's shape, plus where its seed sources live." }, "HyperDXSourcesResponse": { "properties": { @@ -41768,19 +41789,19 @@ }, "type": "object", "title": "HyperDXSourcesResponse", - "description": "Where every deployed DFE source actually landed in HyperDX." + "description": "Where every deployed DFE source actually landed in Search." }, "HyperDXTeamSource": { "properties": { "id": { "type": "string", "title": "Id", - "description": "HyperDX source id on that team" + "description": "Search source id on that team" }, "name": { "type": "string", "title": "Name", - "description": "DFE source name; the HyperDX source carries the same one" + "description": "DFE source name; the Search source carries the same one" }, "table": { "additionalProperties": { @@ -41797,19 +41818,19 @@ "name" ], "title": "HyperDXTeamSource", - "description": "One HyperDX source on one team, as the fork holds it." + "description": "One Search source on one team, as dfe-hyperdx holds it." }, "HyperDXTeamSources": { "properties": { "team": { "type": "string", "title": "Team", - "description": "HyperDX team id" + "description": "Search team id" }, "team_name": { "type": "string", "title": "Team Name", - "description": "HyperDX team name: the ClickHouse user its members read as" + "description": "Search team name: the ClickHouse user its members read as" }, "sources": { "items": { @@ -41825,7 +41846,7 @@ "team_name" ], "title": "HyperDXTeamSources", - "description": "One HyperDX team and the DFE sources it holds." + "description": "One Search team and the DFE sources it holds." }, "IngestCredentialResponse": { "properties": { @@ -44010,7 +44031,7 @@ "name" ], "title": "Org", - "description": "A customer organisation.\n\nAttributes:\n name: Primary identifier (filename stem).\n display_name: Human-readable label for UI display.\n org_ids: Tenant IDs used for ClickHouse row-level security filters.\n enabled: Whether this org is active.\n hyperdx_team_id: HyperDX team ID for this org's connection sync.\n hyperdx_team_api_key_env: Environment variable name holding the org's HyperDX team API key.\n ch_password_env: Environment variable name holding the ClickHouse password.\n created_at: ISO 8601 timestamp of creation.\n updated_at: ISO 8601 timestamp of last update." + "description": "A customer organisation.\n\nAttributes:\n name: Primary identifier (filename stem).\n display_name: Human-readable label for UI display.\n org_ids: Tenant IDs used for ClickHouse row-level security filters.\n enabled: Whether this org is active.\n hyperdx_team_id: dfe-hyperdx team ID for this org's connection sync.\n hyperdx_team_api_key_env: Environment variable name holding the org's dfe-hyperdx team API key.\n ch_password_env: Environment variable name holding the ClickHouse password.\n created_at: ISO 8601 timestamp of creation.\n updated_at: ISO 8601 timestamp of last update." }, "OrgResponse": { "properties": { @@ -48133,7 +48154,7 @@ "hyperdx" ], "title": "Source Type", - "description": "'raw' (plain SQL) or 'hyperdx' (HyperDX saved search format)", + "description": "'raw' (plain SQL) or 'hyperdx' (Search saved search format)", "default": "raw" } }, @@ -48212,7 +48233,7 @@ "type": "string", "minLength": 1, "title": "Raw Sql", - "description": "The ClickHouse SELECT the HyperDX view renders to" + "description": "The ClickHouse SELECT the Search view renders to" }, "saved_search_name": { "anyOf": [ @@ -48224,7 +48245,7 @@ } ], "title": "Saved Search Name", - "description": "HyperDX saved-search name; seeds the rule id and label" + "description": "Search saved-search name; seeds the rule id and label" }, "severity": { "type": "string", @@ -48263,7 +48284,7 @@ "raw_sql" ], "title": "RuleFromHyperdxRequest", - "description": "Create a hunt rule from the SQL a HyperDX view runs.\n\nHyperDX renders the view to ``raw_sql`` and sends it here. The create\npipeline strips the UI meta (time bounds, LIMIT, ``__hdx_time_bucket``,\nSETTINGS) via the HyperDX sanitizer, and the engine derives a unique rule id\nfrom the saved-search name. The caller gets that id back and opens\n``/rules/{id}`` -- no id to invent, no IndexedDB round-trip." + "description": "Create a hunt rule from the SQL a Search view runs.\n\nSearch renders the view to ``raw_sql`` and sends it here. The create\npipeline strips the UI meta (time bounds, LIMIT, ``__hdx_time_bucket``,\nSETTINGS) via the dfe-hyperdx sanitizer, and the engine derives a unique rule id\nfrom the saved-search name. The caller gets that id back and opens\n``/rules/{id}`` -- no id to invent, no IndexedDB round-trip." }, "RuleFromHyperdxResponse": { "properties": { @@ -48302,7 +48323,7 @@ "display_name" ], "title": "RuleFromHyperdxResponse", - "description": "The rule created from a HyperDX query." + "description": "The rule created from a Search query." }, "RuleOrderRequest": { "properties": { @@ -49816,7 +49837,7 @@ } ], "title": "Hyperdx Source Teams", - "description": "How many HyperDX teams now carry a source over this source's table" + "description": "How many Search teams now carry a source over this source's table" }, "hyperdx_source_error": { "anyOf": [ @@ -49828,7 +49849,7 @@ } ], "title": "Hyperdx Source Error", - "description": "Why HyperDX was not pointed at the table. Never fails the deploy - the schema is live and HyperDX may be down or not deployed at all." + "description": "Why Search was not pointed at the table. Never fails the deploy - the schema is live and Search may be down or not deployed at all." }, "restart_required": { "items": { @@ -50734,7 +50755,7 @@ } ], "title": "Type", - "description": "Optional ClickHouse type to CAST the value to (e.g. 'String', 'UInt32')" + "description": "Optional ClickHouse type for the value (e.g. 'String', 'UInt32')" } }, "type": "object", @@ -50742,7 +50763,7 @@ "sigma_field" ], "title": "SigmaViewColumn", - "description": "One column exposed by a Sigma source-view.\n\nA column maps a standard ``sigma_field`` (the alias the view exposes) to EITHER\na real table column (``source_column``) OR a dotted path inside the source's\n``_json`` column (``json_path``) - exactly one of the two. ``type`` is an\noptional ClickHouse type the extracted value is CAST to (mainly for a\nJSON-derived column, whose subcolumn is otherwise a ``Dynamic``). This is the\nSigma-named shape of :class:`~dfe_engine.fieldmap.remap_view.RemapColumn`." + "description": "One column exposed by a Sigma source-view.\n\nA column maps a standard ``sigma_field`` (the alias the view exposes) to EITHER\na real table column (``source_column``) OR a dotted path inside the source's\n``_json`` column (``json_path``) - exactly one of the two. ``type`` is an\noptional ClickHouse type for the value, read as RemapColumn reads it. This is the\nSigma-named shape of :class:`~dfe_engine.fieldmap.remap_view.RemapColumn`." }, "SigmaViewDefinition": { "properties": { @@ -55348,7 +55369,7 @@ }, "type": "array", "title": "Org Ids", - "description": "Orgs this user can browse in the data plane (HyperDX). Empty means no org-scoped data access." + "description": "Orgs this user can browse in the data plane (Search). Empty means no org-scoped data access." }, "external": { "type": "boolean", diff --git a/packages/dfe-engine-types/types/index.d.ts b/packages/dfe-engine-types/types/index.d.ts index 1744a464..db5592d3 100644 --- a/packages/dfe-engine-types/types/index.d.ts +++ b/packages/dfe-engine-types/types/index.d.ts @@ -91,7 +91,7 @@ export interface paths { * * ``hyperdx_role`` and ``hyperdx_identity`` are what dfe-hyperdx takes a * session's dashboard role and team from; it caches this answer for 30 seconds, - * so a group change reaches HyperDX in that window rather than at token expiry. + * so a group change reaches dfe-hyperdx in that window rather than at token expiry. */ get: operations["auth.me.list"]; put?: never; @@ -896,7 +896,7 @@ export interface paths { * Create Org * @description Create a new customer organisation (admin only). * - * If HyperDX integration is enabled, the lifecycle manager handles + * If the Search integration is enabled, the lifecycle manager handles * team creation as part of org provisioning. Failure is non-fatal. * * A hunt already naming the org, such as one whose org was deleted, has the new @@ -1373,7 +1373,7 @@ export interface paths { * * A delete production+team sends to review answers ``review_required`` and * touches nothing else: main still carries the source, so its topics, records and - * HyperDX source stay until the branch is merged. + * Search source stay until the branch is merged. */ delete: operations["sources.delete"]; options?: never; @@ -1452,7 +1452,7 @@ export interface paths { * * Reads the loader's per-table counter out of the otel tables over a bounded * five-minute window, so the console can put a number beside a source without - * the operator opening HyperDX. It answers 200 with nulls where the series is + * the operator opening Search. It answers 200 with nulls where the series is * absent: a source that was only just defined has nothing to report, and that * is not an error. */ @@ -2058,8 +2058,8 @@ export interface paths { get?: never; put?: never; /** - * Create Rule From Hyperdx - * @description Create a hunt rule from the SQL a HyperDX view renders to. + * Create Rule From Search + * @description Create a hunt rule from the SQL a Search view renders to. * * Wraps the create pipeline with ``source_type='hyperdx'`` and auto-derives a * unique rule id from the saved-search name, so the caller need not supply one. @@ -5584,8 +5584,8 @@ export interface paths { get?: never; put?: never; /** - * From Hyperdx - * @description Strip a HyperDX query's time bounds -> {window}, ready to save as a rule. + * Strip Search Query Time Bounds + * @description Strip a Search query's time bounds -> {window}, ready to save as a rule. */ post: operations["authoring.from-hyperdx"]; delete?: never; @@ -5705,7 +5705,7 @@ export interface paths { * Client Config * @description Runtime config for the web UI. * - * Authenticated but ungated: every console pane may read it, and the HyperDX URL + * Authenticated but ungated: every console pane may read it, and the Search URL * it returns is internal to the deployment. */ get: operations["config.client"]; @@ -5725,7 +5725,7 @@ export interface paths { cookie?: never; }; /** - * Hyperdx Connection + * Get Search Connection * @description Return the caller's OWN org connection - never another org's. * * A caller granted ``query:execute`` at system scope by a declared, unscoped role @@ -5751,11 +5751,11 @@ export interface paths { cookie?: never; }; /** - * Hyperdx Sources - * @description List every HyperDX team and the DFE sources on it. + * List Search Sources + * @description List every Search team and the DFE sources on it. * * A deploy writes its source to every team, so this is the read that says where - * it landed. 503 when HyperDX is not deployed or not answering -- an empty list + * it landed. 503 when Search is not deployed or not answering -- an empty list * would read as "the source is missing", which is a different fault. */ get: operations["hyperdx.sources"]; @@ -9205,7 +9205,7 @@ export interface components { }; /** * FromHyperdxRequest - * @description Body for turning a HyperDX query into rule SQL. + * @description Body for turning a Search query into rule SQL. */ FromHyperdxRequest: { /** Query */ @@ -9862,7 +9862,7 @@ export interface components { }; /** * HyperDXConfig - * @description Whether the UI links to HyperDX, and where. + * @description Whether the UI links to Search, and where. */ HyperDXConfig: { /** @@ -9878,7 +9878,7 @@ export interface components { }; /** * HyperDXConnection - * @description Connection material in the fork's shape (name, host URL, username, password). + * @description Connection material in the fork's shape, plus where its seed sources live. */ HyperDXConnection: { /** Name */ @@ -9889,10 +9889,27 @@ export interface components { username: string; /** Password */ password: string; + /** + * Platform + * @description True for the platform reader, which reads every org + */ + platform: boolean; + /** + * Database + * @description The DFE data database every seeded table lives in + */ + database: string; + /** + * Tables + * @description Seeded table name by dfe-schemas manifest id + */ + tables: { + [key: string]: string; + }; }; /** * HyperDXSourcesResponse - * @description Where every deployed DFE source actually landed in HyperDX. + * @description Where every deployed DFE source actually landed in Search. */ HyperDXSourcesResponse: { /** Teams */ @@ -9900,17 +9917,17 @@ export interface components { }; /** * HyperDXTeamSource - * @description One HyperDX source on one team, as the fork holds it. + * @description One Search source on one team, as dfe-hyperdx holds it. */ HyperDXTeamSource: { /** * Id - * @description HyperDX source id on that team + * @description Search source id on that team */ id: string; /** * Name - * @description DFE source name; the HyperDX source carries the same one + * @description DFE source name; the Search source carries the same one */ name: string; /** @@ -9923,17 +9940,17 @@ export interface components { }; /** * HyperDXTeamSources - * @description One HyperDX team and the DFE sources it holds. + * @description One Search team and the DFE sources it holds. */ HyperDXTeamSources: { /** * Team - * @description HyperDX team id + * @description Search team id */ team: string; /** * Team Name - * @description HyperDX team name: the ClickHouse user its members read as + * @description Search team name: the ClickHouse user its members read as */ team_name: string; /** Sources */ @@ -11149,8 +11166,8 @@ export interface components { * display_name: Human-readable label for UI display. * org_ids: Tenant IDs used for ClickHouse row-level security filters. * enabled: Whether this org is active. - * hyperdx_team_id: HyperDX team ID for this org's connection sync. - * hyperdx_team_api_key_env: Environment variable name holding the org's HyperDX team API key. + * hyperdx_team_id: dfe-hyperdx team ID for this org's connection sync. + * hyperdx_team_api_key_env: Environment variable name holding the org's dfe-hyperdx team API key. * ch_password_env: Environment variable name holding the ClickHouse password. * created_at: ISO 8601 timestamp of creation. * updated_at: ISO 8601 timestamp of last update. @@ -12846,7 +12863,7 @@ export interface components { name: string; /** * Source Type - * @description 'raw' (plain SQL) or 'hyperdx' (HyperDX saved search format) + * @description 'raw' (plain SQL) or 'hyperdx' (Search saved search format) * @default raw * @enum {string} */ @@ -12880,23 +12897,23 @@ export interface components { }; /** * RuleFromHyperdxRequest - * @description Create a hunt rule from the SQL a HyperDX view runs. + * @description Create a hunt rule from the SQL a Search view runs. * - * HyperDX renders the view to ``raw_sql`` and sends it here. The create + * Search renders the view to ``raw_sql`` and sends it here. The create * pipeline strips the UI meta (time bounds, LIMIT, ``__hdx_time_bucket``, - * SETTINGS) via the HyperDX sanitizer, and the engine derives a unique rule id + * SETTINGS) via the dfe-hyperdx sanitizer, and the engine derives a unique rule id * from the saved-search name. The caller gets that id back and opens * ``/rules/{id}`` -- no id to invent, no IndexedDB round-trip. */ RuleFromHyperdxRequest: { /** * Raw Sql - * @description The ClickHouse SELECT the HyperDX view renders to + * @description The ClickHouse SELECT the Search view renders to */ raw_sql: string; /** * Saved Search Name - * @description HyperDX saved-search name; seeds the rule id and label + * @description Search saved-search name; seeds the rule id and label */ saved_search_name?: string | null; /** @@ -12918,7 +12935,7 @@ export interface components { }; /** * RuleFromHyperdxResponse - * @description The rule created from a HyperDX query. + * @description The rule created from a Search query. */ RuleFromHyperdxResponse: { /** @@ -13666,12 +13683,12 @@ export interface components { apps_sync_error?: string | null; /** * Hyperdx Source Teams - * @description How many HyperDX teams now carry a source over this source's table + * @description How many Search teams now carry a source over this source's table */ hyperdx_source_teams?: number | null; /** * Hyperdx Source Error - * @description Why HyperDX was not pointed at the table. Never fails the deploy - the schema is live and HyperDX may be down or not deployed at all. + * @description Why Search was not pointed at the table. Never fails the deploy - the schema is live and Search may be down or not deployed at all. */ hyperdx_source_error?: string | null; /** @@ -14218,8 +14235,7 @@ export interface components { * A column maps a standard ``sigma_field`` (the alias the view exposes) to EITHER * a real table column (``source_column``) OR a dotted path inside the source's * ``_json`` column (``json_path``) - exactly one of the two. ``type`` is an - * optional ClickHouse type the extracted value is CAST to (mainly for a - * JSON-derived column, whose subcolumn is otherwise a ``Dynamic``). This is the + * optional ClickHouse type for the value, read as RemapColumn reads it. This is the * Sigma-named shape of :class:`~dfe_engine.fieldmap.remap_view.RemapColumn`. */ SigmaViewColumn: { @@ -14240,7 +14256,7 @@ export interface components { json_path?: string | null; /** * Type - * @description Optional ClickHouse type to CAST the value to (e.g. 'String', 'UInt32') + * @description Optional ClickHouse type for the value (e.g. 'String', 'UInt32') */ type?: string | null; }; @@ -16604,7 +16620,7 @@ export interface components { groups?: string[]; /** * Org Ids - * @description Orgs this user can browse in the data plane (HyperDX). Empty means no org-scoped data access. + * @description Orgs this user can browse in the data plane (Search). Empty means no org-scoped data access. */ org_ids?: string[]; /** @@ -17421,7 +17437,7 @@ export interface operations { "application/problem+json": components["schemas"]["Problem"]; }; }; - /** @description The break-glass account is disabled in governance settings */ + /** @description The break-glass password is right, but the account is disabled in governance settings */ 403: { headers: { [name: string]: unknown;