Skip to content

Overture v3: a studio walkthrough at the end of onboarding - #572

Merged
kateebonner merged 1 commit into
mainfrom
kate/overture-studio-tour
Aug 27, 2026
Merged

Overture v3: a studio walkthrough at the end of onboarding#572
kateebonner merged 1 commit into
mainfrom
kate/overture-studio-tour

Conversation

@kateebonner

@kateebonner kateebonner commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

What

Onboarding used to end at the profile summary and drop the user into an empty
window. This adds a final stage that walks them around it, and brings the
onboarding surfaces themselves onto brand.

Pairs with harmoniqs/opencode#258, which is the app half — the spotlight
that lights each element as its stop comes up. Either can merge first: without
the app half these cards still read on their own, just unlit; without this
score there are no tour cards and nothing renders.

The tour (Stage 7)

Nine stops, in the reading order of the window — the top bar left to right,
then the row beneath it, then the composer — so the highlight walks the screen
instead of hopping across it.

They ship as one multi-question card, not nine cards. Every stop is fixed
text, so a model turn between them would be dead time the user pays for. In a
single card the walkthrough steps instantly, locally, with its own progress
dots and Back/Next.

The Pulse Inspector, Preview and the file list are one stop, not three. They
all live behind the same button, so separate stops re-lit the identical 36px
icon while naming surfaces that weren't on screen.

⚠️ The header strings are an API

Each stop carries a verbatim Tour · <Surface> header, and opencode#258 keys
its spotlight on that exact string. Renaming one here silently stops that stop
lighting up
— no error, it just goes dark. The app side unit-tests all nine
(session-tour.test.ts), so a rename shows up as a failing test there rather
than as a silent regression in onboarding. Worth knowing before editing the
score's tour block.

The onboarding surfaces

  • The webview takes the site's brand: DM Sans (vendored, so it renders
    offline), brand yellow on ink, and light-mode ink on white rather than the
    stock theme.
  • The welcome screen has one bold thing instead of three competing for the
    eye, on an even vertical rhythm.
  • The setup form reads brand tokens instead of hardcoded values.
  • The handoff into the studio no longer flashes — the transition overlay is
    aligned with the splash it replaces.

Grouped stage cards

Each interview stage now sends as a single card of related questions instead of
one card per question, for the same round-trip reason as the tour. This is what
moves the golden fixture (compile-chained.md) — the diff there is the grouping
plus the new Stage 7, not a change in interview content.

Verified

  • Score suite: 227/227, goldens regenerated.
  • Extension typecheck: clean.
  • Driven end-to-end against a live server — onboarding answered through to the
    tour, then stepped stop to stop with the spotlight following.

Not verified

The side-panel stop resolves, in the app, to an anchor behind an isDesktop()
gate. If that is false inside the packaged extension, the stop has no anchor and
degrades to nothing. Now that three stops merged into one, that single anchor
covers three surfaces — worth a check on a real .vsix build.

@coderabbitai

coderabbitai Bot commented Aug 26, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: dd9cc557-5a23-4098-a459-55941ca657c6


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Onboarding used to end at the profile summary and drop the user into an empty
window. This adds a final stage that walks them around it, and brings the
onboarding surfaces themselves onto brand.

The tour (Stage 7)
Nine stops, in the READING ORDER of the window — the top bar left to right, then
the row beneath it, then the composer — so the highlight walks the screen
instead of hopping across it. Each stop is a question card with a verbatim
"Tour · <Surface>" header; the app keys its spotlight on that string, so the
header text is a contract between this score and the shell (opencode#258).

They ship as ONE multi-question card rather than nine cards. Every stop is fixed
text, so a model turn between them would be dead time the user pays for; in a
single card the walkthrough steps instantly, locally.

The Pulse Inspector, Preview and the file list are one stop, not three — they
all live behind the same button, so separate stops re-lit the identical icon
while naming surfaces that were not on screen.

The onboarding surfaces
- The webview takes the site's brand: DM Sans (vendored, so it renders offline),
  brand yellow on ink, and light-mode ink on white rather than the stock theme.
- The welcome screen has one bold thing instead of three competing for the eye,
  on an even vertical rhythm.
- The setup form reads brand tokens instead of hardcoded values.
- The handoff into the studio no longer flashes: the transition overlay is
  aligned with the splash it replaces.

Grouped stage cards
Each interview stage sends as a single card of related questions instead of one
card per question, for the same round-trip reason as the tour.
@kateebonner
kateebonner force-pushed the kate/overture-studio-tour branch from 67f2f4d to 63d72f9 Compare August 26, 2026 23:40
@kateebonner kateebonner changed the title Overture v3: stage-7 studio tour (chat-narrated chrome walkthrough) Overture v3: a studio walkthrough at the end of onboarding Aug 26, 2026
@kateebonner
kateebonner merged commit 168ffb7 into main Aug 27, 2026
7 of 8 checks passed
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.

1 participant