Ade Web Renderer Refinements#643
Conversation
Consolidate GitHub, Linear, voice input, launch prompts, completion sound, PR transcripts, project files, and environment into General with branded section headers. Remove the Integrations tab, fix independent reasoning effort on Background Jobs, and update deep links plus docs. Co-authored-by: Cursor <cursoragent@cursor.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
@copilot review but do not make fixes |
|
Warning Review limit reached
More reviews will be available in 49 minutes and 1 second. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits. 🚦 How do rate limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan refill rate. For paid Pro and Pro+ PR reviews, CodeRabbit uses rolling per-developer review limits. Reviews become available again as older review attempts age out of the rolling limit window. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (34)
✨ Finishing Touches🧪 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 |
| @@ -17,7 +16,6 @@ const SECTIONS = [ | |||
| { id: "appearance", label: "Appearance", icon: Palette }, | |||
| { id: "ai", label: "AI Connections", icon: Brain }, | |||
| { id: "background-jobs", label: "Background Jobs", icon: Robot }, | |||
| { id: "integrations", label: "Integrations", icon: Plugs }, | |||
| { id: "lane-templates", label: "Lane Templates", icon: Stack }, | |||
| { id: "ade-usage", label: "Stats", icon: ChartLineUp }, | |||
| ] as const; | |||
| @@ -30,12 +28,13 @@ const TAB_ALIASES: Record<string, SectionId> = { | |||
| context: "general", | |||
| providers: "ai", | |||
| automations: "background-jobs", | |||
There was a problem hiding this comment.
Project setup / onboarding entry point removed
The old GeneralSection contained a "PROJECT SETUP" card with an "Open Project Setup" / "Run Setup Again" button that navigated to /onboarding. That card is gone from the new GeneralSection and doesn't appear anywhere else in the diff (command palette, TopBar, etc.). Users who want to re-run the onboarding flow for AI, GitHub, and Linear setup currently have no in-app path to do so from Settings.
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/desktop/src/renderer/components/app/SettingsPage.tsx
Line: 1-30
Comment:
**Project setup / onboarding entry point removed**
The old `GeneralSection` contained a "PROJECT SETUP" card with an "Open Project Setup" / "Run Setup Again" button that navigated to `/onboarding`. That card is gone from the new `GeneralSection` and doesn't appear anywhere else in the diff (command palette, TopBar, etc.). Users who want to re-run the onboarding flow for AI, GitHub, and Linear setup currently have no in-app path to do so from Settings.
How can I resolve this? If you propose a fix, please make it concise.| <div style={{ display: "flex", flexDirection: "column", gap: 16 }}> | ||
| <div> | ||
| <label | ||
| htmlFor={soundSelectId} |
There was a problem hiding this comment.
Inconsistent indentation inside the outer
flexDirection: "column" <div> — the first child <div> is indented four extra spaces relative to the rest. Normalising this prevents future diff noise and keeps the nesting level legible.
| <div style={{ display: "flex", flexDirection: "column", gap: 16 }}> | |
| <div> | |
| <label | |
| htmlFor={soundSelectId} | |
| <div style={{ display: "flex", flexDirection: "column", gap: 16 }}> | |
| <div> | |
| <label | |
| htmlFor={soundSelectId} |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/desktop/src/renderer/components/settings/AgentCompletionSoundSection.tsx
Line: 48-51
Comment:
Inconsistent indentation inside the outer `flexDirection: "column"` `<div>` — the first child `<div>` is indented four extra spaces relative to the rest. Normalising this prevents future diff noise and keeps the nesting level legible.
```suggestion
<div style={{ display: "flex", flexDirection: "column", gap: 16 }}>
<div>
<label
htmlFor={soundSelectId}
```
How can I resolve this? If you propose a fix, please make it concise.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Two desktop changes landed on main after the initial v1.2.9 changelog: Settings General-tab reorganization (#643) and stale lane worktree cleanup retry. Add them to the v1.2.9 release notes so the re-pointed tag and release notes match what ships. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Summary
Describe the change.
What Changed
Key files and behaviors.
Validation
How you tested.
Risks
Anything to watch.
Greptile Summary
This PR refactors the ADE desktop settings UI from a tab-based "Integrations" section into a unified
GeneralSectioncomposed of purpose-built subsections, each wrapped in a newSettingsSectionShellcomponent with icon, title, and description headers.settingsSectionUi.tsx):SettingsSectionShellandSettingsTogglestandardise section layout and toggle controls across all settings pages.AgentCompletionSoundSection,LaunchPromptSection,PrChatTranscriptsSection,GitHubIntegrationSection,LinearIntegrationSection, andEnvironmentSectionare extracted as independent components and composed into the redesignedGeneralSection; theIntegrationsSettingsSectiontab is deleted.?integration=github/linearand?tab=integrationsURLs are redirected to?tab=generalwith appropriate hash targets; new#github-connection,#linear-connection, and#agent-completion-soundhash anchors are registered.break-words [overflow-wrap:anywhere]to prevent horizontal overflow;ChatAppearancePreviewwraps the assistant transcript inoverflow-x-hiddento contain wide content in the preview pane.ReasoningEffortPicker: NewuseFamilyDefaultsprop (defaulttrue) lets background-job pickers opt out of shared per-family reasoning memory.Confidence Score: 3/5
Safe to merge for most settings, but the GitHub auth instructions can silently show the wrong token scope after the user enables PR chat transcripts.
The two components that were previously coupled — the transcript gists toggle and the GitHub auth command display — now each maintain their own independent copy of
transcriptGistsEnabledloaded at mount time. A user who enables transcript gists inPrChatTranscriptsSectionand then reads the GitHub auth instructions in the siblingGitHubSectionwill see commands that omit the gist scope, and could configure a token that cannot actually publish transcripts. Everything else in the refactor looks correct.GitHubSection.tsxandPrChatTranscriptsSection.tsx— they share a project-config setting but each load it independently with no synchronisation between them.Important Files Changed
embeddedprop and removes the transcript-gists toggle card, but still independently loadstranscriptGistsEnabledfromprojectConfig.get()— this value is now stale relative to the siblingPrChatTranscriptsSection, causing the GitHub auth command suggestions to show incorrect scope requirements after the user toggles the feature.SettingsSectionShell(icon header + title + description) andSettingsToggle(accessible switch button withrole=switch/aria-checked). Straightforward and well-structured.?integration=github/linearand hash fragments; cleans up the padded section index labels. Project setup / onboarding entry point removed with no apparent replacement.SettingsSectionShellheader. Logic is sound; auto-open effect correctly opens only when issues exist.GitHubSectioninto its own section withSettingsSectionShell. The logic is correct but itstranscriptGistsEnabledstate is no longer shared withGitHubSection's matching state, causing the auth-command staleness issue.AppearanceSectioninto a dedicatedSettingsSectionShell. Functionally equivalent; minor indentation inconsistency inside the outer flex container.SettingsSectionShellandSettingsToggle; improved download progress UI with percentage badge and bullet-point feature list. No logic changes.AboutSectionandAdeCliSectionunder a singleSettingsSectionShell. Clean and straightforward.break-words [overflow-wrap:anywhere]to list items and inline code elements to prevent horizontal overflow. Small but useful fix.useFamilyDefaultsprop (defaulttrue) to allow callers to opt out of shared per-family reasoning defaults; accompanied by a test. Well-implemented.Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD GP[GeneralSection] --> GH[GitHubIntegrationSection] GP --> LI[LinearIntegrationSection] GP --> DI[DictationSection] GP --> LP[LaunchPromptSection] GP --> AC[AgentCompletionSoundSection] GP --> PR[PrChatTranscriptsSection] GP --> PS[ProjectSection] GP --> EN[EnvironmentSection] GH --> GHS[GitHubSection embedded] LI --> LS[LinearSection embedded] EN --> AB[AboutSection embedded] EN --> CLI[AdeCliSection embedded] GHS -- "loads projectConfig.get()" --> PC[(ProjectConfig)] PR -- "loads + saves projectConfig" --> PC GHS -- "transcriptGistsEnabled state" --> CMD[gh auth / PAT URL shown to user] PR -- "transcriptGistsEnabled state" --> TG[Toggle UI] style PC fill:#f90,color:#000 style CMD fill:#f44,color:#fff style TG fill:#4a4,color:#fff%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%% flowchart TD GP[GeneralSection] --> GH[GitHubIntegrationSection] GP --> LI[LinearIntegrationSection] GP --> DI[DictationSection] GP --> LP[LaunchPromptSection] GP --> AC[AgentCompletionSoundSection] GP --> PR[PrChatTranscriptsSection] GP --> PS[ProjectSection] GP --> EN[EnvironmentSection] GH --> GHS[GitHubSection embedded] LI --> LS[LinearSection embedded] EN --> AB[AboutSection embedded] EN --> CLI[AdeCliSection embedded] GHS -- "loads projectConfig.get()" --> PC[(ProjectConfig)] PR -- "loads + saves projectConfig" --> PC GHS -- "transcriptGistsEnabled state" --> CMD[gh auth / PAT URL shown to user] PR -- "transcriptGistsEnabled state" --> TG[Toggle UI] style PC fill:#f90,color:#000 style CMD fill:#f44,color:#fff style TG fill:#4a4,color:#fffComments Outside Diff (1)
apps/desktop/src/renderer/components/settings/GitHubSection.tsx, line 94-116 (link)GitHubSectionloadstranscriptGistsEnabledonce at mount and uses it to decide whichgh authcommand and classic-token URL to display. Now that the toggle lives inPrChatTranscriptsSection(a sibling on the same General page), toggling it there never updatesGitHubSection's local copy. A user who enables PR chat transcripts and then looks at the GitHub auth instructions will see the non-gist version of the commands — meaning they could set up a token that's missing the required gist scope.Prompt To Fix With AI
Prompt To Fix All With AI
Reviews (1): Last reviewed commit: "Reorganize settings General tab and refi..." | Re-trigger Greptile