Add a public overview to the ClickStack RBAC page covering:
- the difference between Cloud console access and ClickStack roles
- when users appear in ClickStack (on first launch) and which role they get
- the default new user role and its Member fallback
- that ClickStack roles are per team and don't sync with Cloud console roles
- removing users and keeping another ClickStack Admin
Move the new clickhousectl sections on pages that had no CLI content to a
separate PR, and use `clickhousectl local use latest` throughout.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Fix command examples that fail against clickhousectl 0.5.0, refresh the
Cloud CLI snippets for the Query API key-binding change and positional
service IDs, rewrite the clickhousectl reference as a condensed mirror of
the repository README, cut the Cloud CLI page to a landing page, and add
clickhousectl sections to Cloud, Managed Postgres, ClickStack and
ClickPipes pages that only showed console or API steps.
Commands were validated live against ClickHouse Cloud or parse-checked
against the 0.5.0 binary.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Add a new `clickstack/features/anomaly-detection` page describing anomaly
detection alerts in Managed ClickStack (beta): supported alert kinds,
configuration, how scoring works, monitoring, MCP backtesting, and tuning
tips. Link it from the alerts page, the FAQ, and the MCP page, and add it to
the navigation.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Rename the service-name placeholder from <MY_SERVICE_NAME> to
<YOUR_SERVICE_NAME> across the SDK pages and the validator allowlist, matching
the <YOUR_...> convention of the other standardized placeholders.
The HyperDX in-app onboarding mirrors the SDK guides under
docs/clickstack/ingesting-data/sdks/ from this single source of truth, so it
parses them by convention. This standardizes those conventions and adds a
scoped validator so a drifting page cannot silently break the app's parsing.
- Add a `<ClickStackIntegrates signals={[...]} />` component (new snippet at
docs/snippets/components/ClickStackIntegrates/) that renders the
"This guide integrates" indicator as ClickHouse-yellow pills for the
supported signals. The `signals` prop (logs/metrics/traces) is the single
source of truth the app parses; it replaces the drifting hand-written blocks
(HTML tables and ad-hoc bullet lists across the pages).
- Standardize replaceable env-var placeholders: `<YOUR_INGESTION_API_KEY>`
(was also bare, `***`-wrapped, and `<YOUR_INGESTION_KEY>`),
`<YOUR_OTEL_COLLECTOR_HTTP_ENDPOINT>` for the OTLP endpoint (was
localhost:4318 / your-otel-collector:4318, and fixes the
`<YOU_OTEL_COLLECTOR_HTTP_ENDPOINT>` typo), and `<MY_SERVICE_NAME>` for the
service name (was `<NAME_OF_YOUR_APP_OR_SERVICE>` / `<YOUR_APP_NAME>`).
- Fix a stray newline in the index keywords.
- Add ci/jobs/scripts/docs/sdk_docs_check.py enforcing all of the above: the
ClickStackIntegrates component + valid signals, an allowlist of `<UPPER_SNAKE>`
placeholders (so a new typo/variant is caught generically), and exact
deployment tab titles (Managed ClickStack / ClickStack Open Source). It is
wired into the existing "Docs check (Mintlify)" job and gated to run only when
an SDK page, the component, or the validator changes.
Closes: https://linear.app/clickhouse/issue/HDX-5262/standardize-clickstack-sdk-docs-for-in-app-onboarding
- navigation.json: rebuilt from current master plus the Telflo entry.
Restores the release-markers page, the 2026-08-21 demo day and the
month groups, and drops the retired ingesting-data/index route.
Fixes both Docs check (Mintlify) failures.
- telflo.mdx: split "Add the exporter" into Open Source ClickStack /
Managed ClickStack / Self-managed ClickHouse tabs. The Managed tab
documents deploying the collector as the gateway with the ClickHouse
exporter, since Managed ClickStack has no hosted OTLP endpoint.
Addresses the review feedback.
- telflo.mdx: per-deployment prerequisites, tightened intro and TL;DR,
Telflo CLI links, simplified verify step.
- index.mdx: updated the Telflo description.
Two conflicts in `SampleDatasetExplorer.jsx`, both from master's rework of the
sample-dataset artwork and links:
- master replaced the `.sde-img-dark` / `.sde-img-light` rules with
`.sde-theme-image` custom properties, and this branch had removed the
`sde-pop` / `sde-fade` keyframes from the same place. Neither side's lines
survive: master's replacement rules are kept further down the style block,
and the keyframes stay removed.
- master changed the dataset card link to `href={withBase(ds.href)}`, while
this branch removed the map index, the `sde-child` class and the staggered
`animationDelay`. Kept both: `withBase(ds.href)` on a card with no entrance
animation.
Master also added two transitions while this pull request was open - the
`.ch-install-cloud-cta` background and the `.ch-sign-in` colour in
`navbar-cta.js`. Removed them for the same reason as the rest.
Re-checked in headless Chromium against the merged stylesheet: transition and
animation durations and delays all compute to `0s`, a fade-in element still
ends at `opacity: 1`, and a panel whose height used to be transitioned reaches
its target in the same frame with no running transition.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The documentation animated almost every state change: sidebar groups, hover
states on cards and the feedback toolbar, the navbar reveal, the homepage
reveal, chevron rotations, and a staggered fade/scale entrance for every tile
in the sample-dataset grid. None of it shows the reader anything; it only
delays the content they asked for. A transition on a property that is updated
continuously - a panel height under a drag, for example - is worse than slow:
the element lags behind the pointer and re-renders on every frame.
Add a global override to `docs/_site/styles.css` that zeroes the transition and
animation durations and delays for every element. This is a global rule rather
than a set of local fixes because most of the motion comes from Mintlify's own
bundle and its Tailwind utility classes (`transition-colors`, `animate-*`),
which we cannot edit, and because it also covers the generated locale copies of
the components until the translation workflow regenerates them.
Zeroing the durations, rather than `transition: none` / `animation: none`,
keeps every final state intact: an animation still runs and still applies its
`animation-fill-mode`, it just completes at once, so nothing that fades in can
get stuck invisible.
Then remove the motion we wrote ourselves, so the codebase does not carry
declarations that only exist to be neutralized: the transitions in
`docs/_site/styles.css`, the injected styles in `navbar-cta.js` and
`custom-footer.js`, the inline styles in `clickstack/index.mdx`, `Install.jsx`
and `RunnableCode.jsx`, and the `sde-pop` / `sde-fade` keyframes, transitions
and staggered `animationDelay` values in `SampleDatasetExplorer.jsx`.
Verified in headless Chromium against the real stylesheet. With the override,
`transition-duration`, `transition-delay`, `animation-duration` and
`animation-delay` compute to `0s` for Tailwind utility classes, `transition`
shorthands and inline `style` attributes alike; an element that fades in still
ends at `opacity: 1`. Changing a class that used to animate leaves
`document.getAnimations()` empty and both properties already at their target
values in the same frame, where without the override there are two running
transitions and both properties still hold their old values.
Two exceptions, both deliberate. `webterminal.js` is handled separately in
https://github.com/ClickHouse/ClickHouse/pull/117942. `ClickStackAnimation` and
`ClickPipesAnimation` are left untouched: no documentation page references
either component, so nothing they contain is ever rendered.
Related: https://github.com/ClickHouse/ClickHouse/issues/117940
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
After the CLI split, `/interfaces/cli` points to `clickhousectl` while
`/interfaces/client` is the `clickhouse client` reference. Many pages still
link to `/interfaces/cli` from text about `clickhouse client`. Fix these to
point to `/interfaces/client`, and two links that belong to neither page:
the "Clients and Drivers" link now points to the Native Clients and
Interfaces index, and the `clickhouse-local` link points to its own page.
Also fix the DECLARE doc for `throw_if_no_data_to_insert` in
`src/Core/Settings.cpp`, which is the source of truth for the generated
settings documentation.
Addresses review feedback on the release markers page:
- The Service Version Expression field is behind Configure Optional
Fields on log sources only; the trace source form renders it directly.
- Markers on an aggregate tile are suppressed only when the releases in
the window span more than one service, so the scoping table no longer
states None unconditionally.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>