First-run onboarding: guide a fresh account to the workbench picker, not an auto-minted empty one - #266
Merged
Merged
Conversation
A brand-new account should land on the guided workbench picker, not get auto-minted into an unlabeled "New Workbench" it never asked for. Pins the redirect (and keeps the existing Myra-readiness wait/retry/ slow states) so HomeRoute's implementation can be changed under it.
…uto-minting an empty one Landing a brand-new account straight into a silently auto-minted, unlabeled "New Workbench" (CL-6138) is exactly the confusing empty-bench experience reported: nothing marks what the room is for, and it skips the guided create flow every other "+ New workbench" control already uses. The zero-workbench branch now waits for Myra's own definition to exist (unchanged wait/slow/retry UX) and then sends the person to NewWorkbenchPickerRoute (`/new`) to create their first real workbench there, template or blank. Drops the now-dead createAgentAndLaunch, the one-off auto-mint verb this replaces, along with its tests.
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.
Summary
HomeRoute's zero-workbench branch now waits for Myra's readiness (same wait/slow/retry UX from CL-6457/CL-6462, unchanged) and then navigates to the existingNewWorkbenchPickerRoute(/new) so a fresh account creates its first real workbench there — template or "Just start talking" — the same picker every other "+ New workbench" control already uses.createAgentAndLaunch(the one-off auto-mint verb this replaces) and its tests.ensureMyraWorkbenchpath.Root cause investigated
The reachable creation paths (
POST /workbencheswith adefinitionId) are atomic server-side — the route compensates (deletes the workbench) if the agent join fails, so a workbench minted that way always has an agent participant. So the literal "type and nothing answers" state isn't reachable through today's standard fresh-account flow. It is architecturally real but latent elsewhere:sendWorkbenchMessagenever rejects a send, default-routing falls back to a workbench's "host" (first agent participant), and if there is none the message is durably posted but never routed — silently.provisionSpaceWorkbenchalready creates intentionally participant-lesskind: "workbench"rows (routine spaces), proving the codebase tolerates this shape elsewhere. Filed as a scoped follow-up in CL-6555 rather than bundled into this change, since it touches the backend fan-out/notice path and the standard creation path already guards against it.Test plan
bun test test/home-page.test.tsx src/instant-agent-create.test.ts(apps/web) — all passbun test ./src ./test(apps/web, full suite) — 833 pass, 0 failbun run typecheck(apps/web) — cleanbunx eslinton changed files — cleanbun run check:structural— all checks pass/new, not an auto-minted roomensureMyraWorkbench)https://linear.app/abklabs/issue/CL-6555