Skip to content

Conversation

@scttcper
Copy link
Member

@scttcper scttcper commented Jan 7, 2026

clicking on a card takes you to the single card view. fixes paginating single card view

@scttcper scttcper requested a review from a team as a code owner January 7, 2026 00:05
@github-actions github-actions bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Jan 7, 2026
Comment on lines 1120 to 1123
checked={filterByAssignedToMe}
onChange={e => {
setFilterByAssignedToMe(e.target.checked);
setCurrentIndex(0);
}}

This comment was marked as outdated.

</FooterActions>
</CardFooter>
</CardContainer>
</CardLink>
Copy link
Contributor

Choose a reason for hiding this comment

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

Nested interactive elements inside CardLink cause navigation conflicts

High Severity

The CardLink component wraps the entire card including interactive children: multiple Button components with click handlers, two DropdownMenu components, and a nested Link element. Clicking on any of these will bubble up to the parent CardLink and trigger navigation to the top-issues page, preventing users from using the buttons and dropdown menus. Additionally, the nested Link inside CardLink creates invalid HTML (anchor inside anchor) with undefined browser behavior. The interactive elements in FooterActions need event propagation stopped or a different card-click implementation.

Fix in Cursor Fix in Web

checked={filterByAssignedToMe}
onChange={e => {
setFilterByAssignedToMe(e.target.checked);
setCurrentIndex(0);
Copy link
Contributor

Choose a reason for hiding this comment

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

Filter changes don't update URL causing state desync

Medium Severity

When the "Assigned to me" checkbox is toggled, only local state is updated via setFilterByAssignedToMe, but the URL is not updated. If the currently selected cluster (from URL's cluster param) gets filtered out, currentIndex correctly falls back to 0, but the URL still contains the old cluster ID. This creates a desync where the displayed cluster differs from the URL. Refreshing the page would show unexpected content, and shared links would behave inconsistently. The previous implementation explicitly reset the index; the new URL-based approach needs to navigate to the new current cluster when the filter changes.

Fix in Cursor Fix in Web

@scttcper scttcper enabled auto-merge (squash) January 7, 2026 18:41
@scttcper scttcper merged commit 6a77897 into master Jan 7, 2026
52 checks passed
@scttcper scttcper deleted the scttcper/clickable-cards branch January 7, 2026 18:48
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.

3 participants