Skip to content

fix(docs): fix 404s in documentation#38974

Open
dmunozv04 wants to merge 1 commit intoapache:masterfrom
dmunozv04:fix-404-docs
Open

fix(docs): fix 404s in documentation#38974
dmunozv04 wants to merge 1 commit intoapache:masterfrom
dmunozv04:fix-404-docs

Conversation

@dmunozv04
Copy link
Copy Markdown

@dmunozv04 dmunozv04 commented Mar 31, 2026

User description

SUMMARY

Fixes some 404 links when browsing the documentation.
The change to admin-docs, user-docs and developer-docs has left some links behind, it seems like docusaurus doesn't follow redirects when moving inside the page.
This PR fixes the links so they don't 404 using the output of the docs generation script.

I've identified the following broken links:
/admin-docs/security/security -> /admin-docs/security
/admin-docs/databases -> user-docs/databases
/docs/intro -> /user-docs/intro
/docs/components/ -> /developer-docs/components/

EDIT: missed one

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

Before when going to docs home and clicking "Get started"
superset-home-before
After when going to docs home and clicking "Get started"
superset-home-after

TESTING INSTRUCTIONS

Access the new docs build and test the links

ADDITIONAL INFORMATION

  • Has associated issue:
    Doc - Lots of 404 page when searching on docs portal #38652 (comment)
  • 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

CodeAnt-AI Description

Fix broken links in the documentation and home page

What Changed

  • Fixed several documentation links that were taking readers to 404 pages
  • Updated the docs home “Get Started” button to open the current user guide
  • Corrected links in admin, developer, and tutorial pages so they point to the right sections

Impact

✅ Fewer documentation 404s
✅ Easier navigation from the docs home page
✅ Faster access to the right help pages

💡 Usage Guide

Checking Your Pull Request

Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.

Talking to CodeAnt AI

Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:

@codeant-ai ask: Your question here

This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.

Example

@codeant-ai ask: Can you suggest a safer alternative to storing this secret?

Preserve Org Learnings with CodeAnt

You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:

@codeant-ai: Your feedback here

This helps CodeAnt AI learn and adapt to your team's coding style and standards.

Example

@codeant-ai: Do not flag unused imports.

Retrigger review

Ask CodeAnt AI to review the PR again, by typing:

@codeant-ai: review

Check Your Repository Health

To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.

@github-actions github-actions bot added the doc Namespace | Anything related to documentation label Mar 31, 2026
@codeant-ai-for-open-source codeant-ai-for-open-source bot added the size:XS This PR changes 0-9 lines, ignoring generated files label Mar 31, 2026
@netlify
Copy link
Copy Markdown

netlify bot commented Mar 31, 2026

Deploy Preview for superset-docs-preview ready!

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

QR Code

Use your smartphone camera to open QR code link.

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

Copy link
Copy Markdown
Contributor

@bito-code-review bito-code-review bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review Agent Run #fd0b28

Actionable Suggestions - 3
  • docs/docs/using-superset/creating-your-first-dashboard.mdx - 1
  • docs/admin_docs/installation/kubernetes.mdx - 1
  • docs/admin_docs/configuration/timezones.mdx - 1
Additional Suggestions - 3
  • docs/admin_docs/configuration/networking-settings.mdx - 1
    • Broken documentation link · Line 67-67
      The link to the Public role documentation appears broken. The new path /admin-docs/security/#public doesn't exist since there's no index.mdx in the security directory. It should point to /admin-docs/security/security#public instead.
      Code suggestion
       @@ -66,1 +66,1 @@
      -See the [Public role documentation](/admin-docs/security/#public) for more details.
      +See the [Public role documentation](/admin-docs/security/security#public) for more details.
  • docs/src/pages/index.tsx - 1
    • Inconsistent navigation link · Line 720-720
      The "Get Started" button href points to "/user-docs/intro", which is a redirect to "/user-docs/", but for consistency with the navbar's "Get Started" button that links to "/user-docs/", it should link directly to the actual page.
      Code suggestion
       @@ -720,1 +720,1 @@
      -            <StyledButton className="default-button-theme" href="/user-docs/intro">
      +            <StyledButton className="default-button-theme" href="/user-docs/">
  • docs/admin_docs/configuration/timezones.mdx - 1
    • Spelling error · Line 23-23
      The word 'serializd' appears to be a misspelling of 'serialized'.
      Code suggestion
       @@ -23,1 +23,1 @@
      -The challenge however lies with the slew of [database engines](/user-docs/databases#installing-drivers-in-docker) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serializd to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.
      +The challenge however lies with the slew of [database engines](/user-docs/databases#installing-drivers-in-docker) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serialized to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.
Review Details
  • Files reviewed - 5 · Commit Range: ea7b161..ea7b161
    • docs/admin_docs/configuration/networking-settings.mdx
    • docs/admin_docs/configuration/timezones.mdx
    • docs/admin_docs/installation/kubernetes.mdx
    • docs/docs/using-superset/creating-your-first-dashboard.mdx
    • docs/src/pages/index.tsx
  • Files skipped - 0
  • Tools
    • Whispers (Secret Scanner) - ✔︎ Successful
    • Detect-secrets (Secret Scanner) - ✔︎ Successful

Bito Usage Guide

Commands

Type the following command in the pull request comment and save the comment.

  • /review - Manually triggers a full AI review.

  • /pause - Pauses automatic reviews on this pull request.

  • /resume - Resumes automatic reviews.

  • /resolve - Marks all Bito-posted review comments as resolved.

  • /abort - Cancels all in-progress reviews.

Refer to the documentation for additional commands.

Configuration

This repository uses Superset You can customize the agent settings here or contact your Bito workspace admin at evan@preset.io.

Documentation & Help

AI Code Review powered by Bito Logo


For detailed information on configuring dashboard access, see the
[Dashboard Access Control](/admin-docs/security/security#dashboard-access-control) section in the
[Dashboard Access Control](/admin-docs/security/#dashboard-access-control) section in the
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Broken documentation link

This change appears to break the documentation link by removing the necessary '/security' path segment. The target file is at '/admin-docs/security/security.mdx', so the original path was correct.

Code suggestion
Check the AI-generated fix before applying
Suggested change
[Dashboard Access Control](/admin-docs/security/#dashboard-access-control) section in the
[Dashboard Access Control](/admin-docs/security/security#dashboard-access-control) section in the

Code Review Run #fd0b28


Should Bito avoid suggestions like this for future reviews? (Manage Rules)

  • Yes, avoid them

dialect to be installed for each datastore you want to connect to.

See [Install Database Drivers](/admin-docs/databases#installing-database-drivers) for more information.
See [Install Database Drivers](/user-docs/databases#installing-database-drivers) for more information.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Broken documentation link

The link to 'Install Database Drivers' now points to /user-docs/databases#installing-database-drivers, but this page does not exist in the documentation. This will result in a 404 error for users trying to access the installation instructions. The original link to /admin-docs/databases was also broken, so this change doesn't resolve the issue. Please verify the correct location of the 'Installing Database Drivers' content (e.g., based on versioned docs at /docs/6.0.0/configuration/databases#installing-database-drivers) and update accordingly.

Code Review Run #fd0b28


Should Bito avoid suggestions like this for future reviews? (Manage Rules)

  • Yes, avoid them

To strive for data consistency (regardless of the timezone of the client) the Apache Superset backend tries to ensure that any timestamp sent to the client has an explicit (or semi-explicit as in the case with [Epoch time](https://en.wikipedia.org/wiki/Unix_time) which is always in reference to UTC) timezone encoded within.

The challenge however lies with the slew of [database engines](/admin-docs/databases#installing-drivers-in-docker) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serializd to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.
The challenge however lies with the slew of [database engines](/user-docs/databases#installing-drivers-in-docker) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serializd to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Broken documentation link

The link to database engines includes an anchor #installing-drivers-in-docker that does not exist on the /user-docs/databases page, making the link broken. Consider removing the anchor to link to the page directly.

Code suggestion
Check the AI-generated fix before applying
Suggested change
The challenge however lies with the slew of [database engines](/user-docs/databases#installing-drivers-in-docker) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serializd to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.
The challenge however lies with the slew of [database engines](/user-docs/databases) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serializd to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.

Code Review Run #fd0b28


Should Bito avoid suggestions like this for future reviews? (Manage Rules)

  • Yes, avoid them

Copy link
Copy Markdown
Contributor

@bito-code-review bito-code-review bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review Agent Run #ab84df

Actionable Suggestions - 1
  • docs/docusaurus.config.ts - 1
Review Details
  • Files reviewed - 6 · Commit Range: 5304d93..5304d93
    • docs/admin_docs/configuration/networking-settings.mdx
    • docs/admin_docs/configuration/timezones.mdx
    • docs/admin_docs/installation/kubernetes.mdx
    • docs/docs/using-superset/creating-your-first-dashboard.mdx
    • docs/docusaurus.config.ts
    • docs/src/pages/index.tsx
  • Files skipped - 1
    • docs/developer_docs/extensions/overview.md - Reason: Filter setting
  • Tools
    • Eslint (Linter) - ✔︎ Successful
    • Whispers (Secret Scanner) - ✔︎ Successful
    • Detect-secrets (Secret Scanner) - ✔︎ Successful

Bito Usage Guide

Commands

Type the following command in the pull request comment and save the comment.

  • /review - Manually triggers a full AI review.

  • /pause - Pauses automatic reviews on this pull request.

  • /resume - Resumes automatic reviews.

  • /resolve - Marks all Bito-posted review comments as resolved.

  • /abort - Cancels all in-progress reviews.

Refer to the documentation for additional commands.

Configuration

This repository uses Superset You can customize the agent settings here or contact your Bito workspace admin at evan@preset.io.

Documentation & Help

AI Code Review powered by Bito Logo

{
label: 'Security',
to: '/admin-docs/security/security',
to: '/admin-docs/security/',
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Broken Navigation Link

This change breaks the Security navigation link in the admin docs. The path '/admin-docs/security/' points to a directory without an index file, while '/admin-docs/security/security' correctly targets the security.mdx file. Revert to maintain working navigation.

Code suggestion
Check the AI-generated fix before applying
 {"patch": "--- docs/docusaurus.config.ts\n+++ docs/docusaurus.config.ts\n@@ -181 +181 @@\n-        to: '/admin-docs/security/',\n+        to: '/admin-docs/security/security',\n"}

Code Review Run #ab84df


Should Bito avoid suggestions like this for future reviews? (Manage Rules)

  • Yes, avoid them

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates Superset’s Docusaurus site links to match the new doc route structure (admin-docs/user-docs/developer-docs) and eliminate common 404s reported after the documentation revamp.

Changes:

  • Fixes the homepage “Get Started” destination to point into the new user docs section.
  • Updates navbar + multiple docs pages to use the correct admin/user/developer doc routes (not legacy /docs/* or outdated nested paths).
  • Repairs deep links into the Security docs (anchors) and UI Components docs.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
docs/src/pages/index.tsx Updates the homepage “Get Started” CTA to the new user-docs route.
docs/docusaurus.config.ts Fixes the Admin navbar Security link to the updated security route.
docs/docs/using-superset/creating-your-first-dashboard.mdx Updates the Security docs deep link for dashboard access control.
docs/developer_docs/extensions/overview.md Fixes UI Components link to the new developer-docs components section.
docs/admin_docs/installation/kubernetes.mdx Updates database driver docs link to the new user-docs databases route.
docs/admin_docs/configuration/timezones.mdx Updates database docs link to the new user-docs databases route.
docs/admin_docs/configuration/networking-settings.mdx Fixes Security docs links (public role anchor + securing superset page).

To strive for data consistency (regardless of the timezone of the client) the Apache Superset backend tries to ensure that any timestamp sent to the client has an explicit (or semi-explicit as in the case with [Epoch time](https://en.wikipedia.org/wiki/Unix_time) which is always in reference to UTC) timezone encoded within.

The challenge however lies with the slew of [database engines](/admin-docs/databases#installing-drivers-in-docker) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serializd to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.
The challenge however lies with the slew of [database engines](/user-docs/databases#installing-drivers-in-docker) which Apache Superset supports and various inconsistencies between their [Python Database API (DB-API)](https://www.python.org/dev/peps/pep-0249/) implementations combined with the fact that we use [Pandas](https://pandas.pydata.org/) to read SQL into a DataFrame prior to serializing to JSON. Regrettably Pandas ignores the DB-API [type_code](https://www.python.org/dev/peps/pep-0249/#type-objects) relying by default on the underlying Python type returned by the DB-API. Currently only a subset of the supported database engines work correctly with Pandas, i.e., ensuring timestamps without an explicit timestamp are serializd to JSON with the server timezone, thus guaranteeing the client will display timestamps in a consistent manner irrespective of the client's timezone.
Copy link

Copilot AI Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo in this paragraph: "serializd" should be "serialized".

Copilot uses AI. Check for mistakes.
</div>
<img src="/img/community/line.png" alt="line" />
<StyledButton className="default-button-theme" href="/docs/intro">
<StyledButton className="default-button-theme" href="/user-docs/intro">
Copy link

Copilot AI Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This links to /user-docs/intro, but the docs config already defines a redirect from /user-docs/intro to /user-docs/. Consider linking directly to /user-docs/ to avoid an extra redirect and keep it consistent with the navbar "Get Started" link.

Suggested change
<StyledButton className="default-button-theme" href="/user-docs/intro">
<StyledButton className="default-button-theme" href="/user-docs/">

Copilot uses AI. Check for mistakes.
@codeant-ai-for-open-source codeant-ai-for-open-source bot added size:XS This PR changes 0-9 lines, ignoring generated files and removed size:XS This PR changes 0-9 lines, ignoring generated files labels Apr 1, 2026
Copy link
Copy Markdown
Contributor

@bito-code-review bito-code-review bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review Agent Run #dfe53c

Actionable Suggestions - 2
  • docs/admin_docs/configuration/networking-settings.mdx - 1
  • docs/src/pages/index.tsx - 1
Review Details
  • Files reviewed - 6 · Commit Range: 6fc36d2..6fc36d2
    • docs/admin_docs/configuration/networking-settings.mdx
    • docs/admin_docs/configuration/timezones.mdx
    • docs/admin_docs/installation/kubernetes.mdx
    • docs/docs/using-superset/creating-your-first-dashboard.mdx
    • docs/docusaurus.config.ts
    • docs/src/pages/index.tsx
  • Files skipped - 1
    • docs/developer_docs/extensions/overview.md - Reason: Filter setting
  • Tools
    • Whispers (Secret Scanner) - ✔︎ Successful
    • Detect-secrets (Secret Scanner) - ✔︎ Successful
    • Eslint (Linter) - ✔︎ Successful

Bito Usage Guide

Commands

Type the following command in the pull request comment and save the comment.

  • /review - Manually triggers a full AI review.

  • /pause - Pauses automatic reviews on this pull request.

  • /resume - Resumes automatic reviews.

  • /resolve - Marks all Bito-posted review comments as resolved.

  • /abort - Cancels all in-progress reviews.

Refer to the documentation for additional commands.

Configuration

This repository uses Superset You can customize the agent settings here or contact your Bito workspace admin at evan@preset.io.

Documentation & Help

AI Code Review powered by Bito Logo

4. Only dashboards with the Public role explicitly assigned are visible to anonymous users

See the [Public role documentation](/admin-docs/security/security#public) for more details.
See the [Public role documentation](/admin-docs/security/#public) for more details.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Broken documentation link

The link to the Public role documentation was changed to /admin-docs/security/#public, but this breaks the link since there's no index.mdx in the security directory. Docusaurus routes require the file name for non-index files.

Code suggestion
Check the AI-generated fix before applying
Suggested change
See the [Public role documentation](/admin-docs/security/#public) for more details.
See the [Public role documentation](/admin-docs/security/security#public) for more details.

Code Review Run #dfe53c


Should Bito avoid suggestions like this for future reviews? (Manage Rules)

  • Yes, avoid them

</div>
<img src="/img/community/line.png" alt="line" />
<StyledButton className="default-button-theme" href="/docs/intro">
<StyledButton className="default-button-theme" href="/user-docs/intro">
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Incorrect href relies on redirect

The href "/user-docs/intro" redirects to "/user-docs/" per the Docusaurus config. Since the user docs entry point is "/user-docs/", the Get Started button should link directly there instead of relying on a redirect for better UX.

Code suggestion
Check the AI-generated fix before applying
Suggested change
<StyledButton className="default-button-theme" href="/user-docs/intro">
<StyledButton className="default-button-theme" href="/user-docs/">

Code Review Run #dfe53c


Should Bito avoid suggestions like this for future reviews? (Manage Rules)

  • Yes, avoid them

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

Labels

doc Namespace | Anything related to documentation size/S size:XS This PR changes 0-9 lines, ignoring generated files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants