Skip to content

Fix/guest base axis x axis 6.2 - #42846

Closed
luizotavio32 wants to merge 270 commits into
apache:masterfrom
luizotavio32:fix/guest-base-axis-x-axis-6.2
Closed

Fix/guest base axis x axis 6.2#42846
luizotavio32 wants to merge 270 commits into
apache:masterfrom
luizotavio32:fix/guest-base-axis-x-axis-6.2

Conversation

@luizotavio32

Copy link
Copy Markdown
Contributor

SUMMARY

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

  • Has associated issue:
  • Required feature flags:
  • 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

msyavuz and others added 30 commits March 17, 2026 11:41
…ist columns (apache#38566)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit fc156d0)
apache#38513)

Co-authored-by: Diego Pucci <diegopucci.me@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: codeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com>
(cherry picked from commit 9516d1a)
… add owner/favorite filters (apache#38277)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit d5cf77c)
…ache#38602)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit ba7271b)
apache#38388)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit b6c3b3e)
…ilter (apache#38646)

Signed-off-by: hainenber <dotronghai96@gmail.com>
(cherry picked from commit afe093f)
…pache#38644)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit aa5adb0)
…pache#38374)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: codeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com>
(cherry picked from commit 96705c1)
…data (apache#38655)

Signed-off-by: hainenber <dotronghai96@gmail.com>
(cherry picked from commit ca403dc)
…8407)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…filters (apache#38531)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…ize (apache#38562)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…38414)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
luizotavio32 and others added 12 commits July 20, 2026 15:47
…#42048)

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
… content (apache#39423)

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
(cherry picked from commit d7fa930)
…p (backport apache#41629) (apache#42113)

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Prathamesh Hukkeri <prathamesh04@users.noreply.github.com>
(cherry picked from commit c05ac13)
…tool proxy and request wrapper

_resolve_tool_name() was dead code (never invoked, and _CALL_TOOL_PROXY
was undefined), so tool search proxy calls always logged tool="call_tool".
Separately, every MCP tool takes a single `request` argument, so real
arguments arrive nested as {"request": {...}} (and one layer deeper when
routed through the call_tool proxy), which the previous flat
params.get("dashboard_id") lookup could never see through. Also extend
the create-tool output backfill to cover create_virtual_dataset's
dataset_id, which generate_chart/generate_dashboard already had for
chart/dashboard ids.
A guest loading a chart that has an x-axis and no saved query_context gets a
403 (`Guest user cannot modify chart payload`) and the chart renders as an
error tile. The same chart works for Admin.

Before querying, `normalizeTimeColumn` rewrites the chart's x-axis into a
synthetic column, so the request carries
`{"columnType": "BASE_AXIS", "sqlExpression": "order_date", ...}` while the
chart stores `"order_date"` under its own `x_axis` control. Two independent
mismatches each produce the 403: the shapes differ (dict vs. string, never
equal), and the guard never reads the `x_axis` control at all.

Collapse a synthesized BASE_AXIS column back to the reference it stands for
before comparing, and read the stored `x_axis` as an accepted column value.
Both apply to `columns`/`groupby` only -- `metrics` and `orderby` keep exact
comparison, so a BASE_AXIS marker cannot be smuggled onto a metric or a sort
expression. The collapsed value must still match something stored on the
chart, so tagging an unrelated column or free-form SQL as BASE_AXIS grants no
additional access.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@github-actions github-actions Bot added i18n Namespace | Anything related to localization risk:db-migration PRs that require a DB migration i18n:spanish Translation related to Spanish language i18n:french Translation related to French language i18n:japanese Translation related to Japanese language api Related to the REST API doc Namespace | Anything related to documentation plugins dependencies:npm github_actions Pull requests that update GitHub Actions code packages i18n:dutch i18n:ukrainian i18n:brazilian i18n:persian risk:ci-script PR modifies scripts that execute in CI (supply chain risk) labels Aug 6, 2026
@netlify

netlify Bot commented Aug 6, 2026

Copy link
Copy Markdown

Deploy Preview for superset-docs-preview ready!

Name Link
🔨 Latest commit e113491
🔍 Latest deploy log https://app.netlify.com/projects/superset-docs-preview/deploys/6a7498c7cab12c0008b7010c
😎 Deploy Preview https://deploy-preview-42846--superset-docs-preview.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api Related to the REST API dependencies:npm doc Namespace | Anything related to documentation github_actions Pull requests that update GitHub Actions code i18n:brazilian i18n:dutch i18n:french Translation related to French language i18n:japanese Translation related to Japanese language i18n:persian i18n:spanish Translation related to Spanish language i18n:ukrainian i18n Namespace | Anything related to localization packages plugins risk:ci-script PR modifies scripts that execute in CI (supply chain risk) risk:db-migration PRs that require a DB migration

Projects

None yet

Development

Successfully merging this pull request may close these issues.