Skip to content

Commit c6f99bc

Browse files

File tree

2 files changed

+21
-4
lines changed

2 files changed

+21
-4
lines changed

static/app/views/replays/detail/ai/ai.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ export default function Ai() {
3737
const segmentCount = replayRecord?.count_segments ?? 0;
3838
const project = useProjectFromId({project_id: replayRecord?.project_id});
3939
const analyticsArea = useAnalyticsArea();
40+
const skipConsentFlow = organization.features.includes('gen-ai-consent-flow-removal');
4041

4142
const replayTooLongMessage = t(
4243
'While in beta phase, we only summarize a small portion of the replay.'
@@ -77,7 +78,8 @@ export default function Ai() {
7778
}
7879

7980
// check for org seer setup first before attempting to fetch summary
80-
if (isOrgSeerSetupPending) {
81+
// only do this if consent flow is not skipped
82+
if (!skipConsentFlow && isOrgSeerSetupPending) {
8183
return (
8284
<Wrapper data-test-id="replay-details-ai-summary-tab">
8385
<LoadingContainer>
@@ -91,7 +93,8 @@ export default function Ai() {
9193

9294
// If our `replay-ai-summaries` ff is enabled and the org has gen AI ff enabled,
9395
// but the org hasn't acknowledged the gen AI features, then show CTA.
94-
if (!setupAcknowledgement.orgHasAcknowledged) {
96+
// only do this if consent flow is not skipped
97+
if (!skipConsentFlow && !setupAcknowledgement.orgHasAcknowledged) {
9598
return (
9699
<Wrapper data-test-id="replay-details-ai-summary-tab">
97100
<EndStateContainer>

static/app/views/replays/detail/layout/focusTabs.tsx

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@ import {css} from '@emotion/react';
33
import styled from '@emotion/styled';
44

55
import {FeatureBadge} from '@sentry/scraps/badge';
6+
import {ExternalLink} from '@sentry/scraps/link/link';
7+
import {Tooltip} from '@sentry/scraps/tooltip/tooltip';
68

79
import {Flex} from 'sentry/components/core/layout';
810
import {TabList, Tabs} from 'sentry/components/core/tabs';
911
import {useOrganizationSeerSetup} from 'sentry/components/events/autofix/useOrganizationSeerSetup';
10-
import {t} from 'sentry/locale';
12+
import {t, tct} from 'sentry/locale';
1113
import {space} from 'sentry/styles/space';
1214
import type {Organization} from 'sentry/types/organization';
1315
import {trackAnalytics} from 'sentry/utils/analytics';
@@ -36,7 +38,19 @@ function getReplayTabs({
3638
[TabKey.AI]:
3739
hasAiSummary && (!isVideoReplay || hasMobileSummary) ? (
3840
<Flex align="center" gap="sm">
39-
{t('AI Summary')}
41+
<Tooltip
42+
isHoverable
43+
title={tct(
44+
`Powered by generative AI. Learn more about our [link:AI privacy principles].`,
45+
{
46+
link: (
47+
<ExternalLink href="https://docs.sentry.io/product/ai-in-sentry/ai-privacy-and-security/" />
48+
),
49+
}
50+
)}
51+
>
52+
{t('AI Summary')}
53+
</Tooltip>
4054
<FeatureBadge type="beta" />
4155
</Flex>
4256
) : null,

0 commit comments

Comments
 (0)