Skip to content

feat(studio): Labs mock features — Projects and the feature tour - #984

Closed
jtenniswood wants to merge 1 commit into
studio/S18from
studio/S19
Closed

feat(studio): Labs mock features — Projects and the feature tour#984
jtenniswood wants to merge 1 commit into
studio/S18from
studio/S19

Conversation

@jtenniswood

Copy link
Copy Markdown

Stack 19/21 — Studio: Labs mock features — Projects and the feature tour

The one sanctioned daemon-never mock exception, isolated and default-off.

  • mock-projects.ts + mock-tour.ts (+tests): mock ids are hard-gated from ever reaching the daemon — the tests pin it.
  • Settings gains the Labs page (+ its sections-registry row — the registry's last held row, reaching its final state) with the mock-features toggle (and the convenience mock-provider-off switch via runtime status).
  • session-sidebar gains MockProjectList; chat-workspace the showMockProjects + isMockTourSession guards (~8 one-liners); chat-view the MockThreadPanel + read-only placeholder; the composer its ProjectsDropdown. profile-preferences reaches its final state (useMockFeatures).
  • With the toggle off (the default), every guard branch is dead at runtime — zero behavior change for non-Labs users, provable in review.

Demo at this stack point: flip Labs on, browse the mock Projects section, run the canned feature tour (which exercises PR 16's canvas).

Part of the stacked landing of #618.

🤖 Generated with Claude Code

The one sanctioned daemon-never mock exception, isolated and default-off.
mock-projects and mock-tour carry the canned content with tests pinning that
a mock id never reaches the daemon; Settings gains the Labs page (the
sections registry takes its last row) with the mock-features toggle and the
convenience mock-provider switch. The sidebar grows MockProjectList, the
chat workspace its showMockProjects/isMockTourSession guards, the chat view
the read-only MockThreadPanel, and the composer its Projects dropdown.

With the preference unset (the default) every guard branch is dead at
runtime — zero behavior change for non-Labs users. profile-preferences and
the settings registry reach their final states.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@jtenniswood jtenniswood added enhancement New feature or request ui WebUI Applies to the WebUI interface labels Sep 2, 2026
@jhrozek jhrozek closed this Sep 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request ui WebUI Applies to the WebUI interface

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants