Fix/guest base axis x axis 6.2 - #42846
Closed
luizotavio32 wants to merge 270 commits into
Closed
Conversation
(cherry picked from commit 95f61bd)
…ist columns (apache#38566) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> (cherry picked from commit fc156d0)
…d LLM tool calls (apache#38625) (cherry picked from commit d91b968)
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)
…s nested geometry JSON (apache#38595) (cherry picked from commit 32a64d0)
…charts (apache#38628) (cherry picked from commit af5e05d)
… add owner/favorite filters (apache#38277) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> (cherry picked from commit d5cf77c)
(cherry picked from commit f538326)
…pache#38603) (cherry picked from commit 1867336)
…ache#38473) (cherry picked from commit f6106cd)
(cherry picked from commit ca2d26a)
…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)
…che#38608) (cherry picked from commit e8061a9)
(cherry picked from commit cc066b3)
…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)
apache#38410) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…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>
…#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)
…apache#37109) (apache#42051) Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
…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)
…results (apache#42570) (cherry picked from commit afb8636)
…te_dashboard audit logs (apache#42367) (cherry picked from commit 181f5bc)
(cherry picked from commit ac97484)
…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>
✅ Deploy Preview for superset-docs-preview ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
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.
SUMMARY
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
TESTING INSTRUCTIONS
ADDITIONAL INFORMATION