Skip to content

feat: Guided Tour - Navigating the Editor#2306

Draft
camielvs wants to merge 2 commits into
05-20-feat_learning_hub_tour_framework_and_first_tourfrom
05-22-feat_guided_tour_-_navigating_the_editor
Draft

feat: Guided Tour - Navigating the Editor#2306
camielvs wants to merge 2 commits into
05-20-feat_learning_hub_tour_framework_and_first_tourfrom
05-22-feat_guided_tour_-_navigating_the_editor

Conversation

@camielvs

@camielvs camielvs commented May 22, 2026

Copy link
Copy Markdown
Collaborator

Description

The first registered guided tour against the framework stack (#2348 / #2299 / #2340) — Navigating the Editor.

An 11-step walkthrough of the v2 editor with markdown-formatted copy, stable data-* selectors, and three interactive moments. Boots into a temporary tour pipeline seeded from example-pipelines/Intro-Hello World.pipeline.component.yaml.

What's in the tour

  1. Welcome (centered popover, no spotlight)
  2. Top bar — pipeline name + editor menus (File, View, Runs, Components, Windows)
  3. Top bar — quick actions (submit, autosave status, Settings, docs)
  4. Canvas — workspace plus the controls along the bottom (minimap, viewport controls, undo/redo)
  5. Left sidebar — Components, Runs & submission, and Recent runs (all three docked windows highlighted together)
  6. Right sidebar — Pipeline Details
  7. Interactive — click the Greet task (select-task)
  8. Task Properties panel
  9. Interactive — drag Task Properties out of the dock (undock-window, targetWindowName: "Task Properties")
  10. Interactive — re-dock Task Properties (redock-window)
  11. Windows menu

Interactive steps show a checklist of the required action alongside a gated "Next"; completing the action ticks the checklist and the tour auto-advances after a short beat (framework behavior from #2299 / #2340). If the prompted state is already satisfied when the step lands (e.g. the window is already floating), the step opens pre-completed.

Stable selectors

Every step selector targets a data-* attribute — no .react-flow__* library classes — so the tour doesn't break when the underlying library renames CSS.

DOM anchors added in this PR:

  • data-tour="editor-top-bar", editor-top-bar-left, editor-menu-items, editor-top-bar-actions on EditorMenuBar
  • data-tour="editor-canvas" on the canvas wrapper in EditorV2
  • data-tour="canvas-undo-redo" on the undo/redo cluster
  • data-tour="windows-menu-content" / windows-menu-submenu-content on the Windows dropdown content
  • data-window-id / data-dock-window-content on docked and floating windows
  • data-task-name on task / IO nodes plus data-tour-node="task" on task nodes only (so step 7 scopes to tasks and not IO ports, which share data-task-name)
  • A new domAttributes arg on createEntityNode injects these onto the xyflow DOM nodes

One behavior change

WindowsMenu now dispatches a resize event on dropdown open/close (with a 250ms follow-up for Radix's exit animation). Without this, reactour can't re-measure the portalled dropdown content during step 11 — the highlight would otherwise stay frozen at the trigger's pre-open coordinates.

Related Issue and Pull requests

Progresses https://github.com/Shopify/oasis-frontend/issues/583

Type of Change

  • New feature

Screenshots

image.png

image.png

image.png

image.png

image.png

Checklist

  • I have tested this does not break current pipelines / runs functionality
  • I have tested the changes on staging

Test Instructions

Dashboard → Learning Hub → Featured Tours → "Find your way around the editor". Walk through all 11 steps end-to-end.

The tour cannot be paused or dismissed mid-run — ESC, clicks on the mask, and the (hidden) close button are all no-ops; the only mid-tour exit is the Exit Tour button.

  • Interactive steps show a checklist row; completing the action ticks it and the tour auto-advances after a short beat (or click "Next").
  • Step 7 (select-task) — clicking the Greet task advances; clicking an IO port on the same task does not.
  • Steps 9–10 (undock/redock) — the checklist reads "Drag the Task Properties panel…"; dragging the panel out / back completes the step. If it's already floating/docked on arrival, the step opens pre-completed.
  • URL deep-link — refresh mid-tour resumes on the same step (/tour/navigating-the-editor?step=N).
  • Browser back/forward — navigates between steps.
  • Entry loading — menu bar appears immediately; body shows a small "Loading pipeline…" skeleton, no full-screen flash.
  • Step 11 (Windows menu) — opening the dropdown highlights the menu content correctly (the resize dispatch).
  • Done — returns to /learn/tours; the tour pipeline does not appear in the regular pipelines list.
  • Save this pipeline (from feat: Guided Tours End Screen #2339) — promotes the temp pipeline to a regular one and opens /editor/<name>.

@github-actions

github-actions Bot commented May 22, 2026

Copy link
Copy Markdown

🎩 Preview

A preview build has been created at: 05-22-feat_guided_tour_-_navigating_the_editor/f879945

camielvs commented May 22, 2026

Copy link
Copy Markdown
Collaborator Author

@camielvs camielvs added the #gsd:50583 Learning Hub label May 22, 2026 — with Graphite App
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from a98fb46 to 9f459c8 Compare May 22, 2026 19:29
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from 45a5a50 to d1d7979 Compare May 22, 2026 19:29
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from 9f459c8 to e7770ca Compare May 22, 2026 21:53
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from d1d7979 to ca4e7d6 Compare May 22, 2026 21:53
@camielvs camielvs mentioned this pull request May 22, 2026
8 tasks
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from ca4e7d6 to 433204f Compare May 23, 2026 00:09
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch 2 times, most recently from e26abd3 to d95e8da Compare May 23, 2026 00:12
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from 433204f to 8b17afb Compare May 23, 2026 00:12
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from d95e8da to 6246686 Compare May 23, 2026 00:21
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from 8b17afb to 76cc3a2 Compare May 23, 2026 00:21
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from 6246686 to 3adc6cd Compare May 23, 2026 00:22
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from 76cc3a2 to 5f30cb6 Compare May 23, 2026 00:22
@camielvs camielvs mentioned this pull request May 25, 2026
8 tasks
camielvs added a commit that referenced this pull request May 25, 2026
## Description

This should hopefully fix issues with preview builds in #2306



Adds a `publicAssets` helper than can be users to point public asset urls to the cdn instead of local.

<!-- Please provide a brief description of the changes made in this pull request. Include any relevant context or reasoning for the changes. -->

## Related Issue and Pull requests

<!-- Link to any related issues using the format #<issue-number> -->

## Type of Change

<!-- Please delete options that are not relevant -->

- [x] Bug fix
- [ ] New feature
- [ ] Improvement
- [ ] Cleanup/Refactor
- [ ] Breaking change
- [ ] Documentation update

## Checklist

<!-- Please ensure the following are completed before submitting the PR -->

- [ ] I have tested this does not break current pipelines / runs functionality
- [ ] I have tested the changes on staging

## Screenshots (if applicable)

<!-- Include any screenshots that might help explain the changes or provide visual context -->

## Test Instructions

<!-- Detail steps and prerequisites for testing the changes in this PR -->

## Additional Comments

<!-- Add any additional context or information that reviewers might need to know regarding this PR -->
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from 3adc6cd to b57b285 Compare May 25, 2026 18:01
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch 2 times, most recently from ade8e35 to a71619d Compare May 25, 2026 18:14
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from b57b285 to cb2d208 Compare May 25, 2026 18:15
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from a71619d to 5939f43 Compare May 25, 2026 18:15
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from b224221 to ecfc28a Compare May 28, 2026 18:05
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from 6861cb0 to 29d3faa Compare May 28, 2026 18:05
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch from ecfc28a to cecf1a3 Compare May 28, 2026 20:54
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch 2 times, most recently from 8c01387 to ed924ee Compare May 28, 2026 20:58
@camielvs camielvs force-pushed the 05-20-feat_learning_hub_tour_framework_and_first_tour branch 2 times, most recently from 5c82cee to 07be379 Compare May 28, 2026 21:07
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from ed924ee to 6e2fe66 Compare May 28, 2026 21:07
@camielvs camielvs changed the base branch from 05-20-feat_learning_hub_tour_framework_and_first_tour to graphite-base/2306 May 28, 2026 21:16
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from 6e2fe66 to 184b740 Compare May 28, 2026 21:16
@camielvs camielvs changed the base branch from graphite-base/2306 to 05-27-fix_guided_tours_ephemeral_state May 28, 2026 21:16
@camielvs camielvs changed the base branch from 05-27-fix_guided_tours_ephemeral_state to graphite-base/2306 May 28, 2026 21:33
@camielvs camielvs force-pushed the 05-22-feat_guided_tour_-_navigating_the_editor branch from 184b740 to 6017dd7 Compare May 28, 2026 21:33
@camielvs camielvs changed the base branch from graphite-base/2306 to 05-28-feat_save_and_resume_paused_tours May 28, 2026 21:33
@camielvs camielvs mentioned this pull request May 28, 2026
3 tasks
@camielvs camielvs force-pushed the 05-28-feat_save_and_resume_paused_tours branch from e1a0ce6 to 98d9144 Compare May 28, 2026 21:54
camielvs added 2 commits June 9, 2026 13:21
Adds the first guided tour. A 14-step walkthrough of the v2 editor
registered against the framework introduced in the parent PR. The tour
covers menu bar, canvas, dockable panels, task interaction, and the
Windows menu.

Interactive steps exercise the framework's three primitives —
`select-task`, `undock-window`, `redock-window` — each with a
non-interactive fallback for when the prompted state is already met.

The tour boots into a fresh temporary pipeline cloned from
`example-pipelines/Intro-Hello World.pipeline.component.yaml`.

DOM anchors added:
- data-tour="editor-top-bar" / -menu-items / -top-bar-actions on the
  menu bar
- data-tour="canvas-undo-redo" on the undo/redo cluster
- data-tour="windows-menu-content" / -submenu-content on the Windows
  dropdown content
- data-window-id / data-dock-window-content on docked + floating windows
- data-task-name on task / IO nodes (via a new `domAttributes` arg on
  createEntityNode)

WindowsMenu now dispatches a `resize` event on open/close so reactour
re-measures the portalled dropdown content during step 14.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

#gsd:50583 Learning Hub

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant