Conversation
…e modal When a user selects a project that isn't set up on the chosen host, the submit path now redirects to /settings/projects/$projectId (which renders V2ProjectSettings with clone/import/relocate UX) instead of firing a workspace creation that would fail at "ensure local project". Replaces the advisory amber text with a clickable "Set up project…" button and disables the prompt-submit arrow while setup is pending. Submit, ⌘↵ keyboard, and form onSubmit all route through a single handleSubmit wrapper that branches on needsSetup.
📝 WalkthroughWalkthroughThe workspace creation modal now includes conditional logic that checks if a project requires setup. When Changes
Sequence DiagramsequenceDiagram
actor User
participant PromptGroup
participant handleSubmit
participant Modal
participant useNavigate
participant WorkspaceAPI
User->>PromptGroup: Submit or press Enter
PromptGroup->>handleSubmit: handleSubmit(files?)
handleSubmit->>handleSubmit: Check selectedProject.needsSetup
alt needsSetup is true
handleSubmit->>Modal: closeModal()
handleSubmit->>useNavigate: navigate(/settings/projects/$projectId)
else needsSetup is false
handleSubmit->>WorkspaceAPI: createWorkspace(files)
WorkspaceAPI-->>PromptGroup: Workspace created
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~22 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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 |
|
Greptile encountered an error while reviewing this PR. Please reach out to support@greptile.com for assistance. |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
apps/desktop/src/renderer/routes/_authenticated/components/DashboardNewWorkspaceModal/components/DashboardNewWorkspaceForm/PromptGroup/PromptGroup.tsx (1)
429-445: Minor: consider keeping the⌘↵affordance visible alongside the setup button.Pressing
⌘↵still triggershandleSubmit()→handleGoToSetup()whenneedsSetupis true (via thewindowkeydown handler at Line 176-183), but the{modKey}↵hint is hidden in that branch, so users lose the visual cue that the shortcut still does something useful (navigate to setup). If that's intentional (i.e., you want the button CTA to be the only discoverable action), feel free to ignore; otherwise rendering both the button and the hint — or swapping the hint's label — would preserve keyboard discoverability.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@apps/desktop/src/renderer/routes/_authenticated/components/DashboardNewWorkspaceModal/components/DashboardNewWorkspaceForm/PromptGroup/PromptGroup.tsx` around lines 429 - 445, The UI hides the keyboard shortcut hint when needsSetup is true even though the global keydown handler still calls handleGoToSetup; update the render in PromptGroup.tsx so that when needsSetup is true you render the Button (handleGoToSetup) and also render the modKey↵ hint (or an alternate label like “⌘↵ to setup”) next to it instead of omitting it, preserving keyboard discoverability; ensure the change references the needsSetup conditional, the Button that calls handleGoToSetup, and the existing modKey display so the hint remains visible while the button remains primary.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In
`@apps/desktop/src/renderer/routes/_authenticated/components/DashboardNewWorkspaceModal/components/DashboardNewWorkspaceForm/PromptGroup/PromptGroup.tsx`:
- Around line 429-445: The UI hides the keyboard shortcut hint when needsSetup
is true even though the global keydown handler still calls handleGoToSetup;
update the render in PromptGroup.tsx so that when needsSetup is true you render
the Button (handleGoToSetup) and also render the modKey↵ hint (or an alternate
label like “⌘↵ to setup”) next to it instead of omitting it, preserving keyboard
discoverability; ensure the change references the needsSetup conditional, the
Button that calls handleGoToSetup, and the existing modKey display so the hint
remains visible while the button remains primary.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: d7bfa86b-a2c9-42dd-a34b-4604c1d4aed1
📒 Files selected for processing (2)
apps/desktop/src/renderer/routes/_authenticated/components/DashboardNewWorkspaceModal/components/DashboardNewWorkspaceForm/PromptGroup/PromptGroup.tsxapps/desktop/src/renderer/routes/_authenticated/components/DashboardNewWorkspaceModal/components/DashboardNewWorkspaceForm/PromptGroup/hooks/useSubmitWorkspace/index.ts
🧹 Preview Cleanup CompleteThe following preview resources have been cleaned up:
Thank you for your contribution! 🎉 |
Add v2 project setup section (#3566, #3605, #3606, #3592, #3626, #3632), scheduled agent runs (#3576), Opus 4.7 (#3579), v1 review comments in pane (#3596), configurable v2 link-click (#3600), Copy Branch Name (#3635), safer terminal preset defaults (#3546), and /pricing page (#3639). Expand bug fixes with v2 git correctness, cross-fork PR misattribution, terminal paste/Unicode/Shift+Enter, and security bumps.
…-27) (#3792) * docs: generate weekly changelog 2026-04-27 * docs: reframe weekly changelog around v2 public beta Lead with v2 public beta + Settings → Experimental enable, restructure around the v1→v2 migration story, sidebar overhaul, cross-workspace terminals, and v2 chat. Pull in ~30 v2 PRs the bot missed and demote non-v2 items (Hosts page, marketing menu) to a brief "Also this week". * docs: pull in missed v2 features and bug fixes Add v2 project setup section (#3566, #3605, #3606, #3592, #3626, #3632), scheduled agent runs (#3576), Opus 4.7 (#3579), v1 review comments in pane (#3596), configurable v2 link-click (#3600), Copy Branch Name (#3635), safer terminal preset defaults (#3546), and /pricing page (#3639). Expand bug fixes with v2 git correctness, cross-fork PR misattribution, terminal paste/Unicode/Shift+Enter, and security bumps. * docs(changelog): add v2 public beta hero screenshot * docs(changelog): add Settings → Experimental screenshot, compress hero pngquant compression: v2-public-beta.png 704KB → 166KB (76%), v2-enable-flag.png 160KB → 36KB (78%). No visible quality loss. * docs(changelog): tighten v2 launch prose, condense bullet groups * docs(changelog): reframe cloud-first pillar as remote workspaces * docs(changelog): cut parallel-agents and honest-state pillars, fold into sub-sections * docs(changelog): tweak title and lead phrasing * docs(changelog): rewrite v2 launch lede around Twitter narrative Pull the launch story (physical limits, 3 ex-CTOs, cloud workspaces) into the lede, restructure pillars around Remote workspaces, Reimagined diff view, and Superset CLI, and add v2-remote-workspaces and v2-changes-pane screenshots to back the new sections. * docs(changelog): add CLI install snippet and docs link * docs(changelog): cut narrative lede, match standard changelog tone --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Kiet Ho <hoakiet98@gmail.com>
…-27) (#3792) * docs: generate weekly changelog 2026-04-27 * docs: reframe weekly changelog around v2 public beta Lead with v2 public beta + Settings → Experimental enable, restructure around the v1→v2 migration story, sidebar overhaul, cross-workspace terminals, and v2 chat. Pull in ~30 v2 PRs the bot missed and demote non-v2 items (Hosts page, marketing menu) to a brief "Also this week". * docs: pull in missed v2 features and bug fixes Add v2 project setup section (#3566, #3605, #3606, #3592, #3626, #3632), scheduled agent runs (#3576), Opus 4.7 (#3579), v1 review comments in pane (#3596), configurable v2 link-click (#3600), Copy Branch Name (#3635), safer terminal preset defaults (#3546), and /pricing page (#3639). Expand bug fixes with v2 git correctness, cross-fork PR misattribution, terminal paste/Unicode/Shift+Enter, and security bumps. * docs(changelog): add v2 public beta hero screenshot * docs(changelog): add Settings → Experimental screenshot, compress hero pngquant compression: v2-public-beta.png 704KB → 166KB (76%), v2-enable-flag.png 160KB → 36KB (78%). No visible quality loss. * docs(changelog): tighten v2 launch prose, condense bullet groups * docs(changelog): reframe cloud-first pillar as remote workspaces * docs(changelog): cut parallel-agents and honest-state pillars, fold into sub-sections * docs(changelog): tweak title and lead phrasing * docs(changelog): rewrite v2 launch lede around Twitter narrative Pull the launch story (physical limits, 3 ex-CTOs, cloud workspaces) into the lede, restructure pillars around Remote workspaces, Reimagined diff view, and Superset CLI, and add v2-remote-workspaces and v2-changes-pane screenshots to back the new sections. * docs(changelog): add CLI install snippet and docs link * docs(changelog): cut narrative lede, match standard changelog tone --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Kiet Ho <hoakiet98@gmail.com>
Summary
/settings/projects/$projectId(which rendersV2ProjectSettingswith clone / import / relocate UX) instead of firing a workspace creation that would blow up at "ensure local project."handleSubmitwrapper that branches onneedsSetup.Why this approach
The merged-in
V2ProjectSettingspage already owns the full setup flow — pick location, import existing, clone here, relocate, backfill-conflict detection — all calling the sameproject.setupmutation. Reusing it (instead of inlining setup UX into the modal) keeps one source of truth for setup and avoids schema/pending-row churn.Test plan
/settings/projects/<id>, renders V2 project settings with the Location section.Summary by cubic
Route projects that aren’t set up to the V2 project settings from the new workspace modal, preventing failed workspace creation. Adds a clear “Set up project…” action and disables submit until setup is complete.
New Features
/settings/projects/$projectId(V2 Project Settings) and closes the modal.Refactors
handleSubmitthat branches onneedsSetup.SubmitAttachmentfromuseSubmitWorkspaceindex.Written for commit ffbc4dd. Summary will update on new commits.
Summary by CodeRabbit