Skip to content

feat: Guided Tour - Secrets#2406

Draft
camielvs wants to merge 2 commits into
06-10-feat_guided_tours_framework_secrets_from
06-10-feat_guided_tour_-_secrets
Draft

feat: Guided Tour - Secrets#2406
camielvs wants to merge 2 commits into
06-10-feat_guided_tours_framework_secrets_from
06-10-feat_guided_tour_-_secrets

Conversation

@camielvs

@camielvs camielvs commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

Description

The registered Using Secrets guided tour — a 12-step walkthrough of why credentials don't belong in a pipeline, what secrets are, and the two ways to attach one. Uses the secret interaction mechanics, the in-editor Settings stand-in, and the in-memory mock backend from #2405, and boots into a small Secrets tour pipeline that makes an authenticated HTTP request.

The tour covers the whole lifecycle: the problem → what a secret is → create one and bind it to a task argument → manage secrets in an in-editor Settings → Secrets stand-in → then the alternative: bind a secret to a pipeline input at submit time.

It runs hands-on with or without a backend: it sets mockBackend: true, so when no real backend is available the secret steps work against the in-memory mock from #2405 (ephemeral, never leaves the browser); with a backend they use the real secrets API. Either way the steps gate normally.

What's in the tour

  1. The problem — everything in a pipeline is shared and visible (centered, no spotlight)
  2. What a secret is — value stays on the backend, only the name travels (centered)
  3. Interactive — select the Authenticated Request task (select-task)
  4. Interactive — open the token argument's menu → Dynamic Data → Select Secret (open-secret-dialog)
  5. InteractiveAdd Secret, then pick it to bind it to the argument (assign-secret-argument)
  6. Outcome — the token argument now shows the secret by name, with a lock icon (context panel)
  7. Interactive — click the Settings gear to open the secrets manager (open-settings-panel)
  8. Settings → Secrets — replace a value or delete a secret here (the in-editor stand-in)
  9. The second way — leave a pipeline input empty and bind at submit time (rings the API_KEY input node)
  10. Interactive — open the run arguments dialog from Runs and submission (open-submit-dialog)
  11. Interactive — bind a secret to API_KEY via the Use Secret lock button (assign-secret-submit)
  12. Wrap-up — the API_KEY input is now backed by the secret; with a backend you can Submit Run, then finish (the copy reads correctly whether or not a real run is launched)

image.png

DOM anchors & assets added in this PR

Following the convention that tour-specific anchors ship with the tour:

  • mockBackend: true on the tour definition — opts the Secrets tour into the in-memory mock backend (from feat: Guided Tours Framework (Secrets) #2405) when no real backend is available.
  • Seed pipelinepublic/tour-pipelines/Secrets.pipeline.component.yaml (Secrets: an Authenticated Request task taking a token and an api_key, wired to an empty API_KEY input, plus a Show Response echo task).
  • ThunderMenudata-tour="thunder-menu-content"; DynamicDataSubmenudata-tour="thunder-menu-submenu-content" (so the ⚡ menu and its submenu can be spotlit together).
  • SubmitTaskArgumentsDialogdata-tour="submit-arguments-dialog" and data-tour="submit-arguments-confirm".

Interactions consumed (defined in #2405): select-task, open-secret-dialog, assign-secret-argument, open-settings-panel, open-submit-dialog, assign-secret-submit. The using-secrets Learning Hub entry was already registered lower in the stack, so no tours.json / FeaturedTours change is needed here.

Related Issue and Pull requests

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

Depends on #2405 (secret interaction mechanics, in-editor Settings stand-in, and the in-memory mock backend) and the framework stack below it.

Type of Change

  • New feature

Checklist

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

Test Instructions

Start the Using Secrets tour from the Learning Hub and walk all 12 steps.

With a backend (configured + authorized for the secrets API):

  • Steps 3–5 create and bind a secret through the ⚡ menu; the token argument should end up showing the secret name, not a value.
  • Step 7 opens the in-editor Settings stand-in (the gear does not navigate away); step 8 shows the real secrets list with working replace/delete.
  • Steps 10–11 bind a secret to API_KEY in the submit dialog; step 12's Submit Run is enabled and Finish Tour is clickable while the dialog is open.

Without a backend (mock path):

  • The same steps are fully hands-on against the in-memory mock — the picker/list show real content (not the error icon) and no /api/secrets calls fire.
  • Steps gate normally (Next stays disabled until the action is done).
  • In the submit dialog the secret-to-input assignment works; Submit Run is disabled (no real run to launch) and the tour wraps up via Finish Tour.

Screenshots

@github-actions

github-actions Bot commented Jun 10, 2026

Copy link
Copy Markdown

🎩 Preview

A preview build has been created at: 06-10-feat_guided_tour_-_secrets/e5de95e

camielvs commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator Author

@camielvs camielvs added the #gsd:50583 Learning Hub label Jun 10, 2026 — with Graphite App
@camielvs camielvs force-pushed the 06-10-feat_guided_tour_-_secrets branch 3 times, most recently from 4588433 to 9700273 Compare June 11, 2026 19:35
@camielvs camielvs force-pushed the 06-10-feat_guided_tours_framework_secrets_ branch 2 times, most recently from 62653bf to d7a841f Compare June 11, 2026 20:32
@camielvs camielvs force-pushed the 06-10-feat_guided_tour_-_secrets branch from 9700273 to 52e59d0 Compare June 11, 2026 20:32
@camielvs camielvs force-pushed the 06-10-feat_guided_tours_framework_secrets_ branch from d7a841f to c7356f5 Compare June 11, 2026 20:55
@camielvs camielvs force-pushed the 06-10-feat_guided_tour_-_secrets branch from 52e59d0 to 61e99a7 Compare June 11, 2026 20:55
camielvs and others added 2 commits June 12, 2026 15:53
Set mockBackend on the Secrets tour so it runs hands-on without a real backend
(secrets mocked in-memory), and reword the final step so it reads correctly
whether or not a run is actually submitted.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@camielvs camielvs force-pushed the 06-10-feat_guided_tour_-_secrets branch from 61e99a7 to e5de95e Compare June 12, 2026 23:36
@camielvs camielvs mentioned this pull request Jun 13, 2026
3 tasks
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