Skip to content

fix: dataset breadcrumb navigation to avoid history back on repeated clicks#2388

Draft
Copilot wants to merge 2 commits into
masterfrom
copilot/fix-datasets-header-double-click
Draft

fix: dataset breadcrumb navigation to avoid history back on repeated clicks#2388
Copilot wants to merge 2 commits into
masterfrom
copilot/fix-datasets-header-double-click

Conversation

Copy link
Copy Markdown

Copilot AI commented May 21, 2026

In dataset detail pages, clicking the first breadcrumb (Datasets) could invoke browser history (back) and send users to the previous URL, including external pages. This PR makes breadcrumb navigation deterministic by always routing to the datasets list path.

  • Navigation behavior update

    • Replaced history-based handling for the datasets breadcrumb with explicit router navigation.
    • Datasets breadcrumb now consistently resolves to /datasets regardless of prior browser history state.
  • Breadcrumb click path consistency

    • Kept existing breadcrumb URL composition flow (url + crumb.url) and applied it to the datasets branch, aligning behavior with the non-datasets branch.
  • Focused unit coverage

    • Added a breadcrumb spec asserting repeated clicks on the datasets crumb trigger route navigation to /datasets (instead of history back behavior).
if (crumb.fallback === "/datasets") {
  // previous behavior: this.location.back();
  this.router.navigateByUrl(url + crumb.url);
}

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=5235 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-81925954 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,4231587736625820888,9689134619177768915,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,12458521445050126938,10480404251393704005,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • android.clients.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=5235 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-81925954 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,4231587736625820888,9689134619177768915,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,12458521445050126938,10480404251393704005,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • clientservices.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=5235 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-81925954 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,4231587736625820888,9689134619177768915,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,12458521445050126938,10480404251393704005,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • download.cypress.io
    • Triggering command: /usr/local/bin/node node dist/index.js --exec install (dns block)
  • google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
  • optimizationguide-pa.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=5235 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-81925954 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,4231587736625820888,9689134619177768915,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,12458521445050126938,10480404251393704005,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • safebrowsingohttpgateway.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=5235 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-81925954 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,4231587736625820888,9689134619177768915,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,12458521445050126938,10480404251393704005,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • sb-ssl.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=5235 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-81925954 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,4231587736625820888,9689134619177768915,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,12458521445050126938,10480404251393704005,4 --trace-process-track-uuid=3190708989122997041 (dns block)
  • www.scicat.info
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)
  • zip.scicatproject.org
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=swiftshader-webgl --crashpad-handler-pid=4966 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-4084052 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,2565522027097625640,400050732347450987,262144 --disable-features=PaintHolding --variations-seed-version --pseudonymization-salt-handle=7,i,18375531892440345325,15497792245122346784,4 --trace-process-track-uuid=3190708989122997041 /frontend end (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-4084052 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 http://localhost:9876/?id=4084052 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot AI changed the title [WIP] Fix redirect on double click of Datasets header path Fix dataset breadcrumb navigation to avoid history back on repeated clicks May 21, 2026
Copilot AI requested a review from Junjiequan May 21, 2026 06:52
@Junjiequan Junjiequan changed the title Fix dataset breadcrumb navigation to avoid history back on repeated clicks fix: dataset breadcrumb navigation to avoid history back on repeated clicks May 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: Double click on Datasets header path sends to previous url

2 participants