Skip to content

feat(issues): Two-column activity icons, colors#115958

Open
scttcper wants to merge 11 commits into
masterfrom
scttcper/activity-icons-flag
Open

feat(issues): Two-column activity icons, colors#115958
scttcper wants to merge 11 commits into
masterfrom
scttcper/activity-icons-flag

Conversation

@scttcper
Copy link
Copy Markdown
Member

@scttcper scttcper commented May 20, 2026

adds a two column layout based on figma

image

after

image

scttcper and others added 7 commits May 19, 2026 14:23
feedback needed the extra bottom space on the scroll container, not tucked inside the activity section.

Also narrows the activity section variant prop to sidebar vs standalone. the drawer can ask for md text size separately, which keeps feedback from needing a fake inline variant.

Co-Authored-By: Codex GPT-5 <[email protected]>
The feedback activity work made these components shared, but a bunch of names still said Streamlined and lived under the streamline sidebar folder.

Move the shared activity section and compact comment input into neutral homes, and rename the comment actions menu so it says what it is.

Co-Authored-By: Codex GPT-5 <[email protected]>
Use the Text primitive for non-note activity messages instead of wiring font-size by hand.

keeps the activity section closer to the design system now that it is shared outside the old sidebar.

Co-Authored-By: Codex GPT-5 <[email protected]>
Feedback spam activity was falling through the shared issue activity copy and showing up as archived forever.

Pass the issue category into the activity formatter so feedback keeps the spam label, with a test covering the regression.

Co-Authored-By: Codex GPT-5 <[email protected]>
Adds a FlagPole flag for the updated issue activity row treatment.

When enabled, activity rows split actor markers from action icons, color the action icon, and carry that same color onto user avatar rings or system dots. When disabled, the existing one-column activity layout stays in place.

Co-Authored-By: Codex GPT-5 <[email protected]>
@github-actions github-actions Bot added Scope: Frontend Automatically applied to PRs that change frontend components Scope: Backend Automatically applied to PRs that change backend components labels May 20, 2026
@github-actions
Copy link
Copy Markdown
Contributor

🚨 Warning: This pull request contains Frontend and Backend changes!

It's discouraged to make changes to Sentry's Frontend and Backend in a single pull request. The Frontend and Backend are not atomically deployed. If the changes are interdependent of each other, they must be separated into two pull requests and be made forward or backwards compatible, such that the Backend or Frontend can be safely deployed independently.

Have questions? Please ask in the #discuss-dev-infra channel.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 20, 2026

📊 Type Coverage Diff

✅ No new type safety issues introduced. Coverage: 93.58%

Point the activity row UI at activity-feed-v2 and drop the backend flag registration from this stacked branch.

The flag itself now lives in the standalone master PR.

Co-Authored-By: Codex GPT-5 <[email protected]>
@scttcper scttcper removed the Scope: Backend Automatically applied to PRs that change backend components label May 20, 2026
Make archived activity use the default grey state and move avatar rings to a 2px inset border.

Keeps the activity-feed-v2 flag check in place after local testing.

Co-Authored-By: Codex GPT-5 <[email protected]>
@scttcper scttcper changed the title feat(issues): Gate two-column activity icons feat(issues): Two-column activity icons May 20, 2026
@scttcper scttcper changed the title feat(issues): Two-column activity icons feat(issues): Two-column activity icons, colors May 20, 2026
@scttcper scttcper requested a review from a team May 20, 2026 22:56
@scttcper scttcper marked this pull request as ready for review May 20, 2026 22:56
@scttcper scttcper requested a review from a team as a code owner May 20, 2026 22:56
Comment on lines +151 to +158
const Icon =
!useTwoColumnLayout && iconMapping?.componentFunction
? iconMapping.componentFunction({
data: item.data,
user: item.user,
sentry_app: item.sentry_app,
})
: (iconMapping?.Component ?? null);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: In the two-column layout, CREATE_ISSUE activities display a generic add icon instead of the correct integration-specific icon (e.g., GitHub, Jira) because iconMapping.componentFunction is bypassed.
Severity: LOW

Suggested Fix

Adjust the icon selection logic to ensure iconMapping.componentFunction is executed for GroupActivityType.CREATE_ISSUE activities, even when useTwoColumnLayout is true. The logic that bypasses the component function should be limited to only the activity types it was intended for, such as GroupActivityType.NOTE.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent. Verify if this is a real issue. If it is, propose a fix; if not, explain why it's
not valid.

Location: static/app/views/issueDetails/activitySection/index.tsx#L151-L158

Potential issue: In the two-column layout, the logic for selecting an activity icon
incorrectly bypasses `iconMapping.componentFunction` for all activity types. While this
is intended for note activities, it also affects `GroupActivityType.CREATE_ISSUE`. For
`CREATE_ISSUE` activities, the `componentFunction` is responsible for returning
integration-specific icons, such as `IconGithub` or `IconJira`. By skipping this
function, the UI defaults to displaying a generic `IconAdd`, removing the visual context
of the integration used to create the issue.

Did we get this right? 👍 / 👎 to inform future reviews.

Copy link
Copy Markdown
Contributor

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit fde9e8e. Configure here.

...defaultConfig,
icon: theme.tokens.graphics.success.vibrant,
iconBorder: theme.tokens.border.success.vibrant,
};
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SET_RESOLVED_IN_PULL_REQUEST missing from success color config

Medium Severity

The getActivityColorConfig switch statement includes all SET_RESOLVED_* activity types (SET_RESOLVED, SET_RESOLVED_BY_AGE, SET_RESOLVED_IN_RELEASE, SET_RESOLVED_IN_COMMIT) in the success/green color group — but omits GroupActivityType.SET_RESOLVED_IN_PULL_REQUEST. This means resolved-by-PR activities won't receive the green icon and border that all other resolved activity types get, resulting in an inconsistent visual treatment.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit fde9e8e. Configure here.

const ActivityInputFrame = styled('div')`
color: ${p => p.theme.tokens.content.primary};
`;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sidebar "View more" row misaligned with marker rows

Medium Severity

When the issue-activity-feed-v2 feature flag is enabled, activity items in the sidebar render with a 4-column grid (22px 22px minmax(50px,1fr) auto) via the marker prop, but the "View X more" ActivityTimelineItem doesn't pass a marker, so it gets a 3-column grid. This causes its icon and title to be horizontally misaligned with the activity rows above it — the icon sits where markers are, and the title text shifts left by one column.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit fde9e8e. Configure here.

Base automatically changed from scttcper/feedback-streamlined-activity-section to master May 21, 2026 18:24
@scttcper scttcper requested review from a team as code owners May 21, 2026 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Frontend Automatically applied to PRs that change frontend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant