deepseek-harness/apps/web/tests
creatixchu d6231007af cleanup(web): give adding a Workspace one route
Both Workspace surfaces offered "Open local folder…" and "Create a new
workspace" for one outcome. The browse occupant already carries its own
New folder affordance, so picking a directory covered creating one; the
name dialog only added a second vocabulary and a create target the
operator could neither see nor choose.

The surviving entry is named after the outcome — "Add workspace…" — and a
menu now appears only where there is something to choose between: with no
Workspace listed (the add-only sidebar header, or an empty hero list) the
anchor gesture raises the directory flow directly instead of a one-row
popover. An empty list counts as final only after the list baseline lands,
and a composition with no directory-flow occupant hides the sidebar button
rather than offering a dead one.

WorkspaceCreateFlow becomes WorkspacePickFlow (createOnly -> addOnly) and
the injected createWorkspace narrows to { path }. The host's
workspace.create({ name }) branch and `dsh web --workspace-root` lost their
last product consumer; both are marked at the call site for a follow-up.
2026-07-31 15:47:40 +08:00
..
snapshots cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
access-confirmation.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
approval-composer.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
built-boot.snapshot.ts Merge remote-tracking branch 'origin/master' into feat/web-diff-card 2026-07-31 11:56:28 +08:00
code-mode-round.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
composer-draft-scroll.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
cordis-tool-round.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
details-session-lifecycle.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
lifecycle-chrome.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
live-interactions.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
message-actions.e2e.ts wip 2026-07-31 02:13:53 +08:00
models-settings.e2e.ts fix(web): hide provider liveness badges 2026-07-31 11:32:10 +08:00
navigation-panes.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
onboarding-deepseek-config.e2e.ts fix(web): address onboarding review feedback 2026-07-30 18:56:56 +08:00
pin-browse-picker.overlay.yml cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
plan-review.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
question-composer.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
queue-actions.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
replay-round-trip.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
scaffold-hermetic.e2e.ts fix(web): isolate replay skill discovery 2026-07-30 19:30:06 +08:00
scaffold.ts Merge remote-tracking branch 'origin/master' into mergebot/pr711 2026-07-31 02:02:47 +08:00
seeded-history.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
settings-chrome.e2e.ts merge master and address permission settings review 2026-07-31 13:24:30 +08:00
sidebar-scrollbar.e2e.ts test(web): pin browser replay locale 2026-07-30 11:39:11 +08:00
skill-invocation-policy.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
smoke-real.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
steering.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
support.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00
workspace-management.e2e.ts cleanup(web): give adding a Workspace one route 2026-07-31 15:47:40 +08:00