test(example-crm): lookup-dimension report fixture (sales by account)#2107
Merged
Merged
Conversation
…count) Demonstrates + exercises the raw-value lookup drill (ADR-0021 D2) end to end, the path that had no example coverage: - opportunity_metrics gains an `account` LOOKUP dimension. The analytics layer resolves the FK to the account's display name in `rows` but exposes the raw FK via drillRawRows + dimensionFields, so a drill filters by the stored id. - A new `SalesByAccountReport` groups `total_amount` (USD, currency-aware) by account — so this one report exercises BOTH render paths: Intl currency formatting AND raw-value lookup drill. - service-analytics test: a LOOKUP dimension is drillable (mirror of the date-dimension exclusion test) — asserts object + dimensionFields + raw FK. Example is private; the service-analytics change is test-only (no shipped API change) → no changeset. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
📓 Docs Drift CheckThis PR changes 1 package(s): 5 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:
|
xuyushun441-sys
added a commit
that referenced
this pull request
Jun 21, 2026
…2035) (#2108) The fixture added in #2107 used a bare `: UI.ReportInput` typed literal, which the `no-restricted-syntax` rule (#2035) disallows — metadata must go through its `defineX` factory so it validates at parse time. The sibling sales-by-stage report already uses `defineReport`; this aligns the new one. The CI lint only checks changed files, so #2107 landed with the violation — this fixes it on main. No behavior change: same exported `SalesByAccountReport`, same fields. Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
os-zhuang
added a commit
that referenced
this pull request
Jun 30, 2026
chore(dev): scenarios verification harness; drop redundant react-page PoC (#2107) objectui@998c5b3c95cb0989f4bb1558c8f26e26cdeb8508
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Completes the example coverage for the dataset-render work. The raw-value lookup drill (ADR-0021 D2) — fixed client-side in objectui #1842 and gated correctly server-side — had no example exercising it. Paired with the currency propagation from #2102, this makes both high-risk render paths demonstrable in one report.
What
opportunity_metricsgains anaccountLOOKUP dimension. The analytics layer resolves the FK to the account's display name inrows, but exposes the raw FK viadrillRawRows+dimensionFields— so a report drill filters by the stored id, not the (possibly non-unique) display name.SalesByAccountReport(new) groupstotal_amount(USD, currency-aware via feat(analytics): propagate a measure's declared currency to the result field #2102) byaccount. One report now exercises both paths:Intlcurrency formatting and raw-value lookup drill.object+dimensionFields+ the raw FK indrillRawRows.Tests
service-analyticsquery-dataset → 11 passed (+1 lookup-drillable).app-crmtypecheck → 0 errors (dataset parses, report type valid).Notes
🤖 Generated with Claude Code