Overture v3: a studio walkthrough at the end of onboarding - #572
Merged
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 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. Comment |
kateebonner
force-pushed
the
kate/overture-studio-tour
branch
from
August 26, 2026 19:00
a123c6c to
254de6e
Compare
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
force-pushed
the
kate/overture-studio-tour
branch
from
August 26, 2026 23:40
67f2f4d to
63d72f9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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.
Each stop carries a verbatim
Tour · <Surface>header, and opencode#258 keysits 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 ratherthan as a silent regression in onboarding. Worth knowing before editing the
score's tour block.
The onboarding surfaces
offline), brand yellow on ink, and light-mode ink on white rather than the
stock theme.
eye, on an even vertical rhythm.
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 groupingplus the new Stage 7, not a change in interview content.
Verified
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
.vsixbuild.