mikebridge opened a new pull request, #44455: URL: https://github.com/apache/superset/pull/44455
### SUMMARY Fixes the dormant default time grain on frontend-generated semantic-view Table aggregate requests ([SC-120290](https://app.shortcut.com/preset/story/120290)). A metric-only chart can inherit a hidden Day grain even though it has no temporal axis, causing the strict semantic mapper to reject it. Normalize each final Table query, including totals, percentage and pagination queries, after overrides and column normalization. Omit a recognized duration grain only when no temporal axis is provable: no columns, or all physical columns explicitly known to be non-temporal. Keep unknown/ambiguous inputs, unsupported or malformed grains, explicit granularity, raw-record mode and ordinary datasets unchanged. The Table-local hidden metadata lookup retains explicit non-temporal entries rather than conflating them with unknown metadata. Keep Time Grain visibility and saved form data unchanged. **Accepted limitation:** GET chart-data can bypass frontend rebuilding, so some old stored query contexts remain broken. Direct API payloads stay strict; this does not add backend tolerance or rewrite saved charts. ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF No UI visibility change. Before: inherited P1D/P1M/PT1H is sent on a metric-only semantic Table query. After: the generated query omits that dormant grain; selecting a temporal axis retains it. Browser/render acceptance has not run and remains a delivery gate; no screenshots are offered as proof. ### TESTING INSTRUCTIONS - Scoped Jest (Table buildQuery/controlPanel and Explore shared payload): **94 passed**. - Actual revert control: **9 new regression failures** with production files restored to the base, all passing after restoration verified by file-content equality. - Existing strict mapper suite: **187 passed**; no Python code changed. - Changed-file pre-commit formatting/lint/custom/style checks passed. Standard type hook encounters TS6305 because local package declarations are unbuilt; source-resolved TypeScript with inherited strict options and no project references passed with zero diagnostics. - Broader Chart action suite has **8 baseline SupersetClient-not-configured failures**, reproduced with and without this change; not claimed green. - Manual delivery gate (pending separate isolated build lease): fresh metric-only semantic Table in Explore; reopen a saved no-axis chart on a dashboard; capture requests/rendering and verify no chart save/update. Add/remove/re-add a temporal dimension and verify the saved grain remains meaningful. Exact-head CI is also pending. ### ADDITIONAL INFORMATION - [x] Has associated issue: SC-120290 - [x] Required feature flags: existing SEMANTIC_LAYERS - [ ] Changes UI - [ ] Includes DB Migration (follow approval process in SIP-59) - [ ] Migration is atomic, supports rollback & is backwards-compatible - [ ] Confirm DB migration upgrade and downgrade tested - [ ] Runtime estimates and downtime expectations provided - [ ] Introduces new feature or API - [ ] Removes existing feature or API Draft only; no review request or ready-for-review action. Built from Apache master 253eef33d5d16a999b0acc95ab39218d3f8cb573. SC-120290 lands before SC-121337/SC-121338; downstream shell pin/rebuilt assets follow Apache merge. Python, Clean Code and semantic-contract self-reviews saved with zero findings; no independent-model approval claimed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
