Skip to content

docs: 39 small additions from support how-tos - #1550

Merged
jpetey75 merged 34 commits into
mainfrom
docs/cloudy-brain-howto-gaps
Oct 25, 2026
Merged

jpetey75 merged 34 commits into
mainfrom
docs/cloudy-brain-howto-gaps

Conversation

@jpetey75

Copy link
Copy Markdown
Contributor

Small additions to existing pages, taken from Cloudy's support how-tos where the docs were missing the point the how-to answers. One commit per page. No new pages or nav changes. Each fact was checked against the Lightdash source on main before writing. Anything the source didn't support was dropped. validate:docs, audit:components --baseline and mint broken-links --check-anchors (mint 4.2.917) pass. Nothing here overlaps #1511, and the two branches merge cleanly.

Source: the high-confidence, existing-page rows of the AE-1072 gap report (lightdash/lightdash-cloud-announcer#622). That gave 50 candidates: 39 are edited here and 11 were skipped.

Explore

  • configure-charts.mdx: the legend shows one entry per y-axis field and group pair; how to get one entry per group
  • configure-custom-tooltip.mdx: Tooltips on grouped charts: only plotted fields resolve, so hide a series to use an unplotted one; ${field.group_field.value} references per group, and the & limitation
  • create-alerts.mdx: Notify me only once pauses the alert after it first fires
  • create-custom-fields.mdx: custom SQL dimensions can't use aggregate functions; use a custom metric instead
  • create-scheduled-deliveries.mdx: what data an AI-enhanced message's agent can query; what Owner, Created and Run history show
  • dashboards/filter.mdx: a date filter overrides other intervals of the same date; no per-chart opt-out, and the workarounds
  • default-user-spaces.mdx: the User <id> fallback name for users with no profile name, and that it doesn't update later
  • documents.mdx: add an existing chart with / → Saved chart (Link or Copy)
  • learn.mdx: custom org roles need view:Learn
  • metrics-catalog/curate-the-catalog.mdx: filters and segment-by only use the metric's own table; use Explore from here for joined dimensions (also corrects the segment-by line)
  • share-charts.mdx: raster exports render at on-screen size, so use SVG for sharp output; which chart types have no image download
  • spaces.mdx: moving a dashboard doesn't move its saved charts, which affects who can see the tiles
  • table-calculations/formulas.mdx: / returns null on divide by zero and returns a decimal

Semantic layer and visualizations

  • caching.mdx: stale cached results are served until they expire; the refresh button and Explore replace the entry, but a browser reload doesn't
  • parameters.mdx: titles don't substitute parameters; use a Big value tile as a dynamic label
  • pre-aggregates/monitoring.mdx: how Analytics stats are recorded, the 3-day window, and that only explores with pre-aggregates are counted
  • writing-descriptions.mdx: model-level hints are cut to 240 characters for agents and field hints to 2,000
  • visualizations/map.mdx: GeoJSON URLs must return the raw file, not a GitHub blob page

Integrations and personal settings

  • connect-project.mdx: create a project without dbt by choosing Connect manually → CLI; it starts with no Explore tables (corrects the "warehouse catalog" claim); the BigQuery service-account invalid_grant error
  • google-sheets.mdx: the Missing authorization to access Google Drive error and how to fix it
  • slack.mdx: Links only, no data in Slack and when inline tables appear; Remove the Slack integration
  • personal-warehouse-connections.mdx: optional personal credentials on Databricks, Trino and BigQuery, which fall back to the shared connection

Agents, data apps, embed

  • create-evaluation-suites.mdx: the Context relevancy scorer and the pass rule
  • lightdash-mcp.mdx: leave the OAuth client fields blank in Claude, because Lightdash supports dynamic client registration
  • data-apps/deliveries-and-syncs.mdx: alert on app data with Save to Lightdash plus a chart alert
  • data-apps/download-data-apps-as-code.mdx: the .lightdash/context/models/ layout and what to gitignore
  • embed/reference.mdx: use a dedicated actor to give embedded AI agent chat a neutral display name

Self-host, CLI, workspace admin

  • sandboxes.mdx: Lambda microVM PassNetworkConnector and PassRole, the execution role's trust policy and permissions, and which Bedrock credentials reach the sandbox
  • enterprise-features/mcp.mdx: the paths MCP clients must reach, the IP ranges of cloud-hosted clients, and a curl check that should return 401
  • cli/install.mdx: the release window (ETARGET, Homebrew trailing npm) and how to recover
  • custom-roles.mdx: blocking CSV export needs the Member org role
  • manage-groups.mdx: how groups get enabled on Cloud and self-hosted, and what the sidebar shows until then
  • sso/scim.mdx: Okta invalidValueTypeForProperty on roles: delete the auto-discovered base attribute
  • sso/setup.mdx: only Organization admins see Single Sign-On; users on domains that no provider routes can always use a password; what the health endpoint flag means

Worth a second look

  • manage-groups.mdx says Cloud orgs contact support to enable groups. The code shows the gate is per org, but the wording is a policy call.
  • sso/scim.mdx: the Okta-side fix comes from two observed cases; the Lightdash side was checked in ScimService.
  • sandboxes.mdx: the IAM details come partly from the dev Terraform in scripts/k8s-dev, not from a production reference.
  • learn.mdx adds a section with an Enterprise badge.

Skipped

  • Already in docs: 35 small fixes from the issue backlog triage #1511 or on the page: render width, embed cache staleness, Teams deliveries, preview expiry, Supabase setup
  • Not product behaviour or not verifiable: Okta licensing on self-hosted
  • The how-to contradicts the source, so the brain entry is stale: join fields exclusions (sets do support -field), Big value comparison label, pivot column order by metric, required_attributes on metrics, the MCP set_agent workaround

🤖 Generated with Claude Code

jpetey75 and others added 30 commits October 25, 2026 12:39
…, when each scorer runs, and that a result passes only if every

- Evaluations: document the Context relevancy scorer, when each scorer runs, and that a result passes only if every scorer that ran passed

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…aude's connector form because Lightdash supports dyn

- MCP: leave the OAuth Client ID and Secret blank in Claude's connector form because Lightdash supports dynamic client registration

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…a chart with **Save to Lightdash**, then adding an alert to

- Data app deliveries: alert on app data by saving its query as a chart with **Save to Lightdash**, then adding an alert to that chart

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…o `models/` for the whole project, `--apps-only` doesn't shrink i

- Download as code: `.lightdash/context` is sharded into `models/` for the whole project, `--apps-only` doesn't shrink it, and gitignore `.lightdash/` (plus `.claude/` and `.agents/` if unused)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…utral name in embedded AI agent chat

- Embed write actions: use a dedicated service account or user to show a neutral name in embedded AI agent chat

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…, the execution role's trust policy and logs-onl

- Lambda MicroVM sandboxes: add PassNetworkConnector and execution-role PassRole, the execution role's trust policy and logs-only permissions, and which Bedrock credentials reach the sandbox

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…clients need the vendor's IP ranges allowe

- Self-hosted MCP: list the paths clients must reach, note that cloud-hosted clients need the vendor's IP ranges allowed, and add a curl reachability check that should return 401

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…roup pair; use a single y-axis field or a Chart Studio

- Charts: legend shows one entry per y-axis field and group pair; use a single y-axis field or a Chart Studio custom chart to get one entry per group

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Custom tooltips: document the `${field.group_field.value}` per-group reference, the first-group value shown on full-column hover, and that group values containing `&` don't resolve
- Custom tooltips: grouped charts only expose plotted fields as variables; add a table calculation as a y-axis field and hide its series to use it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…he alert after its first notification

- Alerts: document **Notify me only once**, which pauses the alert after its first notification

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…om metric, or two custom metrics and a table calculation fo

- Custom SQL dimensions: don't use aggregate functions; use a custom metric, or two custom metrics and a table calculation for a ratio

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Scheduled deliveries: a picked AI agent can query other explores it has access to; model extra data and grant access to bring it into the message
- Scheduled deliveries overview: Owner shows the current owner, Created is the date only, and Run history lists runs newest first and can't be re-sorted

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ervals of the same date; no per-chart option

- Dashboard filters: a date filter also overrides chart filters on other intervals of the same date; no per-chart option to keep a chart's own condition, with workarounds

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…` plus the first 8 characters of their ID; the name is fix

- Default user spaces: users with no name get a space named `User` plus the first 8 characters of their ID; the name is fixed at creation, so rename it by hand

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… choosing **Link** or **Copy**; SQL runner chart

- Documents: add an existing chart with `/` then **Saved chart**, choosing **Link** or **Copy**; SQL runner charts can only be linked and dashboard-owned charts aren't listed

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… see Learn, and what to do when saving the r

- Learn: custom organization roles need the `view:Learn` scope to see Learn, and what to do when saving the role fails with 'Cannot grant permissions exceeding your own'

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…fer the metric's own table; use **Explore from here** for

- Metrics Explorer: the dimension filter and segment-by only offer the metric's own table; use **Explore from here** for joined dimensions (also corrects the segment-by line)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…l size, so use SVG for sharp output; image download

- Share charts: JPEG, PNG and PDF images render at on-screen pixel size, so use SVG for sharp output; image downloads aren't available for big number, table, map and custom charts

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…iewers need access to each chart too; charts

- Spaces: moving a dashboard doesn't move its saved charts, and viewers need access to each chart too; charts created inside the dashboard move with it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…, so no SAFE_DIVIDE is needed, and dividing two

- Formulas: `/` returns null on divide by zero on every warehouse, so no SAFE_DIVIDE is needed, and dividing two whole numbers returns a decimal

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- BigQuery: document the service account `Google rejected the BigQuery credentials (invalid_grant: …)` error and its fix, and how it differs from the refresh-token error
- Warehouse-first onboarding: create a project without dbt via Connect manually with Type CLI; it starts with no Explore tables until dbt or Lightdash YAML models are deployed (also corrects the claim that explores come from the warehouse catalog)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…gle Drive` error and how to re-grant Drive access

- Google Sheets Syncs: explain the `Missing authorization to access Google Drive` error and how to re-grant Drive access

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Slack: document the **Links only, no data in Slack** setting and when agents post inline result tables
- Slack: add Remove the Slack integration; deleting it in Lightdash doesn't uninstall the app from the Slack workspace

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…entials on Databricks, Trino and BigQuery (**Use personal credentials

- Personal warehouse connections: document optional personal credentials on Databricks, Trino and BigQuery (**Use personal credentials when available**), with fallback to the shared connection

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ved until they expire; use the dashboard refre

- Caching: stale cached results (e.g. cached mid-rebuild) are served until they expire; use the dashboard refresh button, not a browser reload, and Explore replaces the entry

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…use a parameter-driven dimension in a Big value t

- Parameters: chart and tile titles don't substitute parameters; use a parameter-driven dimension in a Big value tile as a dynamic label

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…he last 3 days, and count only explores with a `p

- Pre-aggregate monitoring: Analytics stats are recorded automatically, cover the last 3 days, and count only explores with a `pre_aggregates` block

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…t to 240 characters when an agent reads metadata; field hin

- AI hints: model-level hints and descriptions are cut to 240 characters when an agent reads metadata; field hints go up to 2,000, so put long lists on fields

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ost's viewer page; pin to a commit or self

- Map: custom GeoJSON URLs must return the raw file, not a code host's viewer page; pin to a commit or self-host

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ash/common`, Homebrew formula trailing npm) an

- Install the CLI: note on the release window (npm `ETARGET` for `@lightdash/common`, Homebrew formula trailing npm) and how to recover

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jpetey75 and others added 4 commits October 25, 2026 12:39
… because Organization Viewer and above include `man

- Custom roles: blocking CSV export requires the Member org role, because Organization Viewer and above include `manage:ExportCsv`

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…l then the sidebar shows **User management** with no

- Groups: on Cloud, contact support to enable groups; until then the sidebar shows **User management** with no **Groups** tab

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… `roles`: delete the auto-discovered base `

- SCIM (Okta): troubleshooting note for `invalidValueTypeForProperty` on `roles`: delete the auto-discovered base `roles` attribute and retry provisioning

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- SSO setup: Single Sign-On appears in Organization settings only for the Organization admin role
- SSO setup: users on domains no provider routes can always use password sign-in; the health endpoint's password flag is instance-wide

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@mintlify

mintlify Bot commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
lightdash 🟢 Ready View Preview Oct 25, 2026, 5:41 PM

@linear-code

linear-code Bot commented Oct 25, 2026

Copy link
Copy Markdown

AE-1072

@github-actions

Copy link
Copy Markdown
Contributor

Documentation validation

✅ All blocking checks passed.

Component system

0 finding(s) across the corpus.

Findings on lines this pull request touched are annotated inline in Files changed.

View the validation run.

@jpetey75
jpetey75 merged commit d8328d2 into main Oct 25, 2026
8 checks passed
@jpetey75
jpetey75 deleted the docs/cloudy-brain-howto-gaps branch October 25, 2026 18:13

This branch was successfully deployed

1 active deployment
staging — 31b0b240 Deployed Oct 25, 2026 by mintlify[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant