Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ describe('AutofixRootCause', () => {
await userEvent.click(dropdownTrigger);

// Click the Cursor option in the dropdown
await userEvent.click(await screen.findByText('Send to Cursor Background Agent'));
await userEvent.click(await screen.findByText('Send to Cursor Cloud Agent'));

expect(JSON.parse(localStorage.getItem('autofix:rootCauseActionPreference')!)).toBe(
'cursor_background_agent'
Expand Down Expand Up @@ -210,7 +210,7 @@ describe('AutofixRootCause', () => {
render(<AutofixRootCause {...defaultProps} />);

expect(
await screen.findByRole('button', {name: 'Send to Cursor Background Agent'})
await screen.findByRole('button', {name: 'Send to Cursor Cloud Agent'})
).toBeInTheDocument();

// Verify Seer option is in the dropdown
Expand Down Expand Up @@ -249,8 +249,6 @@ describe('AutofixRootCause', () => {
});
await userEvent.click(dropdownTrigger);

expect(
await screen.findByText('Send to Cursor Background Agent')
).toBeInTheDocument();
expect(await screen.findByText('Send to Cursor Cloud Agent')).toBeInTheDocument();
});
});
6 changes: 3 additions & 3 deletions static/app/components/events/autofix/autofixRootCause.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -479,10 +479,10 @@ function AutofixRootCauseDisplay({
busy={isLaunchingAgent}
disabled={isLoadingAgents}
onClick={handleLaunchCodingAgent}
title={t('Send to Cursor Background Agent')}
title={t('Send to Cursor Cloud Agent')}
icon={<PluginIcon pluginId="cursor" size={16} />}
>
{t('Send to Cursor Background Agent')}
{t('Send to Cursor Cloud Agent')}
</Button>
<DropdownMenu
items={[
Expand Down Expand Up @@ -531,7 +531,7 @@ function AutofixRootCauseDisplay({
label: (
<Flex gap="md" align="center">
<PluginIcon pluginId="cursor" size={20} />
<div>{t('Send to Cursor Background Agent')}</div>
<div>{t('Send to Cursor Cloud Agent')}</div>
</Flex>
),
onAction: handleLaunchCodingAgent,
Expand Down
2 changes: 1 addition & 1 deletion static/app/components/events/autofix/codingAgentCard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ function CodingAgentCard({codingAgentState, repo}: CodingAgentCardProps) {
const getProviderName = (provider: CodingAgentProvider) => {
switch (provider) {
case CodingAgentProvider.CURSOR_BACKGROUND_AGENT:
return t('Cursor Background Agent');
return t('Cursor Cloud Agent');
default:
return t('Coding Agent');
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ export function CursorIntegrationCta({project}: CursorIntegrationCtaProps) {
</Heading>
<Text>
{tct(
'Connect Cursor to automatically hand off Seer root cause analysis to Cursor Background Agents for seamless code fixes. [docsLink:Read the docs] to learn more.',
'Connect Cursor to automatically hand off Seer root cause analysis to Cursor Cloud Agents for seamless code fixes. [docsLink:Read the docs] to learn more.',
{
docsLink: (
<ExternalLink href="https://docs.sentry.io/integrations/cursor/" />
Expand Down Expand Up @@ -151,7 +151,7 @@ export function CursorIntegrationCta({project}: CursorIntegrationCtaProps) {
</Heading>
<Text>
{tct(
'You have the Cursor integration installed. Turn on Seer automation and set up hand off to trigger Cursor Background Agents during automation. [seerProjectSettings:Configure in Seer project settings] or [docsLink:read the docs] to learn more.',
'You have the Cursor integration installed. Turn on Seer automation and set up hand off to trigger Cursor Cloud Agents during automation. [seerProjectSettings:Configure in Seer project settings] or [docsLink:read the docs] to learn more.',
{
seerProjectSettings: (
<Link to={`/settings/projects/${project.slug}/seer/`} />
Expand Down Expand Up @@ -183,7 +183,7 @@ export function CursorIntegrationCta({project}: CursorIntegrationCtaProps) {
</Heading>
<Text>
{tct(
'Cursor handoff is active. During automation runs, Seer will automatically trigger Cursor Background Agents. [docsLink:Read the docs] to learn more.',
'Cursor handoff is active. During automation runs, Seer will automatically trigger Cursor Cloud Agents. [docsLink:Read the docs] to learn more.',
{
docsLink: (
<ExternalLink href="https://docs.sentry.io/integrations/cursor/" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -720,7 +720,7 @@ describe('SeerDrawer', () => {
);

expect(
await screen.findByText('Hand Off to Cursor Background Agents')
await screen.findByText('Hand Off to Cursor Cloud Agents')
).toBeInTheDocument();
expect(
screen.getByRole('button', {name: 'Set Seer to hand off to Cursor'})
Expand Down Expand Up @@ -801,8 +801,6 @@ describe('SeerDrawer', () => {
);

// Should not show the step since it was skipped
expect(
screen.queryByText('Hand Off to Cursor Background Agents')
).not.toBeInTheDocument();
expect(screen.queryByText('Hand Off to Cursor Cloud Agents')).not.toBeInTheDocument();
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -152,9 +152,7 @@ describe('SeerNotices', () => {
},
});
await waitFor(() => {
expect(
screen.getByText('Hand Off to Cursor Background Agents')
).toBeInTheDocument();
expect(screen.getByText('Hand Off to Cursor Cloud Agents')).toBeInTheDocument();
});
});

Expand Down Expand Up @@ -199,9 +197,7 @@ describe('SeerNotices', () => {
});

// Should not show the cursor step since it was skipped
expect(
screen.queryByText('Hand Off to Cursor Background Agents')
).not.toBeInTheDocument();
expect(screen.queryByText('Hand Off to Cursor Cloud Agents')).not.toBeInTheDocument();

// Clean up localStorage
localStorage.removeItem(`seer-onboarding-cursor-skipped:${ProjectFixture().id}`);
Expand Down Expand Up @@ -260,9 +256,7 @@ describe('SeerNotices', () => {
});

// Should not show the cursor step since handoff is already configured
expect(
screen.queryByText('Hand Off to Cursor Background Agents')
).not.toBeInTheDocument();
expect(screen.queryByText('Hand Off to Cursor Cloud Agents')).not.toBeInTheDocument();
});

it('does not render guided steps if all onboarding steps are complete', () => {
Expand Down Expand Up @@ -293,8 +287,6 @@ describe('SeerNotices', () => {
expect(screen.queryByText('Pick Repositories to Work In')).not.toBeInTheDocument();
expect(screen.queryByText('Unleash Automation')).not.toBeInTheDocument();
expect(screen.queryByText('Get Some Quick Wins')).not.toBeInTheDocument();
expect(
screen.queryByText('Hand Off to Cursor Background Agents')
).not.toBeInTheDocument();
expect(screen.queryByText('Hand Off to Cursor Cloud Agents')).not.toBeInTheDocument();
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -458,7 +458,7 @@ export function SeerNotices({groupId, hasGithubIntegration, project}: SeerNotice
<CursorPluginIcon>
<PluginIcon pluginId="cursor" />
</CursorPluginIcon>
{t('Hand Off to Cursor Background Agents')}
{t('Hand Off to Cursor Cloud Agents')}
</Flex>
}
isCompleted={!needsCursorIntegration}
Expand All @@ -470,12 +470,12 @@ export function SeerNotices({groupId, hasGithubIntegration, project}: SeerNotice
<Fragment>
<span>
{t(
'Enable Seer automation and set up handoff to Cursor Background Agents when Seer identifies a root cause.'
'Enable Seer automation and set up handoff to Cursor Cloud Agents when Seer identifies a root cause.'
)}
</span>
<span>
{tct(
'During automation, Seer will trigger Cursor Background Agents to generate and submit pull requests directly to your repos. Configure in [seerProjectSettings:Seer project settings] or [docsLink:read the docs] to learn more.',
'During automation, Seer will trigger Cursor Cloud Agents to generate and submit pull requests directly to your repos. Configure in [seerProjectSettings:Seer project settings] or [docsLink:read the docs] to learn more.',
{
seerProjectSettings: (
<Link
Expand All @@ -493,7 +493,7 @@ export function SeerNotices({groupId, hasGithubIntegration, project}: SeerNotice
<Fragment>
<span>
{t(
'Connect Cursor to automatically hand off Seer root cause analysis to Cursor Background Agents for seamless code fixes.'
'Connect Cursor to automatically hand off Seer root cause analysis to Cursor Cloud Agents for seamless code fixes.'
)}
</span>
<span>
Expand Down
4 changes: 2 additions & 2 deletions static/app/views/settings/projectSeer/index.spec.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -521,9 +521,9 @@ describe('ProjectSeer', () => {
select.focus();
});

// Open the menu and select 'Hand off to Cursor Background Agent'
// Open the menu and select 'Hand off to Cursor Cloud Agent'
await userEvent.click(select);
const cursorOption = await screen.findByText('Hand off to Cursor Background Agent');
const cursorOption = await screen.findByText('Hand off to Cursor Cloud Agent');
await userEvent.click(cursorOption);

// Form has saveOnBlur=true, so wait for the PUT request
Expand Down
6 changes: 2 additions & 4 deletions static/app/views/settings/projectSeer/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -161,12 +161,10 @@ function ProjectSeerGeneralForm({project}: {project: Project}) {
{
value: 'cursor_handoff',
label: (
<SeerSelectLabel>
{t('Hand off to Cursor Background Agent')}
</SeerSelectLabel>
<SeerSelectLabel>{t('Hand off to Cursor Cloud Agent')}</SeerSelectLabel>
),
details: t(
"Seer will identify the root cause and hand off the fix to Cursor's background agent."
"Seer will identify the root cause and hand off the fix to Cursor's cloud agent."
),
},
]
Expand Down
Loading