Skip to content

Commit 33bb1cc

Browse files
os-zhuangclaude
andcommitted
docs: fix two inaccuracies found dogfooding #2338 (responsiveStyles keys, dataset include)
Browser/dogfood verification of the features documented in #2338 (booted app-showcase, exercised at runtime) confirmed $search / searchableFields and multi-hop dataset joins work as documented, but surfaced two doc inaccuracies in #2338 itself: - page.mdx: responsiveStyles breakpoint keys are `large` / `medium` / `small` / `xsmall` (desktop-first — `large` is the unconditional base, the rest are max-width overrides) per ResponsiveStylesSchema, NOT the `xs/sm/md/lg/xl/2xl` axis (those are BreakpointName, used by layout columns/visibility/order). Verified against the served showcase_styling_gallery page metadata (key: `large`). - analytics-datasets.mdx: multi-hop joins must be DECLARED in the dataset's `include` (joins are derived from include; only declared paths are joinable). Verified live: an inline dataset on showcase_invoice_line with include:['invoice.account'] + dotted-path dimension `invoice.account.industry` returns correctly-joined rows. Docs-only. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent baf689c commit 33bb1cc

2 files changed

Lines changed: 8 additions & 5 deletions

File tree

content/docs/guides/analytics-datasets.mdx

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,13 @@ capability the inline single-object query could never reach:
135135
// → revenue by account.region, joined + RLS-enforced per object.
136136
```
137137

138-
Joins follow **dotted relationship paths** and may traverse **multiple to-one hops**
139-
(ADR-0071) — e.g. `account.owner.region` walks the chain order → account → owner →
140-
region. The path is capped at **3 join hops (4 objects)** and is **to-one only**;
141-
to-many traversal is rejected (aggregate the many-side as its own measure instead).
138+
Joins are **derived from the dataset's `include` declarations**: list the relationship
139+
paths to join (`include: ['account', 'account.owner']`), and dimensions/measures then
140+
reference fields along them by **dotted path** (`account.owner.region`). Only declared
141+
paths are joinable. Paths may chain **multiple to-one hops** (ADR-0071 — declaring
142+
`account.owner` implicitly includes `account`), are capped at **3 join hops (4 objects)**,
143+
and are **to-one only**; to-many traversal is rejected (aggregate the many-side as its
144+
own measure instead).
142145

143146
## How it runs
144147

content/docs/guides/metadata/page.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ Components are the building blocks placed inside regions.
136136
| `events` | `Record<string, string>` | optional | Event handlers (action expressions) |
137137
| `style` | `object` | optional | CSS styles |
138138
| `className` | `string` | optional | CSS class names |
139-
| `responsiveStyles` | `object` | optional | **Preferred** SDUI styling channel (ADR-0065): per-breakpoint scoped CSS-property maps keyed by `xs`/`sm`/`md`/`lg`/`xl`/`2xl`, compiled to id-scoped CSS at render. Prefer design tokens, e.g. `{ base: { padding: 'var(--space-6)' }, md: { padding: 'var(--space-8)' } }`. Use over ad-hoc `style`/`className` for metadata-authored pages. |
139+
| `responsiveStyles` | `object` | optional | **Preferred** SDUI styling channel (ADR-0065): **desktop-first** per-breakpoint scoped style maps, compiled to id-scoped CSS at render. Keys are `large` (the unconditional base), then `medium` / `small` / `xsmall` as `max-width` overrides. Prefer design tokens, e.g. `{ large: { padding: 'var(--space-8)' }, small: { padding: 'var(--space-4)' } }`. Use over ad-hoc `style` / `className` for metadata-authored pages. |
140140
| `visibility` | `string` | optional | Visibility predicate (CEL expression) |
141141

142142
The `type` field is a union of the standard `PageComponentType` enum and any custom string. The standard (namespaced) component types include:

0 commit comments

Comments
 (0)